SCIM API for User SearchSCIM API for User Search
Use the SCIM API to find a user.
Authentication Authentication
Authorization: Bearer <Client Secret>
Use the copied Client Secret key as the Authorization key value.
Search Users with GETSearch Users with GET
You can filter for matching results by performing a GET and providing query parameter.
Request RequirementsRequest Requirements
Method | Request URL | Response Content Type | Response Body | Response Codes |
---|---|---|---|---|
GET |
<Base URI>/Users <Base URI>/Users/id |
application/scim+json |
User details | 200, 400, 401 |
Example Request DataExample Request Data
GET < Base URI > /Users?filter= username+eq+"userName" Authorization: Bearer 29da0602f6db1ed033aa91d644ce4d70bdf3ab58 Content-Type: application/scim + json
ResponseResponse
The API returns the user details.
Example Response BodyExample Response Body
{ "schemas": [ "urn:ietf:params:scim:api:messages:2.0:ListResponse" ], "totalResults": 1, "Resources": [{ "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:User" ], "id": "0189446a-4671-16ed-99d6-fe4917dc67f6", "externalId": "scim-user5-external", "meta": { "resourceType": "User", "created": "2023-01-06T06:02:58Z", "lastModified": "2023-01-06T06:02:58Z" }, "userName": "clouduser5", "nickName": "Joe", "userType": "Temp", "preferredLanguage": "English", "locale": "us-en", "active": true, "emails": [{ "value": "Blair.Schmeler@yahoo.com", "type": "work" }, { "value": "scim-user2-home@rsavia.com", "type": "home" }, { "value": "scim-user2-other@rsavia.com", "type": "other" } ], "phoneNumbers": [{ "value": "888888890", "type": "mobile" }, { "value": "888888889", "type": "work" }, { "value": "888888891", "type": "home" }, { "value": "888888938", "type": "fax" }, { "value": "888888189", "type": "pager" }, { "value": "888888992", "type": "other" } ], "addresses": [{ "formatted": "BKR street Indiana,US", "streetAddress": "MDP LYT", "locality": "Brooklyn", "region": "Bengaluru", "postalCode": "780094", "country": "US", "type": "work", "primary": true }, { "formatted": "MDP LYT,Bangalore,India", "streetAddress": "MDP LYT", "locality": "Marathalli", "region": "Bengaluru", "postalCode": "560037", "country": "India", "type": "other", "primary": false } ] } ], "startIndex": 1, "itemsPerPage": 20 }
Search Users with GET Parameters Search Users with GET Parameters
The following table describes the user search attributes used for the request parameters:
Request Parameter | Description |
---|---|
filter | User record filtration based on attributes |
startIndex | Starting index of paginated record |
count | Expected number of records to be returned |
sortBy |
List of records order by attribute name The following list of attributes are allowed for this parameter: userName name.givenName name.familyName emails.work.value |
sortOrder | Way of ordering ascending or descending |
attributes | Attributes to be returned in response payload |
User Search Filter Parameters User Search Filter Parameters
The search endpoints allow you to filter the rows in the result. To do so, use the filter parameter. You can use the NOT, AND, and OR operators between filters and use parentheses between conditions. The following table describes the user search attributes used for the request parameters:
Request Parameter | Description |
---|---|
userName |
Custom logon name of the user |
name.givenName | First name of the user |
name.familyName | Last name of the user |
emails.work.value | Work email address of the user |
externalId | External user ID of the user |
active | The user status |
meta.lastModified | The date for changes made to the user |
Response Property DescriptionsResponse Property Descriptions
See SCIM Attributes.
Response CodesResponse Codes
The following table shows response codes for this API.
Code | Description |
---|---|
200 | OK |
400 |
Error message examples:
|
401 |
Unauthorized |
404 |
Not Found Error message example:
|
Search Users with POSTSearch Users with POST
You can filter for matching resources by performing a POST against the special .search endpoint and providing a filter query parameter.
Request RequirementsRequest Requirements
Method | Request URL | Response Content Type | Response Body | Response Codes |
---|---|---|---|---|
POST |
<Base URI>/.search
|
application/scim+json | User details | 200, 400, 401 |
Example Request DataExample Request Data
POST <Base URI>/scim/v2/{{scimAppID}}/.search
Authorization: Bearer 29da0602f6db1ed033aa91d644ce4d70bdf3ab58
Content-Type: application/scim+json
{ "schemas": ["urn:ietf:params:scim:api:messages:2.0:SearchRequest"], "startIndex": 1, "count": 10, "filter": "userName eq \"Joanne.Halvorson75\"", "sortBy": "userName", "attributes": ["displayName", "userName", "name.givenName", "name.familyName"] }
ResponseResponse
The API returns the user details.
Example Response BodyExample Response Body
{ "schemas": [ "urn:ietf:params:scim:api:messages:2.0:ListResponse" ], "totalResults": 1, "Resources": [{ "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:User" ], "id": "0147b00f-9fd2-c1a1-8b4c-910d6cc24cdc", "userName": "Joanne.Halvorson75", "name": { "familyName": "Sporer", "givenName": "Millie" }, "displayName": "scim-user3" } ], "startIndex": 1, "itemsPerPage": 10 }
Pagination Pagination
All search endpoints allow you to paginate your search. When searching, use the startIndex and count parameters to control the size of the page, the result will contain a totalResults attribute to allow you to compute the number of pages. This API is used to retrieve a paginated set of users with an optional filter.
Example Request DataExample Request Data
GET /Users?startIndex=1&count=10
Host: example.com
Accept: application/scim+json
Authorization: Bearer h480djs93hd8
The response to the query above returns metadata regarding paging
similar to the following example (actual resources removed for
brevity):
{ "totalResults": 20, "itemsPerPage": 10, "startIndex": 1, "schemas": ["urn:ietf:params:scim:api:messages:2.0:ListResponse"], "Resources": [{ ... } ] }