API reference

User provisioning API

User provisioning: SCIM 2.0, tokens and group bindings

HTTP reference. Generated from the backend contract. Browse endpoints below or download OpenAPI.

This group has 24 operations, generated from api/openapi.yaml. Filter by path, action, or authentication. Each endpoint lists its inputs; expand it for a request template and response codes. Templates need your own values and a schema-valid body.

Replace uppercase placeholders with your values. For a JSON request, save a body matching the schema in request.json. Cookie examples use a local cookie jar from an authenticated session.

User provisioning: SCIM 2.0, tokens and group bindings

GET/api/organizations/{org_id}/scim

Dashboard Organizations Get SCIM

A designated admin reads the organization's SCIM provisioning settings: whether it is enabled, the base URL to enter at the identity provider (on the API origin), the live provisioning tokens without their secrets, and the counts of provisioned users and groups. People only; agents and bearer credentials have no route.

Authentication
dashboardSession
Request body
none
Operation ID
dashboardOrganizationsGetSCIM

Parameters

NameSend inRequired?Description
org_idpathrequired
Request template and responses
shell · request template
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/organizations/ORG_ID/scim'

Responses

StatusMeaningBody and headers
200The organization's SCIM settings.SCIMSettings (application/json); headers: Cache-Control
401

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
403

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
default

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
PUT/api/organizations/{org_id}/scim

Dashboard Organizations Set SCIM

A designated admin enables or disables SCIM provisioning after fresh proof: a passkey or password proof bound to a reauthentication of kind scim_change with the organization id as subject_id, or {type: sso} from a session that signed in through single sign-on at most 10 minutes ago.

Disabling changes nobody's access: the people and groups already provisioned keep their grants, and the /scim/v2 routes answer 403 until SCIM is enabled again. Returns the settings.

People only; agents and bearer credentials have no route. enabled true is SCIM provisioning, which the Enterprise plan includes; an organization whose plan lacks it is refused with feature_not_in_plan (402). enabled false is always accepted, and the /scim/v2 endpoints of an organization that has SCIM on keep answering.

Authentication
dashboardSession
Request body
SCIMSettingsWrite
Operation ID
dashboardOrganizationsSetSCIM

Parameters

NameSend inRequired?Description
org_idpathrequired

Request body fields

FieldDescription
enabled (required, boolean)
proof (required, DashboardProof)
Request template and responses
shell · request template
curl --request PUT --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/organizations/ORG_ID/scim'

Responses

StatusMeaningBody and headers
200The organization's SCIM settings.SCIMSettings (application/json); headers: Cache-Control
400

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
401

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
402feature_not_in_plan — SCIM provisioning is part of the Enterprise plan; the problem names the feature, the plan the account is on and required_plan.Problem (application/problem+json)
403

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
default

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
POST/api/organizations/{org_id}/scim/tokens

Dashboard Organizations Create SCIMToken

A designated admin mints a provisioning token after fresh proof (as for PUT .../scim). The token, srscim_ plus 43 base64url characters, is returned once, here only; the server keeps a SHA-256 digest and a prefix to recognise it by. An organization holds at most 5 live tokens, otherwise resource_conflict.

People only; agents and bearer credentials have no route. Issuing a token is SCIM provisioning, which the Enterprise plan includes; an organization whose plan lacks it is refused with feature_not_in_plan (402). Tokens already issued keep working and can be revoked.

Authentication
dashboardSession
Request body
SCIMTokenCreate
Operation ID
dashboardOrganizationsCreateSCIMToken

Parameters

NameSend inRequired?Description
org_idpathrequired

Request body fields

FieldDescription
name (required, string)minLength: 1 maxLength: 80
proof (required, DashboardProof)
Request template and responses
shell · request template
curl --request POST --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/organizations/ORG_ID/scim/tokens'

Responses

StatusMeaningBody and headers
201The new token, with its secret.SCIMTokenCreated (application/json); headers: Cache-Control
400

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
401

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
402feature_not_in_plan — SCIM provisioning is part of the Enterprise plan; the problem names the feature, the plan the account is on and required_plan.Problem (application/problem+json)
403

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
409

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
default

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
DELETE/api/organizations/{org_id}/scim/tokens/{token_id}

Dashboard Organizations Revoke SCIMToken

A designated admin revokes a provisioning token; requests that present it are refused with 401 from then on. An already revoked token returns 204; an id the organization does not hold is not_found. People only; agents and bearer credentials have no route.

Authentication
dashboardSession
Request body
none
Operation ID
dashboardOrganizationsRevokeSCIMToken

Parameters

NameSend inRequired?Description
org_idpathrequired
token_idpathrequired
Request template and responses
shell · request template
curl --request DELETE --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/organizations/ORG_ID/scim/tokens/TOKEN_ID'

Responses

StatusMeaningBody and headers
204The token is revoked.no body
401

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
403

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
404

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
default

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
GET/api/organizations/{org_id}/scim/groups

Dashboard Organizations List SCIMGroups

A designated admin lists the groups the identity provider has provisioned, with their member counts and the projects each is bound to. Binding is done in the project (createDashboardGroupBinding) by a person who can approve there; an admin sees bindings and project names only, which grants no project access.

People only; agents and bearer credentials have no route.

Authentication
dashboardSession
Request body
none
Operation ID
dashboardOrganizationsListSCIMGroups

Parameters

NameSend inRequired?Description
org_idpathrequired
Request template and responses
shell · request template
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/organizations/ORG_ID/scim/groups'

Responses

StatusMeaningBody and headers
200The organization's provisioned groups.SCIMGroupList (application/json); headers: Cache-Control
401

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
403

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
default

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
GET/api/organizations/{org_id}/scim/events

Dashboard Organizations List SCIMEvents

A designated admin reads the latest 500 requests the organization's SCIM clients made, newest first, failures included, kept for 30 days. Each row names the operation, the resource and the status, and carries a detail when the request failed. People only; agents and bearer credentials have no route.

Authentication
dashboardSession
Request body
none
Operation ID
dashboardOrganizationsListSCIMEvents

Parameters

NameSend inRequired?Description
org_idpathrequired
Request template and responses
shell · request template
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/organizations/ORG_ID/scim/events'

Responses

StatusMeaningBody and headers
200The organization's latest SCIM events.SCIMEventList (application/json); headers: Cache-Control
401

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
403

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
default

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
GET/api/project/group-bindings

List Dashboard Group Bindings

The session project's group bindings, and the groups its organization's identity provider has provisioned (name and member count) to choose from.

A binding gives every member of the group a membership in this project: role member is a plain membership and role approver also lets the person approve reviews, of the whole project or of the binding's screen_scope. A person several bindings of the project reach holds the union of their scopes, and a binding without a scope gives the whole project.

They approve reviews only when the union of their approver bindings' scopes (with an approving hand grant's) covers that whole union, and are a member otherwise; SCIM never lowers a hand grant: a binding that would is not applied to the person and is recorded as a failed SCIM event.

Any member of the project reads, except a caller limited to screens (outside_screen_scope).

Authentication
dashboardSession
Request body
none
Operation ID
listDashboardGroupBindings
Request template and responses
shell · request template
curl --request GET --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/project/group-bindings'

Responses

StatusMeaningBody and headers
200The project's bindings and the organization's groups.GroupBindingList (application/json); headers: Cache-Control
401

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
409

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
default

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
POST/api/project/group-bindings

Create Dashboard Group Binding

Binds a provisioned group to the session project with a role and, optionally, a screen_scope that limits it to screen folders and screens (fixed once made; invalid_request names the field of an id the project does not hold).

The project owner or a member who can approve only (approver_required otherwise; a caller limited to screens is outside_screen_scope); an admin of the project's organization binds as such a member, so one who cannot approve joins the project first (POST /api/organizations/{org_id}/projects/{project_id}/access makes them an approver), and the binding is then recorded in the organization audit, marked by_organization_admin in the project's audit, and the project's owner is emailed; a staff shadow session is read-only.

The group must be one of the project's organization's provisioned groups, otherwise not_found, and a group is bound to a project once, otherwise resource_conflict. The binding takes effect at once for the group's current members and follows every change to the group's membership.

The project's 200-member limit applies: a person it refuses is recorded as a failed event in the organization's SCIM events and nothing else changes; so is a person who would be an external guest that the organization's guest policy does not admit (guest_not_allowed).

A scope change a binding makes appends project.member_screen_scope_changed (details user_id, screen_scope, previous, via scim, changed_by_user_id empty). Binding a group is SCIM provisioning, which the Enterprise plan includes; a project whose plan lacks it is refused with feature_not_in_plan (402). Bindings that exist keep granting and can be removed.

Authentication
dashboardSession
Request body
GroupBindingCreate
Operation ID
createDashboardGroupBinding

Request body fields

FieldDescription
group_id (required, string)minLength: 1 maxLength: 200
role (required, string)Allowed: "approver", "member"
screen_scope (optional, ScreenScope)

What a scoped member or agent may act on (docs/screen-scope.md): the screens in the listed screen folders and in every folder inside them, and the listed screens. At least one id in all. An id that names no live folder or screen of the project when written is invalid_request at its position; a later deletion leaves a dead id, which grants nothing.

The scope is read on each request, so a change applies to the next one. Tags are never scope.

Request template and responses
shell · request template
curl --request POST --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/project/group-bindings'

Responses

StatusMeaningBody and headers
201The new binding.GroupBinding (application/json); headers: Cache-Control
400

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
401

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
402feature_not_in_plan — SCIM provisioning is part of the Enterprise plan; the problem names the feature, the plan the account is on and required_plan.Problem (application/problem+json)
403

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
404

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
409

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
default

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
DELETE/api/project/group-bindings/{binding_id}

Delete Dashboard Group Binding

Unbinds a group from the session project. The project owner or a member who can approve only (approver_required otherwise); an admin of the project's organization unbinds as such a member, recorded as a binding is.

People who held access only through the binding lose it; a membership granted by hand stays, and a hand grant the binding raised or widened returns to what it was, its screen scope included. An id the project does not hold is not_found.

Authentication
dashboardSession
Request body
none
Operation ID
deleteDashboardGroupBinding

Parameters

NameSend inRequired?Description
binding_idpathrequired
Request template and responses
shell · request template
curl --request DELETE --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/project/group-bindings/BINDING_ID'

Responses

StatusMeaningBody and headers
204The binding is removed and the access it gave is withdrawn.no body
401

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
403

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
404

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
409

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
default

Stable RFC 9457 problem response. A 421 server_draining carries Retry-After of 1 second, a 500 not_ready or dependency_unavailable carries 5, and a 500 manifest_degraded carries 60, unless the handler set a more specific value.

Problem (application/problem+json)
GET/scim/v2/ServiceProviderConfig

Get SCIMService Provider Config

The RFC 7643 ServiceProviderConfig of the organization's SCIM service: patch and filter (at most 200 results) are supported; bulk, sort, etag and changePassword are not. Requests and responses are application/scim+json; application/json is accepted on requests.

Authentication
scimBearer
Request body
none
Operation ID
getSCIMServiceProviderConfig
Request template and responses
shell · request template
curl --request GET --header 'Authorization: Bearer [SCIM_TOKEN]' 'https://api.screenrig.ai/scim/v2/ServiceProviderConfig'

Responses

StatusMeaningBody and headers
200The service provider configuration.SCIMResource (application/scim+json)
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
GET/scim/v2/ResourceTypes

List SCIMResource Types

The RFC 7643 resource types the service provisions: User and Group.

Authentication
scimBearer
Request body
none
Operation ID
listSCIMResourceTypes
Request template and responses
shell · request template
curl --request GET --header 'Authorization: Bearer [SCIM_TOKEN]' 'https://api.screenrig.ai/scim/v2/ResourceTypes'

Responses

StatusMeaningBody and headers
200A ListResponse of the resource types.SCIMResource (application/scim+json)
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
GET/scim/v2/Schemas

List SCIMSchemas

The RFC 7643 schema definitions of the resources the service provisions.

Authentication
scimBearer
Request body
none
Operation ID
listSCIMSchemas
Request template and responses
shell · request template
curl --request GET --header 'Authorization: Bearer [SCIM_TOKEN]' 'https://api.screenrig.ai/scim/v2/Schemas'

Responses

StatusMeaningBody and headers
200A ListResponse of the schemas.SCIMResource (application/scim+json)
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
GET/scim/v2/Users

List SCIMUsers

Lists the organization's provisioned users as an RFC 7644 ListResponse. filter is one to four attr eq value terms joined by and; a value is a quoted JSON string, or true or false for active.

Users filter on userName (case-insensitive), externalId (exact), id, emails and emails.value, displayName and active; any other filter is 400 invalidFilter. startIndex is 1-based. count defaults to 100 and is at most 200; count=0 returns only totalResults. attributes and excludedAttributes trim the members returned.

Authentication
scimBearer
Request body
none
Operation ID
listSCIMUsers

Parameters

NameSend inRequired?Description
filterqueryoptionalOne to four attr eq value terms joined by and. A value is a quoted JSON string, or true or false for active. An unsupported attribute, operator or shape is 400 invalidFilter.
startIndexqueryoptionalThe 1-based index of the first result. A value below 1 is read as 1.
countqueryoptionalThe page size, at most 200. 0 returns only totalResults. A larger value is read as 200.
attributesqueryoptionalA comma-separated list of attributes to return; the others are left out, except id and schemas.
excludedAttributesqueryoptionalA comma-separated list of attributes to leave out.
Request template and responses
shell · request template
curl --request GET --header 'Authorization: Bearer [SCIM_TOKEN]' 'https://api.screenrig.ai/scim/v2/Users'

Responses

StatusMeaningBody and headers
200A ListResponse of users.SCIMResource (application/scim+json)
400

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
POST/scim/v2/Users

Create SCIMUser

Provisions a user and answers 201 with the resource and its Location. The person is identified by their work email, else their primary email, else userName, and the address must be at one of the organization's verified domains.

A person who holds no credential, or whom the organization already manages, becomes managed by it and signs in through the connection; a person who is already a member of one of its projects and keeps their own sign-in is linked for access only, so SCIM manages their grants in the organization's projects and never the person.

An address the organization may not provision, such as one at another domain or a screenRIG staff person, is refused with a SCIM error whose detail names the reason. A person whose user this organization deleted while it did not manage them is provisioned again, with the access the deletion removed. A userName that is already provisioned is 409 uniqueness.

Authentication
scimBearer
Request body
SCIMResource
Operation ID
createSCIMUser

Request body fields

FieldDescription
schemas (optional, array)The URNs of the schemas the document follows.
Request template and responses
shell · request template
curl --request POST --header 'Authorization: Bearer [SCIM_TOKEN]' --header 'Content-Type: application/scim+json' --data '@request.json' 'https://api.screenrig.ai/scim/v2/Users'

Responses

StatusMeaningBody and headers
201The provisioned user.SCIMResource (application/scim+json); headers: Location
400

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
409

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
GET/scim/v2/Users/{id}

Get SCIMUser

Reads one provisioned user. attributes and excludedAttributes trim the members returned.

Authentication
scimBearer
Request body
none
Operation ID
getSCIMUser

Parameters

NameSend inRequired?Description
idpathrequiredThe id of a provisioned resource, as the SCIM service returned it.
attributesqueryoptionalA comma-separated list of attributes to return; the others are left out, except id and schemas.
excludedAttributesqueryoptionalA comma-separated list of attributes to leave out.
Request template and responses
shell · request template
curl --request GET --header 'Authorization: Bearer [SCIM_TOKEN]' 'https://api.screenrig.ai/scim/v2/Users/RESOURCE_ID'

Responses

StatusMeaningBody and headers
200The user.SCIMResource (application/scim+json)
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
404

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
PUT/scim/v2/Users/{id}

Replace SCIMUser

Replaces a provisioned user with the document sent. active false deactivates the person.

A person the organization manages is deactivated as in the dashboard: their sessions and dashboard tokens end, their project memberships and responsible agents are suspended, and the last organization admin is refused with 400 mutability; active true reinstates them with those memberships and agents.

A person it does not manage loses their access in the organization's projects (never a project they own) and their sessions end; active true restores that access. A user that stands for a screenRIG staff person is never changed: 400 mutability.

Authentication
scimBearer
Request body
SCIMResource
Operation ID
replaceSCIMUser

Parameters

NameSend inRequired?Description
idpathrequiredThe id of a provisioned resource, as the SCIM service returned it.

Request body fields

FieldDescription
schemas (optional, array)The URNs of the schemas the document follows.
Request template and responses
shell · request template
curl --request PUT --header 'Authorization: Bearer [SCIM_TOKEN]' --header 'Content-Type: application/scim+json' --data '@request.json' 'https://api.screenrig.ai/scim/v2/Users/RESOURCE_ID'

Responses

StatusMeaningBody and headers
200The user as stored.SCIMResource (application/scim+json)
400

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
404

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
409

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
PATCH/scim/v2/Users/{id}

Patch SCIMUser

Applies an RFC 7644 PatchOp message to a provisioned user and answers 200 with the user.

The operations are read as Microsoft Entra ID and Okta send them, with or without ?aadOptscim062020: op names are case- insensitive; booleans are true or false, or "True" or "False"; an operation may omit path or use dotted keys such as name.givenName; paths include emails[type eq "work"].value, members (add, replace, and remove with a value array) and members[value eq "<id>"] (remove); attributes screenRIG does not use are accepted and ignored. active false deactivates the person.

A person the organization manages is deactivated as in the dashboard: their sessions and dashboard tokens end, their project memberships and responsible agents are suspended, and the last organization admin is refused with 400 mutability; active true reinstates them with those memberships and agents.

A person it does not manage loses their access in the organization's projects (never a project they own) and their sessions end; active true restores that access. A user that stands for a screenRIG staff person is never changed: 400 mutability.

Authentication
scimBearer
Request body
SCIMResource
Operation ID
patchSCIMUser

Parameters

NameSend inRequired?Description
idpathrequiredThe id of a provisioned resource, as the SCIM service returned it.

Request body fields

FieldDescription
schemas (optional, array)The URNs of the schemas the document follows.
Request template and responses
shell · request template
curl --request PATCH --header 'Authorization: Bearer [SCIM_TOKEN]' --header 'Content-Type: application/scim+json' --data '@request.json' 'https://api.screenrig.ai/scim/v2/Users/RESOURCE_ID'

Responses

StatusMeaningBody and headers
200The user as stored.SCIMResource (application/scim+json)
400

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
404

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
409

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
DELETE/scim/v2/Users/{id}

Delete SCIMUser

Deactivates the user as active false does, after which the id is not_found and the user leaves every listing and filter. For a person the organization does not manage, the access the deactivation removed is kept, and a later create of the same person restores it. A user that stands for a screenRIG staff person is never changed: 400 mutability.

It never erases a person; erasure is the person's own account deletion.

Authentication
scimBearer
Request body
none
Operation ID
deleteSCIMUser

Parameters

NameSend inRequired?Description
idpathrequiredThe id of a provisioned resource, as the SCIM service returned it.
Request template and responses
shell · request template
curl --request DELETE --header 'Authorization: Bearer [SCIM_TOKEN]' 'https://api.screenrig.ai/scim/v2/Users/RESOURCE_ID'

Responses

StatusMeaningBody and headers
204The user is deactivated and no longer provisioned.no body
400

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
404

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
GET/scim/v2/Groups

List SCIMGroups

Lists the organization's provisioned groups as an RFC 7644 ListResponse. filter is one to four attr eq value terms joined by and.

Groups filter on displayName, externalId, id, and members and members.value; any other filter is 400 invalidFilter. startIndex is 1-based. count defaults to 100 and is at most 200; count=0 returns only totalResults. attributes and excludedAttributes trim the members returned.

Authentication
scimBearer
Request body
none
Operation ID
listSCIMGroups

Parameters

NameSend inRequired?Description
filterqueryoptionalOne to four attr eq value terms joined by and. A value is a quoted JSON string, or true or false for active. An unsupported attribute, operator or shape is 400 invalidFilter.
startIndexqueryoptionalThe 1-based index of the first result. A value below 1 is read as 1.
countqueryoptionalThe page size, at most 200. 0 returns only totalResults. A larger value is read as 200.
attributesqueryoptionalA comma-separated list of attributes to return; the others are left out, except id and schemas.
excludedAttributesqueryoptionalA comma-separated list of attributes to leave out.
Request template and responses
shell · request template
curl --request GET --header 'Authorization: Bearer [SCIM_TOKEN]' 'https://api.screenrig.ai/scim/v2/Groups'

Responses

StatusMeaningBody and headers
200A ListResponse of groups.SCIMResource (application/scim+json)
400

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
POST/scim/v2/Groups

Create SCIMGroup

Provisions a group and answers 201 with the resource and its Location. displayName is unique in the organization, compared case-insensitively; a duplicate is 409 uniqueness. A group grants no access until a person who can approve binds it to a project in the dashboard.

Authentication
scimBearer
Request body
SCIMResource
Operation ID
createSCIMGroup

Request body fields

FieldDescription
schemas (optional, array)The URNs of the schemas the document follows.
Request template and responses
shell · request template
curl --request POST --header 'Authorization: Bearer [SCIM_TOKEN]' --header 'Content-Type: application/scim+json' --data '@request.json' 'https://api.screenrig.ai/scim/v2/Groups'

Responses

StatusMeaningBody and headers
201The provisioned group.SCIMResource (application/scim+json); headers: Location
400

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
409

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
GET/scim/v2/Groups/{id}

Get SCIMGroup

Reads one provisioned group. attributes and excludedAttributes trim the members returned.

Authentication
scimBearer
Request body
none
Operation ID
getSCIMGroup

Parameters

NameSend inRequired?Description
idpathrequiredThe id of a provisioned resource, as the SCIM service returned it.
attributesqueryoptionalA comma-separated list of attributes to return; the others are left out, except id and schemas.
excludedAttributesqueryoptionalA comma-separated list of attributes to leave out.
Request template and responses
shell · request template
curl --request GET --header 'Authorization: Bearer [SCIM_TOKEN]' 'https://api.screenrig.ai/scim/v2/Groups/RESOURCE_ID'

Responses

StatusMeaningBody and headers
200The group.SCIMResource (application/scim+json)
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
404

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
PUT/scim/v2/Groups/{id}

Replace SCIMGroup

Replaces a provisioned group with the document sent. A document without members keeps the group's members. Membership changes reconcile the affected people's project access, which is idempotent.

Authentication
scimBearer
Request body
SCIMResource
Operation ID
replaceSCIMGroup

Parameters

NameSend inRequired?Description
idpathrequiredThe id of a provisioned resource, as the SCIM service returned it.

Request body fields

FieldDescription
schemas (optional, array)The URNs of the schemas the document follows.
Request template and responses
shell · request template
curl --request PUT --header 'Authorization: Bearer [SCIM_TOKEN]' --header 'Content-Type: application/scim+json' --data '@request.json' 'https://api.screenrig.ai/scim/v2/Groups/RESOURCE_ID'

Responses

StatusMeaningBody and headers
200The group as stored.SCIMResource (application/scim+json)
400

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
404

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
409

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
PATCH/scim/v2/Groups/{id}

Patch SCIMGroup

Applies an RFC 7644 PatchOp message to a provisioned group and answers 204, or 200 with the group when attributes or excludedAttributes are given.

The operations are read as Microsoft Entra ID and Okta send them, with or without ?aadOptscim062020: op names are case-insensitive; booleans are true or false, or "True" or "False"; an operation may omit path or use dotted keys such as name.givenName; paths include emails[type eq "work"].value, members (add, replace, and remove with a value array) and members[value eq "<id>"] (remove); attributes screenRIG does not use are accepted and ignored.

Membership changes reconcile the affected people's project access, which is idempotent.

Authentication
scimBearer
Request body
SCIMResource
Operation ID
patchSCIMGroup

Parameters

NameSend inRequired?Description
idpathrequiredThe id of a provisioned resource, as the SCIM service returned it.
attributesqueryoptionalA comma-separated list of attributes to return; the others are left out, except id and schemas.
excludedAttributesqueryoptionalA comma-separated list of attributes to leave out.

Request body fields

FieldDescription
schemas (optional, array)The URNs of the schemas the document follows.
Request template and responses
shell · request template
curl --request PATCH --header 'Authorization: Bearer [SCIM_TOKEN]' --header 'Content-Type: application/scim+json' --data '@request.json' 'https://api.screenrig.ai/scim/v2/Groups/RESOURCE_ID'

Responses

StatusMeaningBody and headers
200The group as stored, when attributes or excludedAttributes were given.SCIMResource (application/scim+json)
204The patch is applied.no body
400

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
404

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
409

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
DELETE/scim/v2/Groups/{id}

Delete SCIMGroup

Deletes a provisioned group together with its project bindings. People who held access only through those bindings lose it; a membership granted by hand stays.

Authentication
scimBearer
Request body
none
Operation ID
deleteSCIMGroup

Parameters

NameSend inRequired?Description
idpathrequiredThe id of a provisioned resource, as the SCIM service returned it.
Request template and responses
shell · request template
curl --request DELETE --header 'Authorization: Bearer [SCIM_TOKEN]' 'https://api.screenrig.ai/scim/v2/Groups/RESOURCE_ID'

Responses

StatusMeaningBody and headers
204The group is deleted.no body
401

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
403

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
404

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)
429The organization's request budget (600 a minute) is spent. A SCIM error with status "429"; retry after the Retry-After interval.SCIMError (application/scim+json); headers: Retry-After
default

An RFC 7644 section 3.12 SCIM error, application/scim+json, not a problem document. status repeats the HTTP status as a string and scimType names the class (invalidFilter, uniqueness, mutability and the others of the RFC); detail says what was refused. 401 is an unknown or revoked token and 403 an organization with SCIM turned off.

SCIMError (application/scim+json)