Groups Endpoint
This endpoint allows groups to be created, edited or deleted. In Tagetik, the concept of a group is linked to reference users: each user is a group and the users inheriting from them represent the members of the group
<api-root>/scim/v2/Groups
Operations
| Operation |
Http Method |
Body of the request |
Path variable |
Query string parameters |
Body of the answer |
HTTP response body |
Response Status (SCIM Exception) |
| Create |
POST |
Group |
- |
- |
Group |
201 (Created) |
405 (Method not permitted) 409 (Conflict) |
| Read |
GET |
- |
groupId |
- |
Group |
200 (OK) |
404 (Not found) |
| Delete |
DELETE |
- |
groupId |
- |
- |
200 (OK) |
404 (Not found) |
| Search |
GET |
- |
- |
filter sortBy sortOrder startIndex count excludedAttributes=members (all parameters are optional) |
Group List |
200 (OK) |
400 (Invalid request) 405 (Method not permitted) |
| Update |
PATCH |
PatchRequest |
groupId |
- |
Group |
200 (OK) |
400 (Invalid request) 404 (Not found) |
SCIM exceptions
Examples of invocation
| HTTP Status |
Descriptions |
| 400 (Invalid request) |
It occurs when the request does not match the service specification, e.g. by invoking the 'search' method when the filter is not well defined (wrong parameters/syntax errors) or by invoking the 'update' method when the Patch request is invalid. |
| 404 (Not found) |
It occurs when the requested resource is non-existent; for example, if an attempt is made to replace, update, search or delete a group but there is no group (reference user) that matches the ID code used. |
| 405 (Method not permitted) |
It occurs when the HTTM method is not permitted for the requested endpoint or if the serialised object supplied does not correspond to the object expected by that method. For instance, when an incorrect group object is provided in the body of the request. |
| 409 (Conflict) |
This occurs when, for example, a request is made to create a new group using an ID code of a group/already in use in the system. |
Supported standard SCIM fields
The following table shows the standard SCIM group fields supported.
| SCIM User Field |
Supported cardinality (collection only) |
Supported Values |
| id |
- |
string |
| displayName |
- |
string |
| members |
n |
"value" elements |
| value |
1 |
string (id user) |
Response Additional fields
| SCIM User Field |
SCIM User Field |
| totalResults |
integer |
| startIndex |
integer |
| Resources |
collection of all requested groups |
Examples
| Show list of all groups |
|
| Method |
GET |
| URL |
<api-root>/scim/v2/Groups |
| Body |
- |
| Note |
|
| Get single group |
|
| Method |
GET |
| URL |
<api-root>/scim/v2/Groups/MYGROUP |
| Body |
|
| Example answer |
{ "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:Group" ], "id": "MYGROUP", "displayName": "MYGROUPdesc", "members": [ { "value": "NEW_" }, { "value": "NEW_USER" } ] } |
| Note |
This request returns the members of an existing MYGROUP group |
| Create new group |
|
| Method |
POST |
| URL |
<api-root>/scim/v2/Groups |
| Body |
{ "id": "MYGROUP", "displayName": "MYGROUP_desc", "members": [ { "value": "NEW_USER" } ] } |
| Note |
This request adds a MYGROUP group and sets the member "NEW_USER" |
| Apply changes to existing group |
|
| Method |
PATCH |
| URL |
<api-root>/scim/v2/Groups/MYGROUP |
| Body |
{ "Operations": [ { "op": "add", "path": "members", "value": [ { "value": "NEW" }, { "value": "NEW_USER" } ] } ] } |
| Note |
This request adds the members 'NEW' and 'NEW_USER' to the existing group 'MYGROUP'. To replace existing members, use ' "op":"replace" instead of "op":"add". |
| Apply changes to existing group |
|
| Method |
PATCH |
| URL |
<api-root>/scim/v2/GroupsUsers/MYGROUP |
| Body |
{ "Operations": [ { "op": "remove", "path": "members[value eq \"NEW\"]" } ] } |
| Note |
This request removes the member 'NEW' from the existing MYGROUP group. Supported operators are 'eq' and 'ne'. members 'NEW' and 'NEW_USER' the reference user 'REF_USER_CODE' to the existing group 'MYGROUPUSER'. |
| Delete group |
|
| Method |
DELETE |
| URL |
<api-root>/scim/v2/Groups/MYGROUP |
| Body |
- |
| Note |
This request deletes the MYGROUP group. |