--- title: "SCIM API endpoint details and syntax for groups" slug: "scim-api-endpoint-details-and-syntax-for-groups" updated: 2025-08-18T11:03:16Z published: 2025-08-18T11:03:16Z canonical: "help.quickbase.com/scim-api-endpoint-details-and-syntax-for-groups" --- > ## Documentation Index > Fetch the complete documentation index at: https://help.quickbase.com/llms.txt > Use this file to discover all available pages before exploring further. # SCIM API endpoint details and syntax for groups **Don't forget to check out our** [**JSON RESTful APIs**](https://developer.quickbase.com/)**, they can help you utilize and extend Quickbase with ease.** The Quickbase API endpoints support the SCIM 2.0 protocol and allow you to create, read, update, and delete (CRUD) groups using the following HTTP methods: - GET - get groups in a realm/search for groups in an app or realm - POST - create groups/provision groups - PUT - update/edit group information - DELETE - delete groups - PATCH - patch group information A bearer token is used for authentication using a Quickbase user token. For more details, select [Setting up a user and user token for SCIM provisioning](/v1/docs/setting-up-a-user-and-user-token-for-scim-provisioning) for details. The groupId used in the following code examples is the group ID created by Quickbase, not the IdM provisioned group ID. ### Get groups in a realm - Get all groups: `GET { SCIMBaseURL}/groups` - Get groups with pagination: `GET { SCIMBaseURL}/groups?count=1&startIndex=1` - Get groups with groupId: `GET { SCIMBaseURL}/groups/{groupId}` ### Create groups or provision groups To create or provision a new group, use the following request format: ```plaintext POST { SCIMBaseURL}/groups {    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],    "displayName": "scimGroup-Test1",    "members": {        "value": "{userID}",                "$ref": "{Users/userID}",                "display": "Jane Doe",    }], } ``` ### Update or patch groups To update an existing group, use the following request format: ```plaintext PUT { SCIMBaseURL}/groups/{groupId} {    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],    "displayName": "scimGroup-Test1",    "members": {        "value": "{userID}",                "$ref": "{Users/userID}",                "display": "Jane Doe",    }], } ``` To patch an existing group by adding members, use the following request format: Only the members you specified in the request are added to the group memberships. ```plaintext PATCH { SCIMBaseURL}/groups/{groupId} {"schemas":         ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],      "Operations":[        {         "op":"add",         "path": "members",         "value":[          {            "display": "Babs Jensen",            "$ref":"{Users/userID}",            "value": "{userID}"          }         ]        }       ]      } ``` To patch an existing group by replacing all members, use the following request format: ```plaintext PATCH { SCIMBaseURL}/groups/{groupId} {"schemas":         ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],      "Operations":[        {         "op":"replace",         "path": "members",         "value":[          {            "display": "Babs Jensen",            "$ref":"{Users/userID}",            "value": "{userID}"          },          {            "display": "James Smith",            "$ref":"{Users/userID}",            "value": "{userID}"          }                   ]          }                 ]      } ``` To remove a member using the "eq" filter, use the following request format: When you remove a member using the "eq" filter, the members listed in the path with the filter are removed from this group. No other memberships of the group are modified. ```plaintext PATCH { SCIMBaseURL}/groups/{groupId} { "schemas":       ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],   "Operations":[     {       "op":"remove",       "path":           "members[value eq\"{userID}\"]"     },   ]     }         ``` To remove a member without the "eq" filter, use the following request format: When you remove a member without the "eq" filter, the members listed under "value" are removed from this group. No other memberships of the group are modified. ```plaintext PATCH { SCIMBaseURL}/groups/{groupId}     { "schemas"     ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],       "Operations":[         {       "op":remove",       "path": "members",       "value":[{              "display": "James Smith",              "$ref":"{Users/userID}",              "value": "{userID}"          },          {            "display": "Babs Smith",            "$ref":"{Users/userID}",            "value": "{userID}"          }                   ]          }                 ]      }         ``` ### Delete groups To delete a group, use the following request format: ```plaintext DELETE { SCIMBaseURL}/groups/{groupId} ``` The base URL for SCIM above is: `{ SCIMBaseURL} = {BaseURL}/ governance/scim/v2/` ### Related Topics: - [Using API endpoints for SCIM provisioning](/v1/docs/using-api-endpoints-for-scim-provisioning) - [Setting up a user and user token for SCIM provisioning](/v1/docs/setting-up-a-user-and-user-token-for-scim-provisioning) - [Restrictions using the SCIM API](/v1/docs/restrictions-using-the-scim-api) - [Troubleshooting IdM provisioning](/v1/docs/troubleshooting-idm-provisioning)