İçeriğe geç
R-Service R-Service
Документация Р-Сервис

SCIM Groups API

Bu içerik henüz dilinizde mevcut değil.

GET /scim/v2/Groups
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 .

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=10

The SCIM Groups API partially supports filtering as defined in RFC 7644 - Filtering

Filtering is available for the following attributes:

  • displayName
  • externalId
  • meta.lastModified
  • meta.created

The following operators are available:

  • eq Equal to
  • ne Not equal to
  • lt Less than
  • gt Greater 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 /scim/v2/Groups/:id
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 .

POST /scim/v2/Groups

When creating a new group these fields are available.

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

When using PUT the members will be replaced by the members provided in update call, if present.

PUT /scim/v2/Groups/:id

When 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/:id
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

When a group is deleted, all members will be automatically removed from that group.

DELETE /scim/v2/Groups/:id
Status: 204 No Content

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 .

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 members
  • delete : 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.