SCIM Group examples
Operations
List all
List all groups.Groups.
Request
GET http://<your-domain>/webservice/scim2/v1//Group
Response 200 OK
{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:ListResponse"
],
"totalResults": 3,7,
"resources"startIndex": 1,
"Resources": [
{
"organizational": false,
"obsolete": false,
"description": "World",
"meta": {
"location": "http://<domain>/soffid.pat.lab:8080/webservice/scim2/v1/Group/50"83",
"links": {
"members": "http://soffid.pat.lab:8080/webservice/scim2/v1/User?filter=primaryGroup+eq+'world'+or secondaryGroup.group.name+eq+'world'",
"administrators": "http://soffid.pat.lab:8080/webservice/scim2/v1/RoleAccount?filter=group.name+eq+'world'"
},
"resourceType": "Group"
},
"quota": "0",
"schemas": [
"urn:soffid:com.soffid.iam.api.Group"
],
"name": "world",
"obsolete": false,
"description": "World Original",
"attributes": {},
"id": 5083
},
{
"organizational": false,
"obsolete": false,
"description": "Entrprise",
"meta": {
"location": "http://<domain>/soffid.pat.lab:8080/webservice/scim2/v1/Group/53"87",
"links": {
"members": "http://soffid.pat.lab:8080/webservice/scim2/v1/User?filter=primaryGroup+eq+'enterprise'+or secondaryGroup.group.name+eq+'enterprise'",
"administrators": "http://soffid.pat.lab:8080/webservice/scim2/v1/RoleAccount?filter=group.name+eq+'enterprise'"
},
"resourceType": "Group"
},
"quota": "0",
"schemas": [
"urn:soffid:com.soffid.iam.api.Group"
],
"name": "enterprise",
"obsolete": false,
"description": "Enterprise",
"parentGroup": "world",
"attributes": {},
"id": 5387
},
{
"organizational": false,
"obsolete": false,
"description": "Enterprise Administrators",
"meta": {
"location": "http://<domain>/webservice/scim2/v1/Group/56",
"resourceType": "Group"
},
"quota": "0",
"name": "admingroup",
"parentGroup": "enterprise",
"attributes": {},
"id": 56
}......
]
}
List by id
List a group by its id (primary key). For example the first group of the list.
GET http://<domain>/webservice/scim2/v1/Group/50
HTTP 200
{
"organizational": false,
"obsolete": false,
"description": "World",
"meta": {
"location": "http://<domain>/webservice/scim2/v1/Group/50",
"resourceType": "Group"
},
"quota": "0",
"name": "world",
"attributes": {},
"id": 50
}
List by filter
List all groups with a filter expression.
It is allowed to use pagination and sort the information, for more information visit SCIM Query parameters page.
Request
For example,instance, onefilter can searchall groups betweenthat thecontain ids"world" 50on (included)field and 56 (excluded).name
GET http://<your-domain>/soffid/webservice/scim2/v1/Group?filter=idname geco 50world
Response 200 OK
{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:ListResponse"
],
"totalResults": 2,
"resources"startIndex": 1,
"Resources": [
{
"organizational": "false",
"obsolete": "false",
"description": "World",false,
"meta": {
"location": "http://<domain>/soffid.pat.lab:8080/webservice/scim2/v1/Group/50"83",
"links": {
"members": "http://soffid.pat.lab:8080/webservice/scim2/v1/User?filter=primaryGroup+eq+'world'+or secondaryGroup.group.name+eq+'world'",
"administrators": "http://soffid.pat.lab:8080/webservice/scim2/v1/RoleAccount?filter=group.name+eq+'world'"
},
"resourceType": "Group"
},
"quota": "0",
"schemas": [
"urn:soffid:com.soffid.iam.api.Group"
],
"name": "world",
"obsolete": false,
"description": "World Original",
"attributes": {},
"id": 5083
},
{
"organizational": "false",
"obsolete": "false",
"description": "Entrprise",false,
"meta": {
"location": "http://<domain>/soffid.pat.lab:8080/webservice/scim2/v1/Group/53"485118",
"links": {
"members": "http://soffid.pat.lab:8080/webservice/scim2/v1/User?filter=primaryGroup+eq+'world2'+or secondaryGroup.group.name+eq+'world2'",
"administrators": "http://soffid.pat.lab:8080/webservice/scim2/v1/RoleAccount?filter=group.name+eq+'world2'"
},
"resourceType": "Group"
},
"quota": "0",
"schemas": [
"urn:soffid:com.soffid.iam.api.Group"
],
"name": "enterprise"world2",
"parentGroup"obsolete": false,
"description": "world"World Modified",
"attributes": {},
"id": 53485118
}
]
}
Query by id
Retrieve by its id (primary key).
Request
GET http://<your-domain>/soffid/webservice/scim2/v1/Group/83
Response 200 OK
{
"organizational": false,
"meta": {
"location": "http://soffid.pat.lab:8080/webservice/scim2/v1/Group/83",
"links": {
"members": "http://soffid.pat.lab:8080/webservice/scim2/v1/User?filter=primaryGroup+eq+'world'+or secondaryGroup.group.name+eq+'world'",
"administrators": "http://soffid.pat.lab:8080/webservice/scim2/v1/RoleAccount?filter=group.name+eq+'world'"
},
"resourceType": "Group"
},
"quota": "0",
"schemas": [
"urn:soffid:com.soffid.iam.api.Group"
],
"name": "world",
"obsolete": false,
"description": "World Original",
"attributes": {},
"id": 83
}
Create
One canTo create a group.
Request
POST http:///<your-domain>/soffid/webservice/scim2/v1/GroupGroup/
JSON
{
user"schemas": JSON[
in"urn:soffid:com.soffid.iam.api.Group"
the body of the request:
{],
"name": "EngineeringTeam",
"description": "Enterprise engineering team",
"parentGroup": "world",
"quota":}
Response 201 Created
{
"organizational": false,
"obsolete": false
}
HTTP 201
{
"organizational": "false",
"obsolete": "false",
"description": "Enterprise engineering team",
"meta": {
"location": "http://<domain>/soffid.pat.lab:8080/webservice/scim2/v1/Group/15445"1976559",
"resourceType": "Group"
},
"quota": "0",
"schemas": [
"urn:soffid:com.soffid.iam.api.Group"
],
"name": "EngineeringTeam",
"obsolete": false,
"description": "Enterprise engineering team",
"parentGroup": "world",
"attributes": {},
"id": 154451976559
}
Update partial
Update only of the attributes with changes, only these attributes will be updated in the group,updated, the rest will havemaintain the same value.
For example we will add value to a new attribute.
Request
PATCH http://<your-domain>/soffid/webservice/scim2/v1/Group/154451976559
JSON
{
user"Operations": JSON in the body of the request:[
{
"driveLetter"op": "G"replace",
"path": "description",
"value": "Enterprise Engineering Group"
},
{
"op": "replace",
"path": "type",
"value": "CC"
}
HTTP]
}
Response 200 OK
{
"organizational": "false",
"driveLetter": "G",
"obsolete": "false",
"description": "Enterprise engineering team",false,
"meta": {
"location": "http://<domain>/soffid.pat.lab:8080/webservice/scim2/v1/Group/15445"1976559",
"links": {
"members": "http://soffid.pat.lab:8080/webservice/scim2/v1/User?filter=primaryGroup+eq+'EngineeringTeam'+or secondaryGroup.group.name+eq+'EngineeringTeam'",
"administrators": "http://soffid.pat.lab:8080/webservice/scim2/v1/RoleAccount?filter=group.name+eq+'EngineeringTeam'"
},
"resourceType": "Group"
},
"quota": "0",
"schemas": [
"urn:soffid:com.soffid.iam.api.Group"
],
"name": "EngineeringTeam",
"obsolete": false,
"description": "Enterprise Engineering Group",
"parentGroup": "world",
"attributes": {},
"id": 154451976559,
"type": "CC"
}
Update all
This operation replaces all values in the group. For example we will update driveLetter.
- Note that the attribute id is required to confirm that the resource "...Group/<id>" is the same that the JSON group.
- Note that all the attributes not included in the request will be cleared in the group and their data will be lost.
- Note that not all the attributes are updatable, for
example,example tag meta, avoid these tags. For more information see Resource data model
Request
PUT http://<your-domain>/soffid/webservice/scim2/v1/Group/154451976559
JSON
{
user"schemas": JSON in the body of the request:
{["urn:soffid:com.soffid.iam.api.Group"],
"id": 15445,1976559,
"driveLetter"name": "A",
"organizational": "false",
"obsolete": "false"EngineeringTeam",
"description": "Enterprise engineering team",
"quota": "0",
"name": "EngineeringTeam",
"parentGroup": "world",
"attributes": {}
}
Response 200 OK
{
"organizational": "false",
"driveLetter": "A",
"obsolete": "false",
"description": "Enterprise engineering team",false,
"meta": {
"location": "http://<domain>/soffid.pat.lab:8080/webservice/scim2/v1/Group/15445"1976559",
"links": {
"members": "http://soffid.pat.lab:8080/webservice/scim2/v1/User?filter=primaryGroup+eq+'EngineeringTeam'+or secondaryGroup.group.name+eq+'EngineeringTeam'",
"administrators": "http://soffid.pat.lab:8080/webservice/scim2/v1/RoleAccount?filter=group.name+eq+'EngineeringTeam'"
},
"resourceType": "Group"
},
"quota": "0",
"schemas": [
"urn:soffid:com.soffid.iam.api.Group"
],
"name": "EngineeringTeam",
"obsolete": false,
"description": "Enterprise engineering team",
"parentGroup": "world",
"attributes": {},
"id": 154451976559
}
Delete
Delete a group is not possible in this version, you must disable it with a PATCH operation.group.
Please note that after this
delete,delete action, you will need to create again the groupmust be updatedto use it in thefollowingnext examples.
Request
DELETE http://<your-domain>/webservice/scim2/v1/Group/154451976559
Response 500204 {No "schemas":Content
204 "urn:ietf:params:scim:api:messages:2.0:Error"No ],Content
Error "Theresponse
For operationmore isinfomation notabout allowederror inresponse thisvisit version, the alternative is to disable the group using a PATCH or PUT",
"status": "500"
}
PATCH http:https://<domain>/webservice/scim/Group/15445
Put the user JSON in the body of the request:
{
"obsolete": true
}
HTTP 200
{
"organizational": "false",
"driveLetter": "A",
"obsolete": "true",
"description": "Enterprise engineering team",
"meta": {
"location": "http://<domain>/webservice/scim2/v1/Group/15445",
"resourceType": "Group"
},
"quota": "0",
"name": "EngineeringTeam",
"parentGroup": "world",
"attributes": {},
"id": 15445
}bookstack.soffid.com/link/116#bkmrk-error-response