diff --git a/.apigentools-info b/.apigentools-info index b2103c4b0c85d..b1a7b3bab8633 100644 --- a/.apigentools-info +++ b/.apigentools-info @@ -4,13 +4,13 @@ "spec_versions": { "v1": { "apigentools_version": "1.6.6", - "regenerated": "2024-12-03 18:42:37.157063", - "spec_repo_commit": "ce3146c2" + "regenerated": "2024-12-04 16:16:59.166043", + "spec_repo_commit": "f6465408" }, "v2": { "apigentools_version": "1.6.6", - "regenerated": "2024-12-03 18:42:44.987399", - "spec_repo_commit": "ce3146c2" + "regenerated": "2024-12-04 16:17:07.113422", + "spec_repo_commit": "f6465408" } } } \ No newline at end of file diff --git a/config/_default/menus/api.en.yaml b/config/_default/menus/api.en.yaml index c531b076edd7e..47d1a0c6bcc2e 100644 --- a/config/_default/menus/api.en.yaml +++ b/config/_default/menus/api.en.yaml @@ -7164,6 +7164,82 @@ menu: - ListRumMetrics unstable: [] order: 1 + - name: Scim + url: /api/latest/scim/ + identifier: scim + generated: true + - name: Update SCIM group + url: '#update-scim-group' + identifier: scim-update-scim-group + parent: scim + generated: true + params: + versions: + - v2 + operationids: + - UpdateSCIMGroup + unstable: [] + order: 1 + - name: Patch SCIM group + url: '#patch-scim-group' + identifier: scim-patch-scim-group + parent: scim + generated: true + params: + versions: + - v2 + operationids: + - PatchSCIMGroup + unstable: [] + order: 3 + - name: Get SCIM group + url: '#get-scim-group' + identifier: scim-get-scim-group + parent: scim + generated: true + params: + versions: + - v2 + operationids: + - GetSCIMGroup + unstable: [] + order: 4 + - name: Delete SCIM group + url: '#delete-scim-group' + identifier: scim-delete-scim-group + parent: scim + generated: true + params: + versions: + - v2 + operationids: + - DeleteSCIMGroup + unstable: [] + order: 2 + - name: Create SCIM group + url: '#create-scim-group' + identifier: scim-create-scim-group + parent: scim + generated: true + params: + versions: + - v2 + operationids: + - CreateSCIMGroup + unstable: [] + order: 5 + - name: List SCIM groups + url: '#list-scim-groups' + identifier: scim-list-scim-groups + parent: scim + generated: true + params: + versions: + - v2 + operationids: + - ListSCIMGroups + unstable: [] + order: 6 - name: Sensitive Data Scanner url: /api/latest/sensitive-data-scanner/ identifier: sensitive-data-scanner diff --git a/content/en/api/latest/scim/_index.md b/content/en/api/latest/scim/_index.md new file mode 100644 index 0000000000000..8c1261b4a18a7 --- /dev/null +++ b/content/en/api/latest/scim/_index.md @@ -0,0 +1,3 @@ +--- +title: Scim +--- diff --git a/content/en/api/v2/scim/_index.md b/content/en/api/v2/scim/_index.md new file mode 100644 index 0000000000000..561024cb53699 --- /dev/null +++ b/content/en/api/v2/scim/_index.md @@ -0,0 +1,4 @@ +--- +title: Scim +headless: true +--- diff --git a/content/en/api/v2/scim/examples.json b/content/en/api/v2/scim/examples.json new file mode 100644 index 0000000000000..826289abfbf80 --- /dev/null +++ b/content/en/api/v2/scim/examples.json @@ -0,0 +1,380 @@ +{ + "ListSCIMGroups": { + "responses": { + "200": { + "json": { + "Resources": [ + { + "displayName": "string", + "externalId": "string", + "id": "string", + "members": [ + { + "$ref": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "display": "string", + "type": "string", + "value": "string" + } + ], + "meta": { + "created": "2019-09-19T10:00:00.000Z", + "lastModified": "2019-09-19T10:00:00.000Z", + "location": "string", + "resourceType": "Group" + }, + "schemas": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ] + } + ], + "itemsPerPage": "integer", + "schemas": [ + "urn:ietf:params:scim:api:messages:2.0:ListResponse" + ], + "startIndex": "integer", + "totalResults": "integer" + }, + "html": "
\n
\n
\n
\n

Resources

\n
\n

[object]

\n

List of SCIM groups matching the request criteria.

\n
\n
\n
\n
\n
\n

displayName

\n
\n

string

\n

A human-readable name for the group.

\n
\n \n
\n
\n
\n
\n
\n

externalId

\n
\n

string

\n

An identifier for the resource as defined by the provisioning client.

\n
\n \n
\n
\n
\n
\n
\n

id

\n
\n

string

\n

The identifier of the resource. Not required when creating a group.

\n
\n \n
\n
\n
\n
\n
\n

members

\n
\n

[object]

\n

The items members.

\n
\n
\n
\n
\n
\n

$ref

\n
\n

string

\n

The URI corresponding to a SCIM resource that is a member of this group.

\n
\n \n
\n
\n
\n
\n
\n

display

\n
\n

string

\n

Full name of the user.

\n
\n \n
\n
\n
\n
\n
\n

type

\n
\n

string

\n

A label indicating the type of resource. Only supported value is "User".

\n
\n \n
\n
\n
\n
\n
\n

value

\n
\n

string

\n

The identifier of the member of this group.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

meta

\n
\n

object

\n

Metadata associated with a SCIM group.

\n
\n
\n
\n
\n
\n

created

\n
\n

date-time

\n

The date and time the group was created.

\n
\n \n
\n
\n
\n
\n
\n

lastModified

\n
\n

date-time

\n

The date and time the group was last changed.

\n
\n \n
\n
\n
\n
\n
\n

location

\n
\n

string

\n

URL identifying the resource.

\n
\n \n
\n
\n
\n
\n
\n

resourceType

\n
\n

string

\n

Type of resource.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

schemas

\n
\n

[string]

\n

SCIM group JSON Schemas.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

itemsPerPage

\n
\n

int64

\n

Number of SCIM groups returned per page.

\n
\n \n
\n
\n
\n
\n
\n

schemas

\n
\n

[string]

\n

List response JSON Schemas.

\n
\n \n
\n
\n
\n
\n
\n

startIndex

\n
\n

int64

\n

Starting index of the SCIM groups for this page (1-indexed).

\n
\n \n
\n
\n
\n
\n
\n

totalResults

\n
\n

int64

\n

Total number of SCIM groups matching the request criteria.

\n
\n \n
\n
" + }, + "400": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + }, + "429": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + } + }, + "request": { + "json_curl": {}, + "json": {}, + "html": "" + } + }, + "CreateSCIMGroup": { + "responses": { + "201": { + "json": { + "displayName": "string", + "externalId": "string", + "id": "string", + "members": [ + { + "$ref": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "display": "string", + "type": "User", + "value": "string" + } + ], + "meta": { + "created": "2019-09-19T10:00:00.000Z", + "lastModified": "2019-09-19T10:00:00.000Z", + "location": "string", + "resourceType": "Group" + }, + "schemas": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ] + }, + "html": "
\n
\n
\n
\n

displayName

\n
\n

string

\n

A human-readable name for the group.

\n
\n \n
\n
\n
\n
\n
\n

externalId

\n
\n

string

\n

An identifier for the resource as defined by the provisioning client.

\n
\n \n
\n
\n
\n
\n
\n

id

\n
\n

string

\n

The identifier of the resource. Not required when creating a group.

\n
\n \n
\n
\n
\n
\n
\n

members

\n
\n

[object]

\n

Members of the SCIM group.

\n
\n
\n
\n
\n
\n

$ref

\n
\n

string

\n

The URI corresponding to a SCIM resource that is a member of this group.

\n
\n \n
\n
\n
\n
\n
\n

display

\n
\n

string

\n

A human-readable name for the group member.

\n
\n \n
\n
\n
\n
\n
\n

type

\n
\n

string

\n

A label indicating the type of resource.

\n
\n \n
\n
\n
\n
\n
\n

value

\n
\n

string

\n

The identifier of the member of this group.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

meta

\n
\n

object

\n

Metadata associated with a SCIM group.

\n
\n
\n
\n
\n
\n

created

\n
\n

date-time

\n

The date and time the group was created.

\n
\n \n
\n
\n
\n
\n
\n

lastModified

\n
\n

date-time

\n

The date and time the group was last changed.

\n
\n \n
\n
\n
\n
\n
\n

location

\n
\n

string

\n

URL identifying the resource.

\n
\n \n
\n
\n
\n
\n
\n

resourceType

\n
\n

string

\n

Type of resource.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

schemas

\n
\n

[string]

\n

Input JSON Schemas.

\n
\n \n
\n
" + }, + "400": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + }, + "429": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + } + }, + "request": { + "json_curl": {}, + "json": { + "displayName": "string", + "externalId": "string", + "id": "string", + "members": [ + { + "$ref": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "display": "string", + "type": "User", + "value": "string" + } + ], + "meta": { + "created": "2019-09-19T10:00:00.000Z", + "lastModified": "2019-09-19T10:00:00.000Z", + "location": "string", + "resourceType": "Group" + }, + "schemas": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ] + }, + "html": "
\n
\n
\n
\n

displayName

\n
\n

string

\n

A human-readable name for the group.

\n
\n \n
\n
\n
\n
\n
\n

externalId

\n
\n

string

\n

An identifier for the resource as defined by the provisioning client.

\n
\n \n
\n
\n
\n
\n
\n

id

\n
\n

string

\n

The identifier of the resource. Not required when creating a group.

\n
\n \n
\n
\n
\n
\n
\n

members

\n
\n

[object]

\n

Members of the SCIM group.

\n
\n
\n
\n
\n
\n

$ref

\n
\n

string

\n

The URI corresponding to a SCIM resource that is a member of this group.

\n
\n \n
\n
\n
\n
\n
\n

display

\n
\n

string

\n

A human-readable name for the group member.

\n
\n \n
\n
\n
\n
\n
\n

type

\n
\n

string

\n

A label indicating the type of resource.

\n
\n \n
\n
\n
\n
\n
\n

value

\n
\n

string

\n

The identifier of the member of this group.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

meta

\n
\n

object

\n

Metadata associated with a SCIM group.

\n
\n
\n
\n
\n
\n

created

\n
\n

date-time

\n

The date and time the group was created.

\n
\n \n
\n
\n
\n
\n
\n

lastModified

\n
\n

date-time

\n

The date and time the group was last changed.

\n
\n \n
\n
\n
\n
\n
\n

location

\n
\n

string

\n

URL identifying the resource.

\n
\n \n
\n
\n
\n
\n
\n

resourceType

\n
\n

string

\n

Type of resource.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

schemas

\n
\n

[string]

\n

Input JSON Schemas.

\n
\n \n
\n
" + } + }, + "DeleteSCIMGroup": { + "responses": { + "400": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + }, + "404": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + }, + "429": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + } + }, + "request": { + "json_curl": {}, + "json": {}, + "html": "" + } + }, + "GetSCIMGroup": { + "responses": { + "200": { + "json": { + "displayName": "string", + "externalId": "string", + "id": "string", + "members": [ + { + "$ref": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "display": "string", + "type": "User", + "value": "string" + } + ], + "meta": { + "created": "2019-09-19T10:00:00.000Z", + "lastModified": "2019-09-19T10:00:00.000Z", + "location": "string", + "resourceType": "Group" + }, + "schemas": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ] + }, + "html": "
\n
\n
\n
\n

displayName

\n
\n

string

\n

A human-readable name for the group.

\n
\n \n
\n
\n
\n
\n
\n

externalId

\n
\n

string

\n

An identifier for the resource as defined by the provisioning client.

\n
\n \n
\n
\n
\n
\n
\n

id

\n
\n

string

\n

The identifier of the resource. Not required when creating a group.

\n
\n \n
\n
\n
\n
\n
\n

members

\n
\n

[object]

\n

Members of the SCIM group.

\n
\n
\n
\n
\n
\n

$ref

\n
\n

string

\n

The URI corresponding to a SCIM resource that is a member of this group.

\n
\n \n
\n
\n
\n
\n
\n

display

\n
\n

string

\n

A human-readable name for the group member.

\n
\n \n
\n
\n
\n
\n
\n

type

\n
\n

string

\n

A label indicating the type of resource.

\n
\n \n
\n
\n
\n
\n
\n

value

\n
\n

string

\n

The identifier of the member of this group.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

meta

\n
\n

object

\n

Metadata associated with a SCIM group.

\n
\n
\n
\n
\n
\n

created

\n
\n

date-time

\n

The date and time the group was created.

\n
\n \n
\n
\n
\n
\n
\n

lastModified

\n
\n

date-time

\n

The date and time the group was last changed.

\n
\n \n
\n
\n
\n
\n
\n

location

\n
\n

string

\n

URL identifying the resource.

\n
\n \n
\n
\n
\n
\n
\n

resourceType

\n
\n

string

\n

Type of resource.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

schemas

\n
\n

[string]

\n

Input JSON Schemas.

\n
\n \n
\n
" + }, + "400": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + }, + "404": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + }, + "429": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + } + }, + "request": { + "json_curl": {}, + "json": {}, + "html": "" + } + }, + "PatchSCIMGroup": { + "responses": { + "200": { + "json": { + "displayName": "string", + "externalId": "string", + "id": "string", + "members": [ + { + "$ref": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "display": "string", + "type": "User", + "value": "string" + } + ], + "meta": { + "created": "2019-09-19T10:00:00.000Z", + "lastModified": "2019-09-19T10:00:00.000Z", + "location": "string", + "resourceType": "Group" + }, + "schemas": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ] + }, + "html": "
\n
\n
\n
\n

displayName

\n
\n

string

\n

A human-readable name for the group.

\n
\n \n
\n
\n
\n
\n
\n

externalId

\n
\n

string

\n

An identifier for the resource as defined by the provisioning client.

\n
\n \n
\n
\n
\n
\n
\n

id

\n
\n

string

\n

The identifier of the resource. Not required when creating a group.

\n
\n \n
\n
\n
\n
\n
\n

members

\n
\n

[object]

\n

Members of the SCIM group.

\n
\n
\n
\n
\n
\n

$ref

\n
\n

string

\n

The URI corresponding to a SCIM resource that is a member of this group.

\n
\n \n
\n
\n
\n
\n
\n

display

\n
\n

string

\n

A human-readable name for the group member.

\n
\n \n
\n
\n
\n
\n
\n

type

\n
\n

string

\n

A label indicating the type of resource.

\n
\n \n
\n
\n
\n
\n
\n

value

\n
\n

string

\n

The identifier of the member of this group.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

meta

\n
\n

object

\n

Metadata associated with a SCIM group.

\n
\n
\n
\n
\n
\n

created

\n
\n

date-time

\n

The date and time the group was created.

\n
\n \n
\n
\n
\n
\n
\n

lastModified

\n
\n

date-time

\n

The date and time the group was last changed.

\n
\n \n
\n
\n
\n
\n
\n

location

\n
\n

string

\n

URL identifying the resource.

\n
\n \n
\n
\n
\n
\n
\n

resourceType

\n
\n

string

\n

Type of resource.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

schemas

\n
\n

[string]

\n

Input JSON Schemas.

\n
\n \n
\n
" + }, + "400": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + }, + "404": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + }, + "429": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + } + }, + "request": { + "json_curl": {}, + "json": { + "Operations": [ + { + "op": "string", + "path": "members", + "value": "undefined" + } + ], + "schemas": [ + "urn:ietf:params:scim:api:messages:2.0:PatchOp" + ] + }, + "html": "
\n
\n
\n
\n

Operations

\n
\n

[object]

\n

A list of update operations to be performed on a SCIM group.

\n
\n
\n
\n
\n
\n

op

\n
\n

enum

\n

The operation to be performed. \nAllowed enum values: add,replace,remove

\n
\n \n
\n
\n
\n
\n
\n

path

\n
\n

string

\n

An attribute path describing the target of the operation.

\n
\n \n
\n
\n
\n
\n
\n

value

\n
\n

\n

JSON element containing the target values required to apply the patch operation.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

schemas

\n
\n

[string]

\n

Input JSON Schemas

\n
\n \n
\n
" + } + }, + "UpdateSCIMGroup": { + "responses": { + "200": { + "json": { + "displayName": "string", + "externalId": "string", + "id": "string", + "members": [ + { + "$ref": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "display": "string", + "type": "User", + "value": "string" + } + ], + "meta": { + "created": "2019-09-19T10:00:00.000Z", + "lastModified": "2019-09-19T10:00:00.000Z", + "location": "string", + "resourceType": "Group" + }, + "schemas": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ] + }, + "html": "
\n
\n
\n
\n

displayName

\n
\n

string

\n

A human-readable name for the group.

\n
\n \n
\n
\n
\n
\n
\n

externalId

\n
\n

string

\n

An identifier for the resource as defined by the provisioning client.

\n
\n \n
\n
\n
\n
\n
\n

id

\n
\n

string

\n

The identifier of the resource. Not required when creating a group.

\n
\n \n
\n
\n
\n
\n
\n

members

\n
\n

[object]

\n

Members of the SCIM group.

\n
\n
\n
\n
\n
\n

$ref

\n
\n

string

\n

The URI corresponding to a SCIM resource that is a member of this group.

\n
\n \n
\n
\n
\n
\n
\n

display

\n
\n

string

\n

A human-readable name for the group member.

\n
\n \n
\n
\n
\n
\n
\n

type

\n
\n

string

\n

A label indicating the type of resource.

\n
\n \n
\n
\n
\n
\n
\n

value

\n
\n

string

\n

The identifier of the member of this group.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

meta

\n
\n

object

\n

Metadata associated with a SCIM group.

\n
\n
\n
\n
\n
\n

created

\n
\n

date-time

\n

The date and time the group was created.

\n
\n \n
\n
\n
\n
\n
\n

lastModified

\n
\n

date-time

\n

The date and time the group was last changed.

\n
\n \n
\n
\n
\n
\n
\n

location

\n
\n

string

\n

URL identifying the resource.

\n
\n \n
\n
\n
\n
\n
\n

resourceType

\n
\n

string

\n

Type of resource.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

schemas

\n
\n

[string]

\n

Input JSON Schemas.

\n
\n \n
\n
" + }, + "400": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + }, + "404": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + }, + "409": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + }, + "429": { + "json": { + "errors": [ + "Bad Request" + ] + }, + "html": "
\n
\n
\n
\n

errors [required]

\n
\n

[string]

\n

A list of errors.

\n
\n \n
\n
" + } + }, + "request": { + "json_curl": {}, + "json": { + "displayName": "string", + "externalId": "string", + "id": "string", + "members": [ + { + "$ref": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "display": "string", + "type": "User", + "value": "string" + } + ], + "meta": { + "created": "2019-09-19T10:00:00.000Z", + "lastModified": "2019-09-19T10:00:00.000Z", + "location": "string", + "resourceType": "Group" + }, + "schemas": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ] + }, + "html": "
\n
\n
\n
\n

displayName

\n
\n

string

\n

A human-readable name for the group.

\n
\n \n
\n
\n
\n
\n
\n

externalId

\n
\n

string

\n

An identifier for the resource as defined by the provisioning client.

\n
\n \n
\n
\n
\n
\n
\n

id

\n
\n

string

\n

The identifier of the resource. Not required when creating a group.

\n
\n \n
\n
\n
\n
\n
\n

members

\n
\n

[object]

\n

Members of the SCIM group.

\n
\n
\n
\n
\n
\n

$ref

\n
\n

string

\n

The URI corresponding to a SCIM resource that is a member of this group.

\n
\n \n
\n
\n
\n
\n
\n

display

\n
\n

string

\n

A human-readable name for the group member.

\n
\n \n
\n
\n
\n
\n
\n

type

\n
\n

string

\n

A label indicating the type of resource.

\n
\n \n
\n
\n
\n
\n
\n

value

\n
\n

string

\n

The identifier of the member of this group.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

meta

\n
\n

object

\n

Metadata associated with a SCIM group.

\n
\n
\n
\n
\n
\n

created

\n
\n

date-time

\n

The date and time the group was created.

\n
\n \n
\n
\n
\n
\n
\n

lastModified

\n
\n

date-time

\n

The date and time the group was last changed.

\n
\n \n
\n
\n
\n
\n
\n

location

\n
\n

string

\n

URL identifying the resource.

\n
\n \n
\n
\n
\n
\n
\n

resourceType

\n
\n

string

\n

Type of resource.

\n
\n \n
\n
\n
\n
\n
\n
\n
\n

schemas

\n
\n

[string]

\n

Input JSON Schemas.

\n
\n \n
\n
" + } + } +} \ No newline at end of file diff --git a/data/api/v2/full_spec.yaml b/data/api/v2/full_spec.yaml index f56d2599e34b5..b96ec0f088bc4 100644 --- a/data/api/v2/full_spec.yaml +++ b/data/api/v2/full_spec.yaml @@ -10280,6 +10280,125 @@ components: from the other indexes. type: string type: object + ExternalUserGroup: + description: Definition of a SCIM group. + properties: + displayName: + description: A human-readable name for the group. + type: string + externalId: + description: An identifier for the resource as defined by the provisioning + client. + type: string + id: + description: The identifier of the resource. Not required when creating + a group. + type: string + members: + description: Members of the SCIM group. + items: + $ref: '#/components/schemas/ExternalUserGroupMembersItems' + type: array + meta: + $ref: '#/components/schemas/ExternalUserGroupMeta' + schemas: + description: Input JSON Schemas. + example: + - urn:ietf:params:scim:schemas:core:2.0:Group + items: + type: string + type: array + type: object + ExternalUserGroupMembersItems: + description: The definition of a member belonging to a SCIM group. + properties: + $ref: + description: The URI corresponding to a SCIM resource that is a member of + this group. + example: https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6 + type: string + display: + description: A human-readable name for the group member. + type: string + type: + description: A label indicating the type of resource. + example: User + type: string + value: + description: The identifier of the member of this group. + type: string + type: object + ExternalUserGroupMeta: + description: Metadata associated with a SCIM group. + properties: + created: + description: The date and time the group was created. + format: date-time + type: string + lastModified: + description: The date and time the group was last changed. + format: date-time + type: string + location: + description: URL identifying the resource. + type: string + resourceType: + description: Type of resource. + example: Group + type: string + type: object + ExternalUserGroupPatchRequest: + description: Request object for patching a SCIM group. + example: + Operations: + - op: replace + path: None + value: + displayName: Real new group + id: e43536e9-33fe-43f8-90b8-d3e39a7dd6ad + - op: remove + path: members[value eq "fddf0cf2-9b60-11ef-ad4b-d6754a54a839"] + value: null + schemas: + - urn:ietf:params:scim:api:messages:2.0:PatchOp + properties: + Operations: + description: A list of update operations to be performed on a SCIM group. + items: + $ref: '#/components/schemas/ExternalUserGroupPatchRequestOperationsItems' + type: array + schemas: + description: Input JSON Schemas + example: + - urn:ietf:params:scim:api:messages:2.0:PatchOp + items: + type: string + type: array + type: object + ExternalUserGroupPatchRequestOperationsItems: + description: The definition of an individual patch operation in a patch request. + properties: + op: + $ref: '#/components/schemas/ExternalUserGroupPatchRequestOperationsItemsOp' + path: + description: An attribute path describing the target of the operation. + example: members + type: string + value: + description: JSON element containing the target values required to apply + the patch operation. + type: object + ExternalUserGroupPatchRequestOperationsItemsOp: + description: The operation to be performed. + enum: + - add + - replace + - remove + type: string + x-enum-varnames: + - ADD + - REPLACE + - REMOVE FastlyAccounResponseAttributes: description: Attributes object of a Fastly account. properties: @@ -14112,6 +14231,89 @@ components: description: Current link. type: string type: object + ListExternalUserGroupResponse: + description: List SCIM groups response object. + properties: + Resources: + description: List of SCIM groups matching the request criteria. + items: + $ref: '#/components/schemas/ListExternalUserGroupResponseResourcesItems' + type: array + itemsPerPage: + description: Number of SCIM groups returned per page. + format: int64 + maximum: 4294967295 + minimum: 0 + type: integer + schemas: + description: List response JSON Schemas. + example: + - urn:ietf:params:scim:api:messages:2.0:ListResponse + items: + type: string + type: array + startIndex: + description: Starting index of the SCIM groups for this page (1-indexed). + format: int64 + maximum: 4294967295 + minimum: 0 + type: integer + totalResults: + description: Total number of SCIM groups matching the request criteria. + format: int64 + maximum: 4294967295 + minimum: 0 + type: integer + type: object + ListExternalUserGroupResponseResourcesItems: + description: SCIM resources returned in response to a List SCIM groups request. + properties: + displayName: + description: A human-readable name for the group. + type: string + externalId: + description: An identifier for the resource as defined by the provisioning + client. + type: string + id: + description: The identifier of the resource. Not required when creating + a group. + type: string + members: + description: The `items` `members`. + items: + $ref: '#/components/schemas/ListExternalUserGroupResponseResourcesItemsMembersItems' + type: array + meta: + $ref: '#/components/schemas/ExternalUserGroupMeta' + schemas: + description: SCIM group JSON Schemas. + example: + - urn:ietf:params:scim:schemas:core:2.0:Group + items: + type: string + type: array + type: object + ListExternalUserGroupResponseResourcesItemsMembersItems: + description: The definition of a member belonging to a group in the List SCIM + groups response. + properties: + $ref: + description: The URI corresponding to a SCIM resource that is a member of + this group. + example: https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6 + type: string + display: + description: Full name of the user. + type: string + type: + description: A label indicating the type of resource. Only supported value + is "User". + type: string + value: + description: The identifier of the member of this group. + type: string + type: object ListFindingsData: description: Array of findings. items: @@ -41303,6 +41505,287 @@ paths: - org_management x-undo: type: idempotent + /api/v2/scim/Groups: + get: + description: 'List SCIM groups in the organization. + + Results are paginated by `startIndex` and `count` parameters. + + Results can be narrowed down by the `filter` parameter.' + operationId: ListSCIMGroups + parameters: + - description: Specifies the start index to fetch the results (1-indexed). + in: query + name: startIndex + required: false + schema: + default: 1 + example: 1 + format: int64 + type: integer + - description: Specifies the number of groups to be returned. + in: query + name: count + required: false + schema: + default: 20 + example: 20 + format: int64 + type: integer + - description: 'Specifies the url encoded filter to use to narrow down the results. + + Filters can be in the form of `displayName eq ` or `externalId + eq ` + + or `id eq and members eq ` or `members eq + and id eq `.' + in: query + name: filter + required: false + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/ListExternalUserGroupResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_invite + - user_access_manage + summary: List SCIM groups + tags: + - Scim + x-menu-order: 6 + x-permission: + operator: AND + permissions: + - user_access_invite + - user_access_manage + x-undo: + type: safe + post: + description: 'Create a new SCIM group. + + The group may contain members.' + operationId: CreateSCIMGroup + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ExternalUserGroup' + required: true + responses: + '201': + content: + application/json: + schema: + $ref: '#/components/schemas/ExternalUserGroup' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_invite + - user_access_manage + summary: Create SCIM group + tags: + - Scim + x-menu-order: 5 + x-permission: + operator: AND + permissions: + - user_access_invite + - user_access_manage + x-undo: + operationId: DeleteSCIMGroup + parameters: + - name: group_id + source: + type: unsafe + /api/v2/scim/Groups/{group_id}: + delete: + description: Delete the SCIM group with the given `group_id`. + operationId: DeleteSCIMGroup + parameters: + - description: None + in: path + name: group_id + required: true + schema: + type: string + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_invite + - user_access_manage + summary: Delete SCIM group + tags: + - Scim + x-menu-order: 2 + x-permission: + operator: AND + permissions: + - user_access_invite + - user_access_manage + x-undo: + type: idempotent + get: + description: Get a single SCIM group using the `group_id`. + operationId: GetSCIMGroup + parameters: + - description: None + in: path + name: group_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/ExternalUserGroup' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_invite + - user_access_manage + summary: Get SCIM group + tags: + - Scim + x-menu-order: 4 + x-permission: + operator: AND + permissions: + - user_access_invite + - user_access_manage + x-undo: + type: safe + patch: + description: Patch the SCIM group with the given `group_id`. + operationId: PatchSCIMGroup + parameters: + - description: None + in: path + name: group_id + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ExternalUserGroupPatchRequest' + required: true + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/ExternalUserGroup' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_invite + - user_access_manage + summary: Patch SCIM group + tags: + - Scim + x-menu-order: 3 + x-permission: + operator: AND + permissions: + - user_access_invite + - user_access_manage + x-undo: + type: idempotent + put: + description: Update the SCIM group with the given `group_id`. + operationId: UpdateSCIMGroup + parameters: + - description: None + in: path + name: group_id + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ExternalUserGroup' + required: true + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/ExternalUserGroup' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_invite + - user_access_manage + summary: Update SCIM group + tags: + - Scim + x-menu-order: 1 + x-permission: + operator: AND + permissions: + - user_access_invite + - user_access_manage + x-undo: + type: idempotent /api/v2/scorecard/outcomes: get: description: Fetches all rule outcomes. @@ -47794,6 +48277,8 @@ tags: description: Find out more at url: https://docs.datadoghq.com/real_user_monitoring/platform/generate_metrics/ name: Rum Metrics +- description: Provision Datadog teams using SCIM group APIs. + name: Scim - description: Create and manage your security rules, signals, filters, and more. See the [Datadog Security page](https://docs.datadoghq.com/security/) for more information. diff --git a/data/api/v2/full_spec_deref.json b/data/api/v2/full_spec_deref.json index ab2e312465250..88dd4d1389e16 100644 --- a/data/api/v2/full_spec_deref.json +++ b/data/api/v2/full_spec_deref.json @@ -56158,6 +56158,246 @@ }, "type": "object" }, + "ExternalUserGroup": { + "description": "Definition of a SCIM group.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "Members of the SCIM group.", + "items": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "Input JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ExternalUserGroupMembersItems": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "ExternalUserGroupMeta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "ExternalUserGroupPatchRequest": { + "description": "Request object for patching a SCIM group.", + "example": { + "Operations": [ + { + "op": "replace", + "path": "None", + "value": { + "displayName": "Real new group", + "id": "e43536e9-33fe-43f8-90b8-d3e39a7dd6ad" + } + }, + { + "op": "remove", + "path": "members[value eq \"fddf0cf2-9b60-11ef-ad4b-d6754a54a839\"]", + "value": null + } + ], + "schemas": [ + "urn:ietf:params:scim:api:messages:2.0:PatchOp" + ] + }, + "properties": { + "Operations": { + "description": "A list of update operations to be performed on a SCIM group.", + "items": { + "description": "The definition of an individual patch operation in a patch request.", + "properties": { + "op": { + "description": "The operation to be performed.", + "enum": [ + "add", + "replace", + "remove" + ], + "type": "string", + "x-enum-varnames": [ + "ADD", + "REPLACE", + "REMOVE" + ] + }, + "path": { + "description": "An attribute path describing the target of the operation.", + "example": "members", + "type": "string" + }, + "value": { + "description": "JSON element containing the target values required to apply the patch operation." + } + }, + "type": "object" + }, + "type": "array" + }, + "schemas": { + "description": "Input JSON Schemas", + "example": [ + "urn:ietf:params:scim:api:messages:2.0:PatchOp" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ExternalUserGroupPatchRequestOperationsItems": { + "description": "The definition of an individual patch operation in a patch request.", + "properties": { + "op": { + "description": "The operation to be performed.", + "enum": [ + "add", + "replace", + "remove" + ], + "type": "string", + "x-enum-varnames": [ + "ADD", + "REPLACE", + "REMOVE" + ] + }, + "path": { + "description": "An attribute path describing the target of the operation.", + "example": "members", + "type": "string" + }, + "value": { + "description": "JSON element containing the target values required to apply the patch operation." + } + }, + "type": "object" + }, + "ExternalUserGroupPatchRequestOperationsItemsOp": { + "description": "The operation to be performed.", + "enum": [ + "add", + "replace", + "remove" + ], + "type": "string", + "x-enum-varnames": [ + "ADD", + "REPLACE", + "REMOVE" + ] + }, "FastlyAccounResponseAttributes": { "description": "Attributes object of a Fastly account.", "properties": { @@ -93460,6 +93700,230 @@ }, "type": "object" }, + "ListExternalUserGroupResponse": { + "description": "List SCIM groups response object.", + "properties": { + "Resources": { + "description": "List of SCIM groups matching the request criteria.", + "items": { + "description": "SCIM resources returned in response to a List SCIM groups request.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "The `items` `members`.", + "items": { + "description": "The definition of a member belonging to a group in the List SCIM groups response.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "Full name of the user.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource. Only supported value is \"User\".", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "SCIM group JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "Number of SCIM groups returned per page.", + "format": "int64", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "schemas": { + "description": "List response JSON Schemas.", + "example": [ + "urn:ietf:params:scim:api:messages:2.0:ListResponse" + ], + "items": { + "type": "string" + }, + "type": "array" + }, + "startIndex": { + "description": "Starting index of the SCIM groups for this page (1-indexed).", + "format": "int64", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "totalResults": { + "description": "Total number of SCIM groups matching the request criteria.", + "format": "int64", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + } + }, + "type": "object" + }, + "ListExternalUserGroupResponseResourcesItems": { + "description": "SCIM resources returned in response to a List SCIM groups request.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "The `items` `members`.", + "items": { + "description": "The definition of a member belonging to a group in the List SCIM groups response.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "Full name of the user.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource. Only supported value is \"User\".", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "SCIM group JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListExternalUserGroupResponseResourcesItemsMembersItems": { + "description": "The definition of a member belonging to a group in the List SCIM groups response.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "Full name of the user.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource. Only supported value is \"User\".", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, "ListFindingsData": { "description": "Array of findings.", "items": { @@ -298143,6 +298607,1504 @@ } } }, + "/api/v2/scim/Groups": { + "get": { + "description": "List SCIM groups in the organization.\nResults are paginated by `startIndex` and `count` parameters.\nResults can be narrowed down by the `filter` parameter.", + "operationId": "ListSCIMGroups", + "parameters": [ + { + "description": "Specifies the start index to fetch the results (1-indexed).", + "in": "query", + "name": "startIndex", + "required": false, + "schema": { + "default": 1, + "example": 1, + "format": "int64", + "type": "integer" + } + }, + { + "description": "Specifies the number of groups to be returned.", + "in": "query", + "name": "count", + "required": false, + "schema": { + "default": 20, + "example": 20, + "format": "int64", + "type": "integer" + } + }, + { + "description": "Specifies the url encoded filter to use to narrow down the results.\nFilters can be in the form of `displayName eq ` or `externalId eq `\nor `id eq and members eq ` or `members eq and id eq `.", + "in": "query", + "name": "filter", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "List SCIM groups response object.", + "properties": { + "Resources": { + "description": "List of SCIM groups matching the request criteria.", + "items": { + "description": "SCIM resources returned in response to a List SCIM groups request.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "The `items` `members`.", + "items": { + "description": "The definition of a member belonging to a group in the List SCIM groups response.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "Full name of the user.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource. Only supported value is \"User\".", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "SCIM group JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "Number of SCIM groups returned per page.", + "format": "int64", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "schemas": { + "description": "List response JSON Schemas.", + "example": [ + "urn:ietf:params:scim:api:messages:2.0:ListResponse" + ], + "items": { + "type": "string" + }, + "type": "array" + }, + "startIndex": { + "description": "Starting index of the SCIM groups for this page (1-indexed).", + "format": "int64", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "totalResults": { + "description": "Total number of SCIM groups matching the request criteria.", + "format": "int64", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + } + }, + "type": "object" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request" + }, + "429": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Too many requests" + } + }, + "security": [ + { + "apiKeyAuth": [], + "appKeyAuth": [] + }, + { + "AuthZ": [ + "user_access_invite", + "user_access_manage" + ] + } + ], + "summary": "List SCIM groups", + "tags": [ + "Scim" + ], + "x-menu-order": 6, + "x-permission": { + "operator": "AND", + "permissions": [ + "user_access_invite", + "user_access_manage" + ] + }, + "x-undo": { + "type": "safe" + } + }, + "post": { + "description": "Create a new SCIM group.\nThe group may contain members.", + "operationId": "CreateSCIMGroup", + "requestBody": { + "content": { + "application/json": { + "schema": { + "description": "Definition of a SCIM group.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "Members of the SCIM group.", + "items": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "Input JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "description": "Definition of a SCIM group.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "Members of the SCIM group.", + "items": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "Input JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request" + }, + "429": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Too many requests" + } + }, + "security": [ + { + "apiKeyAuth": [], + "appKeyAuth": [] + }, + { + "AuthZ": [ + "user_access_invite", + "user_access_manage" + ] + } + ], + "summary": "Create SCIM group", + "tags": [ + "Scim" + ], + "x-menu-order": 5, + "x-permission": { + "operator": "AND", + "permissions": [ + "user_access_invite", + "user_access_manage" + ] + }, + "x-undo": { + "operationId": "DeleteSCIMGroup", + "parameters": [ + { + "name": "group_id", + "source": "" + } + ], + "type": "unsafe" + } + } + }, + "/api/v2/scim/Groups/{group_id}": { + "delete": { + "description": "Delete the SCIM group with the given `group_id`.", + "operationId": "DeleteSCIMGroup", + "parameters": [ + { + "description": "None", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request" + }, + "404": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found" + }, + "429": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Too many requests" + } + }, + "security": [ + { + "apiKeyAuth": [], + "appKeyAuth": [] + }, + { + "AuthZ": [ + "user_access_invite", + "user_access_manage" + ] + } + ], + "summary": "Delete SCIM group", + "tags": [ + "Scim" + ], + "x-menu-order": 2, + "x-permission": { + "operator": "AND", + "permissions": [ + "user_access_invite", + "user_access_manage" + ] + }, + "x-undo": { + "type": "idempotent" + } + }, + "get": { + "description": "Get a single SCIM group using the `group_id`.", + "operationId": "GetSCIMGroup", + "parameters": [ + { + "description": "None", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "Definition of a SCIM group.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "Members of the SCIM group.", + "items": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "Input JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request" + }, + "404": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found" + }, + "429": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Too many requests" + } + }, + "security": [ + { + "apiKeyAuth": [], + "appKeyAuth": [] + }, + { + "AuthZ": [ + "user_access_invite", + "user_access_manage" + ] + } + ], + "summary": "Get SCIM group", + "tags": [ + "Scim" + ], + "x-menu-order": 4, + "x-permission": { + "operator": "AND", + "permissions": [ + "user_access_invite", + "user_access_manage" + ] + }, + "x-undo": { + "type": "safe" + } + }, + "patch": { + "description": "Patch the SCIM group with the given `group_id`.", + "operationId": "PatchSCIMGroup", + "parameters": [ + { + "description": "None", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "description": "Request object for patching a SCIM group.", + "example": { + "Operations": [ + { + "op": "replace", + "path": "None", + "value": { + "displayName": "Real new group", + "id": "e43536e9-33fe-43f8-90b8-d3e39a7dd6ad" + } + }, + { + "op": "remove", + "path": "members[value eq \"fddf0cf2-9b60-11ef-ad4b-d6754a54a839\"]", + "value": null + } + ], + "schemas": [ + "urn:ietf:params:scim:api:messages:2.0:PatchOp" + ] + }, + "properties": { + "Operations": { + "description": "A list of update operations to be performed on a SCIM group.", + "items": { + "description": "The definition of an individual patch operation in a patch request.", + "properties": { + "op": { + "description": "The operation to be performed.", + "enum": [ + "add", + "replace", + "remove" + ], + "type": "string", + "x-enum-varnames": [ + "ADD", + "REPLACE", + "REMOVE" + ] + }, + "path": { + "description": "An attribute path describing the target of the operation.", + "example": "members", + "type": "string" + }, + "value": { + "description": "JSON element containing the target values required to apply the patch operation." + } + }, + "type": "object" + }, + "type": "array" + }, + "schemas": { + "description": "Input JSON Schemas", + "example": [ + "urn:ietf:params:scim:api:messages:2.0:PatchOp" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "Definition of a SCIM group.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "Members of the SCIM group.", + "items": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "Input JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request" + }, + "404": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found" + }, + "429": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Too many requests" + } + }, + "security": [ + { + "apiKeyAuth": [], + "appKeyAuth": [] + }, + { + "AuthZ": [ + "user_access_invite", + "user_access_manage" + ] + } + ], + "summary": "Patch SCIM group", + "tags": [ + "Scim" + ], + "x-menu-order": 3, + "x-permission": { + "operator": "AND", + "permissions": [ + "user_access_invite", + "user_access_manage" + ] + }, + "x-undo": { + "type": "idempotent" + } + }, + "put": { + "description": "Update the SCIM group with the given `group_id`.", + "operationId": "UpdateSCIMGroup", + "parameters": [ + { + "description": "None", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "description": "Definition of a SCIM group.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "Members of the SCIM group.", + "items": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "Input JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "Definition of a SCIM group.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "Members of the SCIM group.", + "items": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "Input JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request" + }, + "404": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found" + }, + "409": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Conflict" + }, + "429": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Too many requests" + } + }, + "security": [ + { + "apiKeyAuth": [], + "appKeyAuth": [] + }, + { + "AuthZ": [ + "user_access_invite", + "user_access_manage" + ] + } + ], + "summary": "Update SCIM group", + "tags": [ + "Scim" + ], + "x-menu-order": 1, + "x-permission": { + "operator": "AND", + "permissions": [ + "user_access_invite", + "user_access_manage" + ] + }, + "x-undo": { + "type": "idempotent" + } + } + }, "/api/v2/scorecard/outcomes": { "get": { "description": "Fetches all rule outcomes.", @@ -358169,6 +360131,10 @@ }, "name": "Rum Metrics" }, + { + "description": "Provision Datadog teams using SCIM group APIs.", + "name": "Scim" + }, { "description": "Create and manage your security rules, signals, filters, and more. See the [Datadog Security page](https://docs.datadoghq.com/security/) for more information.", "name": "Security Monitoring" diff --git a/data/api/v2/translate_actions.json b/data/api/v2/translate_actions.json index 1e510725f1de4..c1d644a40bf85 100644 --- a/data/api/v2/translate_actions.json +++ b/data/api/v2/translate_actions.json @@ -1375,6 +1375,36 @@ "request_description": "", "request_schema_description": "The form data submitted to upload IdP metadata" }, + "ListSCIMGroups": { + "description": "List SCIM groups in the organization.\nResults are paginated by `startIndex` and `count` parameters.\nResults can be narrowed down by the `filter` parameter.", + "summary": "List SCIM groups" + }, + "CreateSCIMGroup": { + "description": "Create a new SCIM group.\nThe group may contain members.", + "summary": "Create SCIM group", + "request_description": "", + "request_schema_description": "Definition of a SCIM group." + }, + "DeleteSCIMGroup": { + "description": "Delete the SCIM group with the given `group_id`.", + "summary": "Delete SCIM group" + }, + "GetSCIMGroup": { + "description": "Get a single SCIM group using the `group_id`.", + "summary": "Get SCIM group" + }, + "PatchSCIMGroup": { + "description": "Patch the SCIM group with the given `group_id`.", + "summary": "Patch SCIM group", + "request_description": "", + "request_schema_description": "Request object for patching a SCIM group." + }, + "UpdateSCIMGroup": { + "description": "Update the SCIM group with the given `group_id`.", + "summary": "Update SCIM group", + "request_description": "", + "request_schema_description": "Definition of a SCIM group." + }, "ListScorecardOutcomes": { "description": "Fetches all rule outcomes.", "summary": "List all rule outcomes" diff --git a/data/api/v2/translate_tags.json b/data/api/v2/translate_tags.json index 9fd118dcd7f3f..66dd911112081 100644 --- a/data/api/v2/translate_tags.json +++ b/data/api/v2/translate_tags.json @@ -183,6 +183,10 @@ "name": "Rum Metrics", "description": "Manage configuration of [rum-based metrics](https://app.datadoghq.com/rum/generate-metrics) for your organization." }, + "scim": { + "name": "Scim", + "description": "Provision Datadog teams using SCIM group APIs." + }, "security-monitoring": { "name": "Security Monitoring", "description": "Create and manage your security rules, signals, filters, and more. See the [Datadog Security page](https://docs.datadoghq.com/security/) for more information." diff --git a/static/resources/json/full_spec_v2.json b/static/resources/json/full_spec_v2.json index ab2e312465250..88dd4d1389e16 100644 --- a/static/resources/json/full_spec_v2.json +++ b/static/resources/json/full_spec_v2.json @@ -56158,6 +56158,246 @@ }, "type": "object" }, + "ExternalUserGroup": { + "description": "Definition of a SCIM group.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "Members of the SCIM group.", + "items": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "Input JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ExternalUserGroupMembersItems": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "ExternalUserGroupMeta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "ExternalUserGroupPatchRequest": { + "description": "Request object for patching a SCIM group.", + "example": { + "Operations": [ + { + "op": "replace", + "path": "None", + "value": { + "displayName": "Real new group", + "id": "e43536e9-33fe-43f8-90b8-d3e39a7dd6ad" + } + }, + { + "op": "remove", + "path": "members[value eq \"fddf0cf2-9b60-11ef-ad4b-d6754a54a839\"]", + "value": null + } + ], + "schemas": [ + "urn:ietf:params:scim:api:messages:2.0:PatchOp" + ] + }, + "properties": { + "Operations": { + "description": "A list of update operations to be performed on a SCIM group.", + "items": { + "description": "The definition of an individual patch operation in a patch request.", + "properties": { + "op": { + "description": "The operation to be performed.", + "enum": [ + "add", + "replace", + "remove" + ], + "type": "string", + "x-enum-varnames": [ + "ADD", + "REPLACE", + "REMOVE" + ] + }, + "path": { + "description": "An attribute path describing the target of the operation.", + "example": "members", + "type": "string" + }, + "value": { + "description": "JSON element containing the target values required to apply the patch operation." + } + }, + "type": "object" + }, + "type": "array" + }, + "schemas": { + "description": "Input JSON Schemas", + "example": [ + "urn:ietf:params:scim:api:messages:2.0:PatchOp" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ExternalUserGroupPatchRequestOperationsItems": { + "description": "The definition of an individual patch operation in a patch request.", + "properties": { + "op": { + "description": "The operation to be performed.", + "enum": [ + "add", + "replace", + "remove" + ], + "type": "string", + "x-enum-varnames": [ + "ADD", + "REPLACE", + "REMOVE" + ] + }, + "path": { + "description": "An attribute path describing the target of the operation.", + "example": "members", + "type": "string" + }, + "value": { + "description": "JSON element containing the target values required to apply the patch operation." + } + }, + "type": "object" + }, + "ExternalUserGroupPatchRequestOperationsItemsOp": { + "description": "The operation to be performed.", + "enum": [ + "add", + "replace", + "remove" + ], + "type": "string", + "x-enum-varnames": [ + "ADD", + "REPLACE", + "REMOVE" + ] + }, "FastlyAccounResponseAttributes": { "description": "Attributes object of a Fastly account.", "properties": { @@ -93460,6 +93700,230 @@ }, "type": "object" }, + "ListExternalUserGroupResponse": { + "description": "List SCIM groups response object.", + "properties": { + "Resources": { + "description": "List of SCIM groups matching the request criteria.", + "items": { + "description": "SCIM resources returned in response to a List SCIM groups request.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "The `items` `members`.", + "items": { + "description": "The definition of a member belonging to a group in the List SCIM groups response.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "Full name of the user.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource. Only supported value is \"User\".", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "SCIM group JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "Number of SCIM groups returned per page.", + "format": "int64", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "schemas": { + "description": "List response JSON Schemas.", + "example": [ + "urn:ietf:params:scim:api:messages:2.0:ListResponse" + ], + "items": { + "type": "string" + }, + "type": "array" + }, + "startIndex": { + "description": "Starting index of the SCIM groups for this page (1-indexed).", + "format": "int64", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "totalResults": { + "description": "Total number of SCIM groups matching the request criteria.", + "format": "int64", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + } + }, + "type": "object" + }, + "ListExternalUserGroupResponseResourcesItems": { + "description": "SCIM resources returned in response to a List SCIM groups request.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "The `items` `members`.", + "items": { + "description": "The definition of a member belonging to a group in the List SCIM groups response.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "Full name of the user.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource. Only supported value is \"User\".", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "SCIM group JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListExternalUserGroupResponseResourcesItemsMembersItems": { + "description": "The definition of a member belonging to a group in the List SCIM groups response.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "Full name of the user.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource. Only supported value is \"User\".", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, "ListFindingsData": { "description": "Array of findings.", "items": { @@ -298143,6 +298607,1504 @@ } } }, + "/api/v2/scim/Groups": { + "get": { + "description": "List SCIM groups in the organization.\nResults are paginated by `startIndex` and `count` parameters.\nResults can be narrowed down by the `filter` parameter.", + "operationId": "ListSCIMGroups", + "parameters": [ + { + "description": "Specifies the start index to fetch the results (1-indexed).", + "in": "query", + "name": "startIndex", + "required": false, + "schema": { + "default": 1, + "example": 1, + "format": "int64", + "type": "integer" + } + }, + { + "description": "Specifies the number of groups to be returned.", + "in": "query", + "name": "count", + "required": false, + "schema": { + "default": 20, + "example": 20, + "format": "int64", + "type": "integer" + } + }, + { + "description": "Specifies the url encoded filter to use to narrow down the results.\nFilters can be in the form of `displayName eq ` or `externalId eq `\nor `id eq and members eq ` or `members eq and id eq `.", + "in": "query", + "name": "filter", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "List SCIM groups response object.", + "properties": { + "Resources": { + "description": "List of SCIM groups matching the request criteria.", + "items": { + "description": "SCIM resources returned in response to a List SCIM groups request.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "The `items` `members`.", + "items": { + "description": "The definition of a member belonging to a group in the List SCIM groups response.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "Full name of the user.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource. Only supported value is \"User\".", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "SCIM group JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "type": "array" + }, + "itemsPerPage": { + "description": "Number of SCIM groups returned per page.", + "format": "int64", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "schemas": { + "description": "List response JSON Schemas.", + "example": [ + "urn:ietf:params:scim:api:messages:2.0:ListResponse" + ], + "items": { + "type": "string" + }, + "type": "array" + }, + "startIndex": { + "description": "Starting index of the SCIM groups for this page (1-indexed).", + "format": "int64", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + }, + "totalResults": { + "description": "Total number of SCIM groups matching the request criteria.", + "format": "int64", + "maximum": 4294967295, + "minimum": 0, + "type": "integer" + } + }, + "type": "object" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request" + }, + "429": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Too many requests" + } + }, + "security": [ + { + "apiKeyAuth": [], + "appKeyAuth": [] + }, + { + "AuthZ": [ + "user_access_invite", + "user_access_manage" + ] + } + ], + "summary": "List SCIM groups", + "tags": [ + "Scim" + ], + "x-menu-order": 6, + "x-permission": { + "operator": "AND", + "permissions": [ + "user_access_invite", + "user_access_manage" + ] + }, + "x-undo": { + "type": "safe" + } + }, + "post": { + "description": "Create a new SCIM group.\nThe group may contain members.", + "operationId": "CreateSCIMGroup", + "requestBody": { + "content": { + "application/json": { + "schema": { + "description": "Definition of a SCIM group.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "Members of the SCIM group.", + "items": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "Input JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "description": "Definition of a SCIM group.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "Members of the SCIM group.", + "items": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "Input JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, + "description": "Created" + }, + "400": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request" + }, + "429": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Too many requests" + } + }, + "security": [ + { + "apiKeyAuth": [], + "appKeyAuth": [] + }, + { + "AuthZ": [ + "user_access_invite", + "user_access_manage" + ] + } + ], + "summary": "Create SCIM group", + "tags": [ + "Scim" + ], + "x-menu-order": 5, + "x-permission": { + "operator": "AND", + "permissions": [ + "user_access_invite", + "user_access_manage" + ] + }, + "x-undo": { + "operationId": "DeleteSCIMGroup", + "parameters": [ + { + "name": "group_id", + "source": "" + } + ], + "type": "unsafe" + } + } + }, + "/api/v2/scim/Groups/{group_id}": { + "delete": { + "description": "Delete the SCIM group with the given `group_id`.", + "operationId": "DeleteSCIMGroup", + "parameters": [ + { + "description": "None", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "400": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request" + }, + "404": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found" + }, + "429": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Too many requests" + } + }, + "security": [ + { + "apiKeyAuth": [], + "appKeyAuth": [] + }, + { + "AuthZ": [ + "user_access_invite", + "user_access_manage" + ] + } + ], + "summary": "Delete SCIM group", + "tags": [ + "Scim" + ], + "x-menu-order": 2, + "x-permission": { + "operator": "AND", + "permissions": [ + "user_access_invite", + "user_access_manage" + ] + }, + "x-undo": { + "type": "idempotent" + } + }, + "get": { + "description": "Get a single SCIM group using the `group_id`.", + "operationId": "GetSCIMGroup", + "parameters": [ + { + "description": "None", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "Definition of a SCIM group.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "Members of the SCIM group.", + "items": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "Input JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request" + }, + "404": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found" + }, + "429": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Too many requests" + } + }, + "security": [ + { + "apiKeyAuth": [], + "appKeyAuth": [] + }, + { + "AuthZ": [ + "user_access_invite", + "user_access_manage" + ] + } + ], + "summary": "Get SCIM group", + "tags": [ + "Scim" + ], + "x-menu-order": 4, + "x-permission": { + "operator": "AND", + "permissions": [ + "user_access_invite", + "user_access_manage" + ] + }, + "x-undo": { + "type": "safe" + } + }, + "patch": { + "description": "Patch the SCIM group with the given `group_id`.", + "operationId": "PatchSCIMGroup", + "parameters": [ + { + "description": "None", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "description": "Request object for patching a SCIM group.", + "example": { + "Operations": [ + { + "op": "replace", + "path": "None", + "value": { + "displayName": "Real new group", + "id": "e43536e9-33fe-43f8-90b8-d3e39a7dd6ad" + } + }, + { + "op": "remove", + "path": "members[value eq \"fddf0cf2-9b60-11ef-ad4b-d6754a54a839\"]", + "value": null + } + ], + "schemas": [ + "urn:ietf:params:scim:api:messages:2.0:PatchOp" + ] + }, + "properties": { + "Operations": { + "description": "A list of update operations to be performed on a SCIM group.", + "items": { + "description": "The definition of an individual patch operation in a patch request.", + "properties": { + "op": { + "description": "The operation to be performed.", + "enum": [ + "add", + "replace", + "remove" + ], + "type": "string", + "x-enum-varnames": [ + "ADD", + "REPLACE", + "REMOVE" + ] + }, + "path": { + "description": "An attribute path describing the target of the operation.", + "example": "members", + "type": "string" + }, + "value": { + "description": "JSON element containing the target values required to apply the patch operation." + } + }, + "type": "object" + }, + "type": "array" + }, + "schemas": { + "description": "Input JSON Schemas", + "example": [ + "urn:ietf:params:scim:api:messages:2.0:PatchOp" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "Definition of a SCIM group.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "Members of the SCIM group.", + "items": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "Input JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request" + }, + "404": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found" + }, + "429": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Too many requests" + } + }, + "security": [ + { + "apiKeyAuth": [], + "appKeyAuth": [] + }, + { + "AuthZ": [ + "user_access_invite", + "user_access_manage" + ] + } + ], + "summary": "Patch SCIM group", + "tags": [ + "Scim" + ], + "x-menu-order": 3, + "x-permission": { + "operator": "AND", + "permissions": [ + "user_access_invite", + "user_access_manage" + ] + }, + "x-undo": { + "type": "idempotent" + } + }, + "put": { + "description": "Update the SCIM group with the given `group_id`.", + "operationId": "UpdateSCIMGroup", + "parameters": [ + { + "description": "None", + "in": "path", + "name": "group_id", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "description": "Definition of a SCIM group.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "Members of the SCIM group.", + "items": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "Input JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, + "required": true + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "Definition of a SCIM group.", + "properties": { + "displayName": { + "description": "A human-readable name for the group.", + "type": "string" + }, + "externalId": { + "description": "An identifier for the resource as defined by the provisioning client.", + "type": "string" + }, + "id": { + "description": "The identifier of the resource. Not required when creating a group.", + "type": "string" + }, + "members": { + "description": "Members of the SCIM group.", + "items": { + "description": "The definition of a member belonging to a SCIM group.", + "properties": { + "$ref": { + "description": "The URI corresponding to a SCIM resource that is a member of this group.", + "example": "https://app.datadoghq.com/api/scim/v2/Users/429ebce5-8ed3-4da9-9f1e-662f2dbc2fe6", + "type": "string" + }, + "display": { + "description": "A human-readable name for the group member.", + "type": "string" + }, + "type": { + "description": "A label indicating the type of resource.", + "example": "User", + "type": "string" + }, + "value": { + "description": "The identifier of the member of this group.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "meta": { + "description": "Metadata associated with a SCIM group.", + "properties": { + "created": { + "description": "The date and time the group was created.", + "format": "date-time", + "type": "string" + }, + "lastModified": { + "description": "The date and time the group was last changed.", + "format": "date-time", + "type": "string" + }, + "location": { + "description": "URL identifying the resource.", + "type": "string" + }, + "resourceType": { + "description": "Type of resource.", + "example": "Group", + "type": "string" + } + }, + "type": "object" + }, + "schemas": { + "description": "Input JSON Schemas.", + "example": [ + "urn:ietf:params:scim:schemas:core:2.0:Group" + ], + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, + "description": "OK" + }, + "400": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Bad Request" + }, + "404": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Not Found" + }, + "409": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Conflict" + }, + "429": { + "content": { + "application/json": { + "schema": { + "description": "API error response.", + "properties": { + "errors": { + "description": "A list of errors.", + "example": [ + "Bad Request" + ], + "items": { + "description": "A list of items.", + "example": "Bad Request", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "errors" + ], + "type": "object" + } + } + }, + "description": "Too many requests" + } + }, + "security": [ + { + "apiKeyAuth": [], + "appKeyAuth": [] + }, + { + "AuthZ": [ + "user_access_invite", + "user_access_manage" + ] + } + ], + "summary": "Update SCIM group", + "tags": [ + "Scim" + ], + "x-menu-order": 1, + "x-permission": { + "operator": "AND", + "permissions": [ + "user_access_invite", + "user_access_manage" + ] + }, + "x-undo": { + "type": "idempotent" + } + } + }, "/api/v2/scorecard/outcomes": { "get": { "description": "Fetches all rule outcomes.", @@ -358169,6 +360131,10 @@ }, "name": "Rum Metrics" }, + { + "description": "Provision Datadog teams using SCIM group APIs.", + "name": "Scim" + }, { "description": "Create and manage your security rules, signals, filters, and more. See the [Datadog Security page](https://docs.datadoghq.com/security/) for more information.", "name": "Security Monitoring"