Get inspired at ContentCon. Learn more and register today
Get inspired at ContentCon. Learn more and register today
Contentstack.comAcademyLogin
CS-log-dark.svgCS-log-dark.svg
  • Changelog
  • APIs
  • SDKs

Platform

  • Solution Center
  • Marketplace
  • Changelog
  • Developers & IT
  • Business users
  • Digital leaders
  • Developer Fast Track
  • Plans & Pricing

Solutions

  • Retail
  • Travel and tourism
  • Financial services
  • Technology
  • Manufacturing
  • E-commerce
  • Localization
  • Personalization
  • Portals and knowledge bases

Resources

  • Academy
  • Docs
  • Contentstack for Developers
  • Product updates
  • Contentstack on Contentstack
  • Blog
  • Insights and analyst reports
  • Webinars
  • Podcasts
  • Glossary
  • Content generative library
  • Community
  • Headless CMS
  • Composable AXP
  • Personalization
  • CDP

Customers

  • Case Studies
  • Customer Care
  • Contentstack Experience Awards
  • Customer support

Partners

  • Overview
  • Find a partner
  • Login

Company

  • About us
  • News
  • Customer support portal
  • Contact

Social

  • Facebook
  • LinkedIn
  • Instagram
  • GitHub
  • YouTube
  • Discord
  • X
LegalTermsPrivacyTrust Center

Cookie settings

Copyright © 2026 Contentstack Inc. All rights reserved.
/
  1. Home
  2. APIs
  3. System for Cross-domain Identity Management (SCIM)
  4. Groups

Groups

markdownView as Markdown

Use the SCIM API requests to create groups, manage users within it, and perform other operations on groups.

Create Group

POSThttps://auth-api.contentstack.com/scim/v2.0/organizations/{organization_uid}/Groups

The Create Group request lets you create a group in your IdP client and add users to it.

In the "Request Body" section, you need to pass the ID of the user in Contentstack as the value. Refer to the Get All Users request to get the user ID. Also, provide a name to the group in the displayName key.

Sample Request
123
{
  "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
  "displayName": "<
Sample Response
Status|200 OK
12345678910
{
  "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
  "id": "blt*********",
  "meta": {
      "resourceType": "Group",
      "created": "2020-11-24T05:48:14.060Z",
      "lastModified": "2011-05-13T04:42:34Z",
      "location": "http://auth-api.contentstack.com/scim/v2/organizations/blt**********/groups/blt**********"
  },
  "displayName": "

Get All Groups

GEThttps://auth-api.contentstack.com/scim/v2.0/organizations/{organization_uid}/Groups

The Get All Groups request fetches details of all groups that exist in the IdP client account.

Sample Response
Status|200 OK
1234567891011121314151617181920212223
{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:ListResponse"
  ],
  "totalResults": 1,
  "startIndex": 2,
  "itemsPerPage": 100,
  "Resources": [
    {
      "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
      ],
      "id": "blt2**********",
      "meta": {
        "resourceType": "Group",
        "created": "2020-11-24T05:48:14.060Z",
        "location": "http://localhost:8000/scim/v2/organizations/blta********/groups/blt2********"
      },
      "displayName": "MyGroup",
      "active": true,
      "members": [
        {
          "value": "

Get Single Group By ID

GEThttps://auth-api.contentstack.com/scim/v2.0/organizations/{organization_uid}/Groups/{group_id}

The Get Single Group by ID request fetches details of a single group that exists in the IdP client account.

Sample Response
Status|200 OK
12345678910111213141516171819
{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:ListResponse"
  ],
  "totalResults": 1,
  "startIndex": 1,
  "itemsPerPage": 100,
  "Resources": [
    {
      "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
      ],
      "id": "blt**********",
      "meta": {
        "resourceType": "Group",
        "created": "2020-11-24T05:48:14.060Z",
        "location": "http://auth-api.contentstack.com/scim/v2/organizations/blta6********/groups/blt22**********"
      },
      "displayName": "

Get Single Group By Display Name

GEThttps://auth-api.contentstack.com/scim/v2.0/organizations/{organization_uid}/Groups?filter=displayName Eq "<<group_name>>"

The Get Single Group By Display Name returns comprehensive details of a specific group that exists in the IdP client account, which is mapped in your Contentstack organization.

You need to pass the displayname as a query parameter.

Sample Response
Status|200 OK
1234567891011121314
{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
    ],
    "totalResults": 1,
    "startIndex": 1,
    "itemsPerPage": 100,
    "Resources": [
        {
            "schemas": [
                "urn:ietf:params:scim:schemas:core:2.0:Group"
            ],
            "id": "601**************",
            "displayName": "<

Add Users to Group

PATCHhttps://auth-api.contentstack.com/scim/v2.0/organizations/{organization_uid}/Groups/{group_id}

The Add Users to Group request adds the user(s) to a group.

The specified user will then have the permissions (at the stack level and at the organization level) that are specific to that group.

In the "Request Body", you need to pass the ID of the user in the value key.

Sample Request
1234567891011
{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
    {
      "op": "add",
      "path": "members",
      "value": [
        {
          "value": "
Sample Response
Status|200 OK
12345678910
{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
    ],
    "id": "60************",
    "displayName": "mygroup",
    "members": [
        {
            "value": "blt*********",
            "display": "

Rename Group

PATCHhttps://auth-api.contentstack.com/scim/v2.0/organizations/{organization_uid}/Groups/{group_id}

The Rename Group request lets you change the name of a group.

In the "Request Body", you need to pass a new name for the group in the value key.

Sample Request
123456789
{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
    {
      "op": "replace",
      "path": "displayName",
      "value": "<
Sample Response
Status|200 OK
123456
{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
    ],
    "id": "602***************",
    "displayName": "<

Remove All Users from Group

PATCHhttps://auth-api.contentstack.com/scim/v2.0/organizations/{organization_uid}/Groups/{group_id}

The Remove All Users from Group request removes all the existing users from a group.

This also revokes admin access for users with admin roles, unless those users have been assigned the admin role by some other group. The same logic applies to stack roles as well.

Sample Request
1234567891011
{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
    {
      "op": "remove",
      "path": "members"
    }
  ]
}
Sample Response
Status|200 OK
123456
{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
    ],
    "id": "602***************",
    "displayName": "<

Remove User from Group

PATCHhttps://auth-api.contentstack.com/scim/v2.0/organizations/{organization_uid}/Groups/{group_id}

The Remove User from Group request removes a user from a group.

In the "Request Body", you need to pass the ID of the user you want to remove from the group. Refer to the Get All Users request to get the ID.

This also revokes admin access for the user with an admin role, unless that user has been assigned an admin role by some other group as well. The same logic applies to stack roles as well.

Sample Request
12345678
{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
    {
      "op": "remove",
      "path": "members[value eq \"<
Sample Response
Status|200 OK
123456
{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
    ],
    "id": "602**************",
    "displayName": "<

Replace Users in Group

PATCHhttps://auth-api.contentstack.com/scim/v2.0/organizations/{organization_uid}/Groups/{group_id}

The Replace Users in Group request replaces the existing set of users with a new set of users.

In the "Request Body", pass the user ID in the value key. Refer to the Get All Users request to get the user IDs.

This request removes all the existing users from a group and replaces them with the specified user(s).

This also revokes admin access for users with admin role, unless that user has been assigned an admin role by some other group as well. The same logic applies to stack roles as well.

Sample Request
1234567891011
{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
    {
      "op": "replace",
      "path": "members",
      "value": [
          {
              "value": "<
Sample Response
Status|200 OK
123456
{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:Group"
    ],
    "id": "602d05a041339f00113353b7",
    "displayName": "<

Delete Group

DELETEhttps://auth-api.contentstack.com/scim/v2.0/organizations/{organization_uid}/Groups/{group_id}

The Delete Group request deletes an existing group from the SCIM. This will remove all the users from that group.

NoteThis API request will not remove users from the organization or from the Contentstack account.

Hide Parameters

URL Parameters

organization_uidrequiredstring

The UID of the organization. Use the Get All Organizations request to get the UID of the organization.

Example:

your_organization_uid

Headers

Content-Typerequiredstring

The format of the response content.

Example:

application/json
Authorizationrequiredstring

The access token obtained after authorizing the IdP client.

Example:

Bearer access_token_from_IdP_client
Hide Parameters

URL Parameters

organization_uidrequiredstring

The UID of the organization. Use the Get All Organizations request to get the UID of the organization.

Example:

your_organization_uid

Query Parameters

countoptionalstring

To fetch a certain number of groups in a single request.

For example, if you specify 2, you will receive details of two groups in a single request.

You can fetch a maximum of 100 groups at once.

Example:

2
startIndexoptionalstring

It is the index number from which you want to fetch group details.

By default, the value is 1. If you specify 5, you will get details starting from the fifth group.

Example:

2
excludedAttributesoptionalstring

It is a list of strings indicating which resource attributes should be removed from the default set of attributes to be returned.

Currently, we support excluding only the 'members' attribute.

Example:

members

Headers

Content-Typerequiredstring

The format of the response content.

Example:

application/json
Authorizationrequiredstring

The access token obtained after authorizing the IdP client.

Example:

Bearer access_token_from_IdP_client
Hide Parameters

URL Parameters

organization_uidrequiredstring

The UID of the organization. Use the Get All Organizations request to get the UID of the organization.

Example:

your_organization_uid
group_idrequiredstring

The ID of the group. Refer to the Get All Groups request to fetch group ID.

Example:

your_group_id

Query Parameters

excludedAttributesoptionalstring

It is a list of strings indicating which resource attributes should be removed from the default set of attributes to be returned.

Currently, we support excluding only the 'members' attribute.

Example:

members

Headers

Content-Typerequiredstring

The format of the response content.

Example:

application/json
Authorizationrequiredstring

The access token obtained after authorizing the IdP client.

Example:

Bearer access_token_from_IdP_client
Hide Parameters

URL Parameters

organization_uidrequiredstring

The UID of the organization. Use the Get All Organizations request to get the UID of the organization.

Example:

your_organization_uid

Query Parameters

filterrequiredstring

Specify the type of filter you want to use. In this case, the filter will be “displayName Eq”

Example:

displayName Eq "name_of_group"

Headers

Content-Typerequiredstring

The format of the response content.

Example:

application/json
Authorizationrequiredstring

The access token obtained after authorizing the IdP client.

Example:

Bearer access_token_from_IdP_client
Hide Parameters

URL Parameters

organization_uidrequiredstring

The UID of the organization. Use the Get All Organizations request to get the UID of the organization.

Example:

your_organization_uid
group_idrequiredstring

The ID of the group. Refer to the Get All Groups request to fetch group ID.

Example:

your_group_id

Headers

Content-Typerequiredstring

The format of the response content.

Example:

application/json
Authorizationrequiredstring

The access token obtained after authorizing the IdP client.

Example:

Bearer access_token_from_IdP_client
Hide Parameters

URL Parameters

organization_uidrequiredstring

The UID of the organization. Use the Get All Organizations request to get the UID of the organization.

Example:

your_organization_uid
group_idrequiredstring

The ID of the group. Refer to the Get All Groups request to fetch group ID.

Example:

your_group_id

Headers

Content-Typerequiredstring

The format of the response content.

Example:

application/json
Authorizationrequiredstring

The access token obtained after authorizing the IdP client.

Example:

Bearer access_token_from_IdP_client
Hide Parameters

URL Parameters

organization_uidrequiredstring

The UID of the organization. Use the Get All Organizations request to get the UID of the organization.

Example:

your_organization_uid
group_idrequiredstring

The ID of the group. Refer to the Get All Groups request to fetch group ID.

Example:

your_group_id

Headers

Content-Typerequiredstring

The format of the response content.

Example:

application/json
Authorizationrequiredstring

The access token obtained after authorizing the IdP client.

Example:

Bearer access_token_from_IdP_client
Hide Parameters

URL Parameters

organization_uidrequiredstring

The UID of the organization. Use the Get All Organizations request to get the UID of the organization.

Example:

your_organization_uid
group_idrequiredstring

The ID of the group. Refer to the Get All Groups request to fetch group ID.

Example:

your_group_id

Headers

Content-Typerequiredstring

The format of the response content.

Example:

application/json
Authorizationrequiredstring

The access token obtained after authorizing the IdP client.

Example:

Bearer access_token_from_IdP_client
Hide Parameters

URL Parameters

organization_uidrequiredstring

The UID of the organization. Use the Get All Organizations request to get the UID of the organization.

Example:

your_organization_uid
group_idrequiredstring

The ID of the group. Refer to the Get All Groups request to fetch group ID.

Example:

your_group_id

Headers

Content-Typerequiredstring

The format of the response content.

Example:

application/json
Authorizationrequiredstring

The access token obtained after authorizing the IdP client.

Example:

Bearer access_token_from_IdP_client
Hide Parameters

URL Parameters

organization_uidrequiredstring

The UID of the organization. Use the Get All Organizations request to get the UID of the organization.

Example:

your_organization_uid
group_idrequiredstring

The ID of the group you want to delete. Refer to the Get All Groups request to fetch group ID.

Example:

your_group_id

Headers

Content-Typerequiredstring

The format of the response content.

Example:

application/json
Authorizationrequiredstring

The access token obtained after authorizing the IdP client.

Example:

Bearer access_token_from_IdP_client