System for Cross-domain Identity Management (SCIM) API
-
- UpdatedAug 1, 2024
- 89 minutes to read
- Xanadu
- API reference
The System for Cross-domain Identity Management (SCIM) API provides endpoints to create, read, update, and delete operations on users and groups using the SCIM protocol.
The SCIM protocol is an application-level HTTP-based protocol based on the HTTP [RFC7230] standard. Use this API for provisioning and managing identity data, such as users and groups, on the web and in cross-domain environments, such as enterprise-to-cloud service providers or inter-cloud scenarios.
To access this API, you must activate the SCIM v2 - ServiceNow® Cross-domain Identity Management (com.snc.integration.scim2) plugin.
Resource mapping
- User (core and extension)
- Group (core and extension)
- Company
- CostCenter
- Department
- Location
The SCIM User resource has both core (schema: urn:ietf:params:scim:schemas:core:2.0:User) and extension (urn:ietf:params:scim:schemas:extension:servicenow:2.0:User) schemas. Most of the User core and extension schema attributes map to the User [sys_user] table.
SCIM attribute name | Sys Scim User field name |
---|---|
externalId | external_id |
The SCIM User extended schema (urn:ietf:params:scim:schemas:extension:servicenow:2.0:User) maps to the User [sys_user] table.
The SCIM Group resource schema (urn:ietf:params:scim:schemas:core:2.0:Group) maps to the Group [sys_user_group] table.
The SCIM Group externalId parameter maps to the Sys Scim Group [sys_scim_group] table.
SCIM attribute name | Sys Scim Group field name |
---|---|
externalId | external_id |
The SCIM Group ServiceNow extension schema (urn:ietf:params:scim:schemas:extension:servicenow:2.0:Group) maps to the Group [sys_user_group] table.
SCIM attribute name | Group field name |
---|---|
company.value | company.sys_id |
company.name | company.name |
The SCIM Company resource schema (urn:ietf:params:scim:schemas:custom:servicenow:2.0:Company) maps to the Company [core_company] table.
The SCIM CostCenter resource schema (urn:ietf:params:scim:schemas:custom:servicenow:2.0:CostCenter) maps to the Cost Center [cmn_cost_center] table.
The SCIM Department resource schema (urn:ietf:params:scim:schemas:custom:servicenow:2.0:Department) maps to the Department [cmn_department] table.
The SCIM Location resource schema (urn:ietf:params:scim:schemas:custom:servicenow:2.0:Location) maps to the Location [cmn_location] table.
SCIM-specific tables
Two tables, Sys Scim User [sys_scim_user] and Sys Scim Group [sys_scim_group], contain the SCIM attributes that do not map to existing ServiceNow tables. The following define the contents of these tables.
Roles and access control lists
The scim_admin role is required to access the SCIM-specific tables and the private SCIM endpoints and enables access to the User [sys_user] and Group [sys_user_group] tables.
The SCIM service has four ACLs for accessing the Sys Scim User [sys_scim_user] table and the Sys Scim Group [sys_scim_group] table that enable create, delete, read, and write. These ACLs are only mapped to the scim_admin role.
SCIM - DELETE /scim/Groups/{group_id}
Deletes the specified group record from the Group [sys_user_group] table of a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Groups/{group_id}
Default URL: /api/now/scim/Groups/{group_id}
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
group_id | Sys_id of the group record to delete. Data type: String |
Name | Description |
---|---|
None |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
204 | No Content. The request was successfully processed. |
404 | Not found. The requested item wasn't found. |
Response body parameters (JSON)
Example: cURL request to delete a group
This example shows how to delete a group record from the Group [sys_user_group] table.
SCIM - GET /scim/Groups
Returns one or more group records from the Group [sys_user_group] table within a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Groups
Default URL: /api/now/scim/Groups
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
200 | Successful. The request was successfully processed. |
400 | Bad Request. A bad request type or malformed request
was detected.
|
401 | Unauthorized. The user credentials are incorrect or have not been passed. |
Response body parameters (JSON)
Example: cURL request for multiple groups
This example shows how to request multiple groups (four in this case), using the count parameter.
Response:
Example: cURL request for multiple groups using excludedAttributes
This example shows how to request multiple groups (four in this case), using the count parameter and excluding the meta and members fields.
Response:
SCIM - GET /scim/Groups/{group_id}
Returns the specified group record from the Group [sys_user_group] table within a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Groups/{group_id}
Default URL: /api/now/scim/Groups/{group_id}
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
group_id | Sys_id of the group record to return. |
Name | Description |
---|---|
attributes | Comma-separated list of fields to return in the response. No other fields are
returned. Cannot be used with the excludedAttributes parameter. Data type: String Default: Return all fields unless excludedAttributes is specified. |
excludedAttributes | Comma-separated list of fields to exclude from
the records returned in the response. All other fields are returned. Cannot be used with the attributes parameter. Data type: String Default: Do not exclude any fields. |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
200 | Successful. The request was successfully processed. |
400 | Bad Request. A bad request type or malformed request
was detected.
|
404 | Not found. The requested item wasn't found. |
Response body parameters (JSON)
Example: cURL request for specific group
This example shows how to retrieve a specific group record.
Response:
SCIM - PATCH /scim/Groups/{group_id}
Enables you to add, update, and delete specified fields in a group record in the Group [sys_user_group] table of a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
For additional information, refer to the Modifying with PATCH section of RFC 7644.
URL format
Versioned URL: /api/now/{api_version}/scim/Groups/{group_id}
Default URL: /api/now/scim/Groups/{group_id}
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
group_id | Sys_id of the group record to update. |
Name | Description |
---|---|
attributes | Comma-separated list of fields to return in the response. No other fields are
returned. Cannot be used with the excludedAttributes parameter. Data type: String Default: Return all fields unless excludedAttributes is specified. |
excludedAttributes | Comma-separated list of fields to exclude from
the records returned in the response. All other fields are returned. Cannot be used with the attributes parameter. Data type: String Default: Do not exclude any fields. |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Content-Type | Data format of the request body. Supported types:
application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Response body parameters (JSON)
Example: cURL request
This example shows how to add an external ID to a group record and replace the current list of associated members (users).
Response:
SCIM - POST /scim/Groups
Creates a group record in the Group [sys_user_group] table of a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
You can define the display name of the group, an external ID used to correlate this group to an external system, and add members (users/groups) to the group.
URL format
Versioned URL: /api/now/{api_version}/scim/Groups
Default URL: /api/now/scim/Groups
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
Name | Description |
---|---|
attributes | Comma-separated list of fields to return in the response. No other fields are
returned. Cannot be used with the excludedAttributes parameter. Data type: String Default: Return all fields unless excludedAttributes is specified. |
excludedAttributes | Comma-separated list of fields to exclude from
the records returned in the response. All other fields are returned. Cannot be used with the attributes parameter. Data type: String Default: Do not exclude any fields. |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Content-Type | Data format of the request body. Supported types:
application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Response body parameters (JSON)
Example: cURL request POST a new group and add member
This example creates group51 and adds the user Abel Tutor as a member.
Response:
SCIM - PUT /scim/Groups/{group_id}
Updates the specified group record in the Group [sys_user_group] table of a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
Fields that are omitted in the request are not updated. You can explicitly clear a field by setting its value to null for a single valued field and to an empty array for array type fields such as members.
URL format
Versioned URL: /api/now/{api_version}/scim/Groups/{group_id}
Default URL: /api/now/scim/Groups/{group_id}
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
group_id | Sys_id of the group record to update. |
Name | Description |
---|---|
attributes | Comma-separated list of fields to return in the response. No other fields are
returned. Cannot be used with the excludedAttributes parameter. Data type: String Default: Return all fields unless excludedAttributes is specified. |
excludedAttributes | Comma-separated list of fields to exclude from
the records returned in the response. All other fields are returned. Cannot be used with the attributes parameter. Data type: String Default: Do not exclude any fields. |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Content-Type | Data format of the request body. Supported types:
application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Response body parameters (JSON)
Example: cURL request updating group members using PUT
The following example changes the member associated with the group to Abraham Lincoln instead of Abel Tutor and changes the name of the group to HR Team.
Response:
SCIM - DELETE /scim/Users/{user_id}
Deletes the specified user record from the User [sys_user] table of a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Users/{user_id}
Default URL: /api/now/scim/Users/{user_id}
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
user_id | Sys_id of the user record to delete. |
Name | Description |
---|---|
None |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
204 | No Content. The request was successfully processed. |
404 | Not found. The requested item wasn't found. |
Response body parameters (JSON)
Example: cURL request
This example shows how to delete a user record from the User [sys_user] table.
SCIM - GET /scim/Users
Returns one or more user records from the User [sys_user] table within a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Users
Default URL: /api/now/scim/Users
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
200 | Successful. The request was successfully processed. |
400 | Bad Request. A bad request type or malformed request
was detected.
|
Response body parameters (JSON)
Extension parameters returned
Example: cURL request using attributes
The following example shows how to obtain two users starting at the sixth record and only returning the display name.
Response:
Example: cURL request using a filter
The following example shows how to use the filter parameter to return the first two user records whose given name starts with "a".
Response:
SCIM - GET /scim/Users/{user_id}
Returns the specified user record from the User [sys_user] table within a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Users/{user_id}
Default URL: /api/now/scim/Users/{user_id}
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
user_id | Sys_id of the user record to return. Data type: String |
Name | Description |
---|---|
attributes | Comma-separated list of fields to return in the response. No other fields are
returned. Cannot be used with the excludedAttributes parameter. Data type: String Default: Return all fields unless excludedAttributes is specified. |
excludedAttributes | Comma-separated list of fields to exclude from
the records returned in the response. All other fields are returned. Cannot be used with the attributes parameter. Data type: String Default: Do not exclude any fields. |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
200 | Successful. The request was successfully processed. |
400 | Bad Request. A bad request type or malformed request
was detected.
|
404 | Not found. The requested item wasn't found. |
Response body parameters (JSON)
Extension parameters returned
Example: cURL request using user sys_id
The following example shows how to obtain a specific user record by passing their sys_id.
Response:
SCIM - PATCH /scim/Users/{user_id}
Enables you to add, replace, and remove specified fields in a user record in the User [sys_user] table of a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Users/{user_id}
Default URL: /api/now/scim/Users/{user_id}
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
user_id | Sys_id of the user record to modify. |
Name | Description |
---|---|
attributes | Comma-separated list of fields to return in the response. No other fields are
returned. Cannot be used with the excludedAttributes parameter. Data type: String Default: Return all fields unless excludedAttributes is specified. |
excludedAttributes | Comma-separated list of fields to exclude from
the records returned in the response. All other fields are returned. Cannot be used with the attributes parameter. Data type: String Default: Do not exclude any fields. |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Content-Type | Data format of the request body. Supported types:
application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Response body parameters (JSON)
Extension parameters returned
Example: cURL request
The following example shows how to add, remove, and replace values within a user record.
Response:
SCIM - POST /scim/Users
Creates a user record in the User [sys_user] table of a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Users
Default URL: /api/now/scim/Users
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
Name | Description |
---|---|
attributes | Comma-separated list of fields to return in the response. No other fields are
returned. Cannot be used with the excludedAttributes parameter. Data type: String Default: Return all fields unless excludedAttributes is specified. |
excludedAttributes | Comma-separated list of fields to exclude from
the records returned in the response. All other fields are returned. Cannot be used with the attributes parameter. Data type: String Default: Do not exclude any fields. |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Content-Type | Data format of the request body. Supported types:
application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Response body parameters (JSON or XML)
Example: cURL request to POST user
This example shows how to POST the user Jack Sparrow to the User [sys_user] table.
Response
SCIM - PUT /scim/Users/{user_id}
Updates the specified user record in the User [sys_user] table of a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Users/{user_id}
Default URL: /api/now/scim/Users/{user_id}
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
user_id | Sys_id of the user record to update. |
Name | Description |
---|---|
attributes | Comma-separated list of fields to return in the response. No other fields are
returned. Cannot be used with the excludedAttributes parameter. Data type: String Default: Return all fields unless excludedAttributes is specified. |
excludedAttributes | Comma-separated list of fields to exclude from
the records returned in the response. All other fields are returned. Cannot be used with the attributes parameter. Data type: String Default: Do not exclude any fields. |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Content-Type | Data format of the request body. Supported types:
application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Response body parameters (JSON)
Extension parameters returned
Example: cURL request to update user information using PUT
This example shows how to update the information of an existing user using the PUT endpoint.
Response
SCIM - GET /scim/ResourceTypes
Retrieves information about all System for Cross-domain Identity Management (SCIM) resource types supported by the associated ServiceNow instance.
This is a public endpoint and does not require any roles to access.
URL format
Versioned URL: /api/now/{api_version}/scim/ResourceTypes
Default URL: /api/now/scim/ResourceTypes
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
Name | Description |
---|---|
None |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
200 | Successful. The request was successfully processed. |
Response body parameters (JSON)
Example: cURL request
The following example shows how to obtain the SCIM resource types supported by a ServiceNow instance.
Response
SCIM - GET /scim/ResourceTypes/{ResourceName}
Retrieves information about the specified System for Cross-domain Identity Management (SCIM) resource type.
This is a public endpoint and does not require any roles to access.
URL format
Versioned URL: /api/now/{api_version}/scim/ResourceTypes/{ResourceName}
Default URL: /api/now/scim/ResourceTypes/{ResourceName}
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
ResourceName | Unique ID of the resource type to retrieve. Valid values:
Data type: String |
Name | Description |
---|---|
None |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
200 | Successful. The request was successfully processed. |
404 | Not found. The requested item wasn't found. |
Response body parameters (JSON)
Example: cURL request
The following example shows how to obtain the User SCIM resource type from a ServiceNow instance.
Response
SCIM - GET /scim/Schemas
Retrieves information about all System for Cross-domain Identity Management (SCIM) resource schemas supported by a ServiceNow instance. These schemas define the attributes available for each resource type.
This is a public endpoint and does not require any roles to access.
URL format
Versioned URL: /api/now/{api_version}/scim/Schemas
Default URL: /api/now/scim/Schemas
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
Name | Description |
---|---|
None |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
200 | Successful. The request was successfully processed. |
Response body parameters (JSON)
Name | Description |
---|---|
Standard RFC7643 return results | Method returns results in compliance with the RFC7643 standard. For details see Schema Definition in the RFC7643 specification. |
Example: cURL request
The following example shows how to obtain the SCIM schemas supported by a ServiceNow instance.
Response
SCIM - GET /scim/Schemas/{SchemaName}
Retrieves information about the specified System for Cross-domain Identity Management (SCIM) resource schemas supported by a ServiceNow instance. These schemas define the attributes available for each resource type.
This is a public endpoint and does not require any roles to access.
URL format
Versioned URL: /api/now/{api_version}/scim/Schemas/{SchemaName}
Default URL: /api/now/scim/Schemas/{SchemaName}
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
SchemaName | URI of the resource schema to return. Valid values:
Data type: String |
Name | Description |
---|---|
None |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
200 | Successful. The request was successfully processed. |
404 | Not found. The requested item wasn't found. |
Response body parameters (JSON)
Name | Description |
---|---|
Standard RFC7643 return results | Method returns results in compliance with the RFC7643 standard. For details see Schema Definition in the RFC7643 specification. |
Example: cURL request
The following example shows how to obtain the core Group SCIM schema from a ServiceNow instance.
Response
SCIM - GET /scim/ServiceProviderConfig
Returns the configuration metadata to use to obtain information about the service capabilities, configurations, schemas, and resource types for the System for Cross-domain Identity Management (SCIM) endpoints available within a ServiceNow instance.
This is a public endpoint and does not require any roles to access.
URL format
Versioned URL: /api/now/{api_version}/scim/ServiceProviderConfig
Default URL: /api/now/scim/ServiceProviderConfig
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
Name | Description |
---|---|
None |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
200 | Successful. The request was successfully processed. |
Response body parameters (JSON)
Name | Description |
---|---|
Standard RFC7643 return results | Method returns results in compliance with the RFC7643 standard. For details see Service Provider Configuration Schema in the RFC7643 specification. |
Example: cURL request
The following example shows how to obtain the SCIM configuration metadata for a ServiceNow instance.
Response
SCIM - GET /scim/Companies
Returns one or more company records from the Company [core_company] table within a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Companies
Default URL: /api/now/scim/Companies
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
200 | Successful. The request was successfully processed. |
400 | Bad Request. A bad request type or malformed request
was detected.
|
401 | Unauthorized. The user credentials are incorrect or have not been passed. |
Response body parameters (JSON)
Example: cURL request
This example shows how to retrieve the first two company records.
Response:
SCIM - GET /scim/Companies/{company_id}
Returns the specified company record from the Company [core_company] table within a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Companies/{company_id}
Default URL: /api/now/scim/Groups/{company_id}
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
company_id | Sys_id of the company record to return. Data type: String |
Name | Description |
---|---|
attributes | Comma-separated list of fields to return in the response. No other fields are
returned. Cannot be used with the excludedAttributes parameter. Data type: String Default: Return all fields unless excludedAttributes is specified. |
excludedAttributes | Comma-separated list of fields to exclude from
the records returned in the response. All other fields are returned. Cannot be used with the attributes parameter. Data type: String Default: Do not exclude any fields. |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Response body parameters (JSON)
Example: cURL request
This example shows how to retrieve a specific company record.
Response
SCIM - GET /scim/CostCenters
Returns one or more cost center records from the Cost Center [cmn_cost_center] table within a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/CostCenters
Default URL: /api/now/scim/CostCenters
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
200 | Successful. The request was successfully processed. |
400 | Bad Request. A bad request type or malformed request
was detected.
|
401 | Unauthorized. The user credentials are incorrect or have not been passed. |
Response body parameters (JSON)
Example: cURL request
This example shows how to retrieve the first two cost center records.
Response
SCIM - GET /scim/CostCenters/{cost_center_id}
Returns the specified cost center record from the Cost Center [cmn_cost_center] table within a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/CostCenters/{cost_center_id}
Default URL: /api/now/scim/CoostCenters/{cost_center_id}
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
cost_center_id | Sys_id of the cost center record to return. Data type: String |
Name | Description |
---|---|
attributes | Comma-separated list of fields to return in the response. No other fields are
returned. Cannot be used with the excludedAttributes parameter. Data type: String Default: Return all fields unless excludedAttributes is specified. |
excludedAttributes | Comma-separated list of fields to exclude from
the records returned in the response. All other fields are returned. Cannot be used with the attributes parameter. Data type: String Default: Do not exclude any fields. |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Response body parameters (JSON)
Example: cURL request
This example shows how to retrieve a specific cost center record.
Response
SCIM - GET /scim/Departments
Returns one or more department records from the Department [cmn_department] table within a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Departments
Default URL: /api/now/scim/Departments
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
200 | Successful. The request was successfully processed. |
400 | Bad Request. A bad request type or malformed request
was detected.
|
401 | Unauthorized. The user credentials are incorrect or have not been passed. |
Response body parameters (JSON)
Example: cURL request
This example shows how to retrieve the first two department records.
Response
SCIM - GET /scim/Departments/{deparment_id}
Returns the specified department record from the Department [cmn_department] table within a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Departments/{department_id}
Default URL: /api/now/scim/Departments/{department_id}
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
department_id | Sys_id of the department record to return. Data type: String |
Name | Description |
---|---|
attributes | Comma-separated list of fields to return in the response. No other fields are
returned. Cannot be used with the excludedAttributes parameter. Data type: String Default: Return all fields unless excludedAttributes is specified. |
excludedAttributes | Comma-separated list of fields to exclude from
the records returned in the response. All other fields are returned. Cannot be used with the attributes parameter. Data type: String Default: Do not exclude any fields. |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Response body parameters (JSON)
Example: cURL request
This example shows how to retrieve a specific department record.
Response:
SCIM - GET /scim/Locations
Returns one or more location records from the Location [cmn_location] table within a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Locations
Default URL: /api/now/scim/Locations
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code | Description |
---|---|
200 | Successful. The request was successfully processed. |
400 | Bad Request. A bad request type or malformed request
was detected.
|
401 | Unauthorized. The user credentials are incorrect or have not been passed. |
Response body parameters (JSON)
Example: cURL request
This example shows how to retrieve a the first two company records.
Response
SCIM - GET /scim/Locations/{location_id}
Returns the specified location record from the Location [cmn_location] table within a ServiceNow instance using the System for Cross-domain Identity Management (SCIM) protocol.
URL format
Versioned URL: /api/now/{api_version}/scim/Locations/{location_id}
Default URL: /api/now/scim/Locations/{location_id}
Supported request parameters
Name | Description |
---|---|
api_version | Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the
latest.
Data type: String |
location_id | Sys_id of the location record to return. Data type: String |
Name | Description |
---|---|
attributes | Comma-separated list of fields to return in the response. No other fields are
returned. Cannot be used with the excludedAttributes parameter. Data type: String Default: Return all fields unless excludedAttributes is specified. |
excludedAttributes | Comma-separated list of fields to exclude from
the records returned in the response. All other fields are returned. Cannot be used with the attributes parameter. Data type: String Default: Do not exclude any fields. |
Name | Description |
---|---|
None |
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header | Description |
---|---|
Accept | Data format of the response
body. Supported types: application/json or
application/scim+json. Default: application/json |
Header | Description |
---|---|
None |
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Response body parameters (JSON)
Example: cURL request
This example shows how to retrieve a specific location record.
Response
On this page
- Resource mapping
- SCIM-specific tables
- Roles and access control lists
- SCIM - DELETE /scim/Groups/{group_id}
- SCIM - GET /scim/Groups
- SCIM - GET /scim/Groups/{group_id}
- SCIM - PATCH /scim/Groups/{group_id}
- SCIM - POST /scim/Groups
- SCIM - PUT /scim/Groups/{group_id}
- SCIM - DELETE /scim/Users/{user_id}
- SCIM - GET /scim/Users
- SCIM - GET /scim/Users/{user_id}
- SCIM - PATCH /scim/Users/{user_id}
- SCIM - POST /scim/Users
- SCIM - PUT /scim/Users/{user_id}
- SCIM - GET /scim/ResourceTypes
- SCIM - GET /scim/ResourceTypes/{ResourceName}
- SCIM - GET /scim/Schemas
- SCIM - GET /scim/Schemas/{SchemaName}
- SCIM - GET /scim/ServiceProviderConfig
- SCIM - GET /scim/Companies
- SCIM - GET /scim/Companies/{company_id}
- SCIM - GET /scim/CostCenters
- SCIM - GET /scim/CostCenters/{cost_center_id}
- SCIM - GET /scim/Departments
- SCIM - GET /scim/Departments/{deparment_id}
- SCIM - GET /scim/Locations
- SCIM - GET /scim/Locations/{location_id}