SCIM User
Prerequisites#
Client credentials access tokens are required in Authorization header to make SCIM APIs. Please refer here to get access tokens.
Create User#
Endpoint#
POST /passportsvc/api/v1/scim/UsersRequest#
User body example#
{ "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:User" ], "userName": "[email protected]", "emails": [ { "value": "[email protected]", "type": "work", "primary": true } ], "displayName": "john smith", "active": true, "name": { "givenName": "john", "familyName": "smith" }, "locale": "en-US"}Response#
Response codes#
| Code | Description |
|---|---|
201 | Created |
Response data example#
{ "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:User" ], "userName": "[email protected]", "emails": [ { "value": "[email protected]", "type": "work", "primary": true } ], "displayName": "john smith", "active": true, "name": { "givenName": "john", "familyName": "smith" }, "locale": "en-US", "id": "bd1db3bd-f2c0-4ca7-81d1-e60a8215f299"}Get User by filter#
Endpoint#
GET /passportsvc/api/v1/scim/Users?filter=userName eq "[email protected]"Request#
Path parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
filter | String | To target users, pass text to search for a given property, for example, filter=userName eq "[email protected]". Otherwise, all users return. | Optional |
Pagination: Please refer here https://datatracker.ietf.org/doc/html/rfc7644#section-3.4.2.4
Path parameter example#
GET /passportsvc/api/v1/scim/Users?filter=userName eq "[email protected]"Response#
Response codes#
| Code | Description |
|---|---|
200 | Success |
Response data example#
{ "schemas": [ "urn:ietf:params:scim:api:messages:2.0:ListResponse" ], "totalResults": 1, "startIndex": 1, "itemsPerPage": 5, "resources": [ { "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:User" ], "userName": "[email protected]", "emails": [ { "value": "[email protected]", "type": "work", "primary": true } ], "displayName": "john smith", "active": true, "name": { "givenName": "john", "familyName": "smith" }, "locale": "en-US", "id": "bd1db3bd-f2c0-4ca7-81d1-e60a8215f299" } ]}Get User by filter - Zero results#
Endpoint#
GET /passportsvc/api/v1/scim/Users?filter=userName eq "non existent user"Request#
Path parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
filter | String | To target users, pass text to search for a given property, for example, filter=userName eq "[email protected]". Otherwise, all users return. | Optional |
Path parameter example#
GET /passportsvc/api/v1/scim/Users?filter=userName eq "[email protected]"Response#
Response codes#
| Code | Description |
|---|---|
200 | Success |
Response data example#
{ "schemas": ["urn:ietf:params:scim:api:messages:2.0:ListResponse"], "totalResults": 0, "Resources": [], "startIndex": 1, "itemsPerPage": 5}Get User#
Endpoint#
GET /passportsvc/api/v1/scim/Users/{id}Request#
Path parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
id | String | The user's id. | Optional |
Response#
Response codes#
| Code | Description |
|---|---|
200 | Success |
Response#
{ "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:User" ], "userName": "[email protected]", "emails": [ { "value": "[email protected]", "type": "work", "primary": true } ], "displayName": "john doe", "active": true, "name": { "givenName": "john", "familyName": "doe" }, "locale": "en-US", "id": "0f4ebaa0-e935-4909-bc09-1582238626ee"}Delete User#
Endpoint#
DELETE /passportsvc/api/v1/scim/Users/{id}Request#
Path parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
id | String | The user's id. | Optional |
Response#
Response codes#
| Code | Description |
|---|---|
204 | Success |
Response data#
None
Update User#
Endpoint#
PUT /passportsvc/api/v1/scim/Users/{id}Request#
Path parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
id | String | The user's id. | Optional |
User body example#
{ "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], "id": "0f4ebaa0-e935-4909-bc09-1582238626e", "userName": "[email protected]", "name": { "givenName": "john", "familyName": "doe" }, "emails": [{ "primary": true, "value": "[email protected]", "type": "work", "display": "[email protected]" }]}Response#
Response codes#
| Code | Description |
|---|---|
200 | Success |
Response body example#
{ "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:User" ], "userName": "[email protected]", "emails": [ { "value": "[email protected]", "type": "work", "primary": true } ], "displayName": "john doe", "active": true, "name": { "givenName": "john", "familyName": "doe" }, "locale": "en-US", "id": "0f4ebaa0-e935-4909-bc09-1582238626ee"}Update User (Multi-valued properties)#
Endpoint#
PATCH /passportsvc/api/v1/scim/Users/{id}Request#
Path parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
id | String | The user's id. | Optional |
Body#
{ "schemas": [ "urn:ietf:params:scim:api:messages:2.0:PatchOp" ], "Operations": [ { "op": "Replace", "path": "name.familyName", "value": "doe" }, { "op": "Replace", "path": "active", "value": false }, { "op": "Replace", "path": "name.givenName", "value": "john" }, { "op": "Replace", "path": "userName", "value": "[email protected]" }, { "op": "Replace", "path": "emails[type eq \"work\"].value", "value": "[email protected]" } ]}Response#
Response codes#
| Code | Description |
|---|---|
200 | Success |
Response data example#
{ "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:User" ], "userName": "[email protected]", "emails": [ { "value": "[email protected]", "type": "work", "primary": true } ], "displayName": "john doe", "active": true, "name": { "givenName": "john", "familyName": "doe" }, "locale": "en-US", "id": "0f4ebaa0-e935-4909-bc09-1582238626ee"}