SCIM Groups API
SCIM Groups API
Section titled “SCIM Groups API”List group
Section titled “List group”GET /scim/v2/GroupsResponse
Section titled “Response”Status: 200 OK{ "schemas": [ "urn:ietf:params:scim:api:messages:2.0:ListResponse" ], "totalResults": 1, "itemsPerPage": 25, "startIndex": 1, "Resources": [ { "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:Group" ], "id": "1", "externalId": "G1", "displayName": "Widget Data Center", "groupType": "Organization", "meta": { "resourceType": "Group", "created": "2018-04-17T11:05:29-05:00", "lastModified": "2018-04-17T11:05:29-05:00", "location": "https://<account>.r-service.tech/scim/v2/Groups/1" } } ]}The response contains these fields .
Pagination
Section titled “Pagination”The SCIM Groups API supports filtering as defined in RFC 7644 - Pagination
startIndex
[integer]
, default:
1
— The 1-based index of the first query result.
count
[integer]
, default:
25
— Non-negative integer between 1 and 25 indicating the desired maximum number of results per page, e.g., 10.
Examples:
GET /scim/v2/Groups?startIndex=10&count=10Filtering
Section titled “Filtering”The SCIM Groups API partially supports filtering as defined in RFC 7644 - Filtering
Filtering is available for the following attributes:
displayNameexternalIdmeta.lastModifiedmeta.created
The following operators are available:
eqEqual toneNot equal toltLess thangtGreater than
The logical operators
and
and
or
are also supported.
Examples:
GET /scim/v2/Groups?filter=displayName eq "Skimming Corp"GET /scim/v2/Groups?filter=displayName ne "Skimming Corp"GET /scim/v2/Groups?filter=externalId eq "SCIM1"GET /scim/v2/Groups?filter=meta.lastModified lt "2018-04-19T13:47:13Z"GET /scim/v2/Groups?filter=meta.created gt "2018-04-19T13:47:13Z"GET /scim/v2/Groups?filter=meta.lastModified gt "2018-04-19T13:47:13Z" and displayName eq "Skimming Corp"GET /scim/v2/Groups?filter=displayName eq "Skimming Corp" or displayName eq "Skim Holland"Get a single group
Section titled “Get a single group”GET /scim/v2/Groups/:idResponse
Section titled “Response”Status: 200 OK{ "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:Group" ], "id": "1", "externalId": "G1", "displayName": "Widget Data Center", "groupType": "Organization", "members": [ { "display": "card.skimmer@scim.com", "value": "1", "$ref": "https://<account>.r-service.tech/scim/v2/Users/1" }, { "display": "jane.doe@scim.com", "value": "2", "$ref": "https://<account>.r-service.tech/scim/v2/Users/2" } ], "meta": { "resourceType": "Group", "created": "2018-04-17T11:05:29-05:00", "lastModified": "2018-04-17T11:05:29-05:00", "location": "https://<account>.r-service.tech/scim/v2/Groups/1" }}The response contains these fields .
Create a group
Section titled “Create a group”POST /scim/v2/GroupsWhen creating a new group these fields are available.
Response
Section titled “Response”Status: 201 Created{ "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:Group" ], "id": "5", "...": "..."}The response contains all fields of the created group and is similar to the response in Get a single group
Update a group
Section titled “Update a group”When using
PUT
the
members
will be replaced by the members provided in update call, if present.
PUT /scim/v2/Groups/:idWhen using
PATCH
the members provided in update call, if present, will be added to the list of members of the group. If the
delete
operation is provided in the member hash, the member is removed from the list of members of the group. It behaves as described
in this draft spec
.
PATCH /scim/v2/Groups/:idResponse
Section titled “Response”Status: 200 OK{ "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:Group" ], "id": "5", "...": "..."}The response contains all fields of the created group and is similar to the response in Get a single group
Delete a group
Section titled “Delete a group”When a group is deleted, all members will be automatically removed from that group.
DELETE /scim/v2/Groups/:idResponse
Section titled “Response”Status: 204 No ContentList response fields
Section titled “List response fields”Definitions taken from RFC 7644 - List Response
totalResults
Readonly [integer] — The number of results.
itemsPerPage
Readonly [integer] — The number of results per page.
startIndex
Readonly [integer] — The offset, or the number of results skipped.
Resources
Readonly [array] — A multi-valued list of complex objects containing the requested resources containing these fields .
Fields
Section titled “Fields”As defined in the Group Schema
displayName
[string] — A human-readable name for the Group that is unique to the service provider.
groupType
[hash] — specific for R-Service The type of group. Typical values used might be ‘Organization’ or ‘Site’ but any string value may be used.
members
[array] — A list of members of the Group.
members.value
[string] — Identifier of the member of this Group.
members.$ref
[uri] — The URI corresponding to a SCIM resource that is a member of this Group.
members.operation
[string]
, default:
add
— Only available on
PATCH
update
. Valid values are:
add: Add the member to the group membersdelete: Delete the member from the group members
members.type
[string] — specific for R-Service A label indicating the type of resource, e.g., ‘User’ or ‘Group’.
meta.location
[string] — The URI of this resource type.
meta.resourceType
[string] — The name of the resource type.