Skip to main content
Eptura Knowledge Center

Group operations

The Eptura SCIM API supports the following group provisioning operations:

  • Create - This creates new groups.
    • Example 1 - Request to create a group (without members)
    • Example 2 - Request to create a group with members
  • Read - This reads the group's information.
    • Example 1 - Request to get group by groupID
    • Example 2 - Request to get group by filter (display name)
    • Example 3 - Request to get group with member
    • Example 4 - Request to get group with page index
  • Update - This updates the group's attributes.
    • Example 1 - Update with PUT
    • Example 2 - Update with PATCH – Request to update display name
    • Example 3 - Update with PATCH – Request to add members
    • Example 4 - Update with PATCH – Request to remove members
    • Example 5 - Update with PATCH – Request to replace members
  • Delete - This permanently deletes a group.
    • Example - Request to delete a group

In the examples below, replace <Eptura-SCIM-Domain> with your fixed values i.e. scimstage.eptura.cloud

Create


The Create SCIM operation creates new groups based on the values provided.

  • Example 1 - Request to create a group (without members).
  • Example 2 - Request to create a group with members

Example 1 - Request to create a group (without members)

Request
POST "https://<Eptura-SCIM-Domain>/scim/v1/groups"
{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
        ],
    "externalId": "155fcf8c-c7a2-4145-af48-f018a10da50645",
    "displayName": "SCIMGroup",
    "meta": {
        "resourceType": "Group"
    }  
}
Response

HTTP/1.1 201 Created

{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
    ],
    "id": "G603-yyyy-xxx-yyyy",
    "externalId": "155fcf8c-c7a2-4145-af48-f018a10da88645",
    "meta": {
        "resourceType": "Group",
        "created": "2021-03-09T11:52:17.777",
        "location": "https://<Eptura-SCIM-Domain>/scim/v1/groups/G603-yyyy-xxx-yyyy"
    },
    "displayName": "SCIMGroup"
 
}

Example 2 - Request to create a group with members

Request
POST "https://<Eptura-SCIM-Domain>/scim/v1/groups"
{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
        ],
    "externalId": "ExSCIMGroupNew123",
    "displayName": "SCIMGroupNew",
    "meta": {
        "resourceType": "Group"
    },
     "members":[{
    "value":"eb412-xxx-yyyy"
    },
    {
    "value":"eb111-xxx-yyyy-111"
    }] 
}  
}
Response

HTTP/1.1 201 Created

{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
    ],
    "id": "G603-xxx-yyyy",
    "externalId": "ExSCIMGroupNew123",
    "meta": {
        "resourceType": "Group",
        "created": "2021-03-09T11:52:17.777",
        "location": "https://<Eptura-SCIM-Domain>/scim/v1/groups/G603-yyyy-xxx-yyyy"
    },
    "displayName": "SCIMGroupNew"
 
}

Read


The Read SCIM operation is used to get groups from Eptura based on groupId/filter.

  • Example 1 - Request to get group by groupID
  • Example 2 - Request to get group by filter (display name)
  • Example 3 - Request to get group with member
  • Example 4 - Request to get group with page index

Example 1 - Request to get group by groupId

Request
GET "https://<Eptura-SCIM-Domain>/scim/v1/groups/G603-yyyy-xxx-yyyy"
Response

HTTP/1.1 200 OK

{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
    ],
    "id": "G603-yyyy-xxx-yyyy",
    "externalId": "155fcf8c-c7a2-4145-af48-f018a10da88645",
    "meta": {
        "resourceType": "Group",
        "created": "2021-03-09T11:52:17.777",
        "location": "https://<Eptura-SCIM-Domain>/scim/v1/groups/G603-yyyy-xxx-yyyy"
    },
    "displayName": "SCIMGroup"
}

Example 2 - Request to get group by filter (display name)

Request
GET "https://<Eptura-SCIM-Domain>/scim/v1/groups?filter= displayName eq "HR"
Response

HTTP/1.1 200 OK

{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
    ],
    "Resources": [
        {
            "schemas": [
                "urn:ietf:params:scim:schemas:core:2.0:Group"
            ],
            "id": "G539",
            "externalId": "Exgroup539",
            "meta": {
                "resourceType": "Group",
                "created": "2020-07-02T07:59:25.073",
                "location": "https://<Eptura-SCIM-Domain>/scim/v1/groups/G539"
            },
            "displayName": "HR"
        }
    ],
    "totalResults": 1,
    "startIndex": 1,
    "itemsPerPage": 200
}

Example 3 - Request to get group with member

Request
GET "https://<Eptura-SCIM-Domain>/scim/v1/groups?filter= members eq "249"
Response

HTTP/1.1 200 OK

{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
    ],
    "Resources": [
        {
            "schemas": [
                "urn:ietf:params:scim:schemas:core:2.0:Group"
            ],
            "id": "G57-xxx",
            "externalId": "1ad5d0e9-b81e-47f1-8395-eb47ab76fa34",
            "meta": {
                "resourceType": "Group",
                "created": "2020-07-02T07:59:25.073",
                "location": "https://<Eptura-SCIM-Domain>/scim/v1/groups/G57-xxx"
            },
            "displayName": "Integrations"
        }
    ],
    "totalResults": 1,
    "startIndex": 1,
    "itemsPerPage": 200
}

Example 4 - Request to get group with page index

Request
GET "https://<Eptura-SCIM-Domain>/scim/v1/groups?startIndex=1&count=2
Response

HTTP/1.1 200 OK

{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
    ],
    "Resources": [
        {
            "schemas": [
                "urn:ietf:params:scim:schemas:core:2.0:Group"
            ],
            "id": "G111",
            "externalId": "EXMYSCIMTESTGroup1227",
            "meta": {
                "resourceType": "Group",
                "created": "2021-07-28T09:29:06.877",
                "location": "https://<Eptura-SCIM-Domain>/scim/v1/groups/G111-xxx"
            },
            "displayName": "MYSCIMTESTGroup12"
        },
        {
            "schemas": [
                "urn:ietf:params:scim:schemas:core:2.0:Group"
            ],
            "id": "G114",
            "externalId": "7aec8ab6-9c6c-4ce7-94b1-561e28b57608",
            "meta": {
                "resourceType": "Group",
                "created": "2021-07-28T11:28:16.86",
                "location": "https://<Eptura-SCIM-Domain>/scim/v1/groups/G114-yyy"
            },
            "displayName": "group_Seven"
        }
    ],
    "totalResults": 235,
    "startIndex": 1,
    "itemsPerPage": 2
}

For next page

GET "https://<Eptura-SCIM-Domain>/scim/v1/groups?startIndex=3&count=2

Update


The Update SCIM operation updates existing group/members in Eptura based on the values provided. PUT can be used to update all group attributes, while PATCH can be used to update partial group attributes.

  • Example 1 - Update with PUT
  • Example 2 - Update with PATCH – Request to update display name
  • Example 3 - Update with PATCH – Request to add members
  • Example 4 - Update with PATCH – Request to remove members
  • Example 5 - Update with PATCH – Request to replace members

Example 1 - Update with PUT

Request
PUT "https://<Eptura-SCIM-Domain>/scim/v1/groups/G603-yyyy-xxx-yyyy"
{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
        ],
    "externalId": "155fcf8c-c7a2-4145-af48-f018a10da88645",
    "displayName": "SCIMGroup",
    "meta": {
        "resourceType": "Group"
    },
    "members":[{
    "value":"265"
    },
    {
    "value":"267"
    }] 
}
Response

HTTP/1.1 200 OK

{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
    ],
    "id": "G603-yyyy-xxx-yyyy",
    "externalId": "155fcf8c-c7a2-4145-af48-f018a10da88645",
    "meta": {
        "resourceType": "Group",
        "created": "2021-03-09T12:56:46.077",
        "location": "https://<Eptura-SCIM-Domain>/scim/v1/groups/G603-yyyy-xxx-yyyy"
    },
    "displayName": "SCIMGroup"
}

Example 2 - Update with PATCH – Request to update display name

Request
PATCH "https://<Eptura-SCIM-Domain>/scim/v1/groups/G603-xxx-yyyy"
{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
        ],
    "externalId": "155fcf8c-c7a2-4145-af48-f018a10da88649",
    "displayName": "SCIMGroup",
    "meta": {
        "resourceType": "Group"
    }
}
Response

HTTP/1.1 204 No Content

Example 3 - Update with PATCH – Request to add members

Request
PATCH https://<Eptura-SCIM-Domain>/scim/v1/groups/G603-xxx-yyyy
 
{
     "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:PatchOp"
        ],
     "Operations":[
      {
         "op":"add",
         "path":"members",
         "value":[
         {
           "value": "45"
         },
         {
           "value": "48"
         }]
     }
    ]
}
Response

HTTP/1.1 204 No Content

Example 4 - Update with PATCH – Request to remove members

Request
PATCH https://<Eptura-SCIM-Domain>/scim/v1/groups/G603-xxx-yyyy
 
{
     "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:PatchOp"
        ],
     "Operations":[
      {
       "op":"remove",
       "path":"members[value eq \"260\" and value eq \"248\"]"
     }
    ]
}
Response

HTTP/1.1 204 No Content

Example 5 - Update with PATCH – Request to replace members

Request
PATCH "https://<Eptura-SCIM-Domain>/scim/v1/groups/G603-xxx-yyyy"
{
     "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:PatchOp"
        ],
     "Operations":[
      {
         "op":"replace",
         "path":"members",
         "value":[
         {
           "value": "45"
         }]
       }
    ]
}
Response

HTTP/1.1 204 No Content

Delete


The DELETE SCIM operation permanently deletes existing groups from Eptura based on the values provided.

Example - Request to delete a group

Request
DELETE "https://<Eptura-SCIM-Domain>/scim/v1/groups/G603-yyyy-xxx-yyyy"
Response

HTTP/1.1 204 No Content