---
title: "SCIM API endpoint details and syntax for users"
slug: "scim-api-endpoint-details-and-syntax-for-users"
updated: 2025-08-18T12:45:03Z
published: 2025-08-18T12:45:03Z
---

> ## 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 users

**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 allows for username creates, reads, updates, and deletes (CRUD) via the following HTTP methods:

- GET
- POST
- PUT
- DELETE
- PATCH

A bearer token is used for authentication using a Quickbase user token. Read [Setting up a user and user token for SCIM provisioning](/v1/docs/setting-up-a-user-and-user-token-for-scim-provisioning) for details.

Quickbase supports the following via CRUD:

- Get users in a realm
- Create users/Provision users
- Search for users in app or realm
- Update/edit user information
- Deny/restore users
- Delete users

Required user fields are:

- userName
- name
- emails
- active
- externalID

**Note:** Optional attributes can be included. If optional attributes aren't included in the request no action will be taken.

SSOUniqueID is an optional attribute. This maps to the SAML nameID attribute which is part of the SAML assertion. It's only useful for realms with SAML authentication enabled. The SSOUniqueID must uniquely identify a user within a realm. Best practice is to set the SSOUniqueID to a GUID.

`userId` is expected to be a numeric value.

## Syntax examples

### Get users in a realm

**Note:** The username eq filter query is supported.

- Get all users: `GET { SCIMBaseURL}/users`

- Get users with pagination: `GET { SCIMBaseURL}/users?count=1&amp;startIndex=1`

- Get users with userId: `GET { SCIMBaseURL}/users/{userId}`

- Get users with userName filter: `GET { SCIMBaseURL}/users?filter=userName eq "{userName}"`

### Setup of all calls

```plaintext
{ SCIMBaseURL} = {BaseURL}/ governance/scim/v2/
```

### Create users/Provision users

**Note:** New users are created as approved, registered and verified. Once provisioned, the new users need to sign in to Quickbase via SSO.

```plaintext
POST { SCIMBaseURL}/users 
 { 
    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], 
    "userName": "Jane.doe", 
    "name": { 
        "givenName":"Jane", 
        "familyName":"Doe" 
    }, 
    "emails": [{ 
        "primary": true, 
        "value": "jane.doe@example.com" 
    }], 
    "externalId": "00uv931EiyRsnwOGa0g3", 
    "active": true 
}
```

### Update/edit user information using PUT

```plaintext
PUT { SCIMBaseURL}/users/{userId} 
 { 
    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], 
    "userName": "jane.smith", 
    "name": { 
        "givenName": "Jane", 
        "familyName": "Smith" 
    }, 
    "emails": [{ 
        "primary": true, 
        "value": "jane.smith@example.com" 
    }], 
    "externalId": "00uv931EiyRsnwOGa0g3", 
    "active": true 
}
```

### Update/edit user information using PATCH

```plaintext
PATCH { SCIMBaseURL}/users/{userId}
 {
    "schemas": [ "urn:ietf:params:scim:api:messages:2.0:PatchOp" ],
    "Operations": [
     {
        "op": "replace",
        "path": "name.givenName",
        "value": "myNewName"
     }
  ]
}
```

### Manipulate SSO UniqueID

```plaintext
POST { SCIMBaseURL}/users 
 { 
    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], 
    "userName": "Jane.doe", 
    "name": { 
        "givenName":"Jane", 
        "familyName":"Doe" 
    }, 
    "emails": [{ 
        "primary": true, 
        "value": "jane.doe@example.com" 
    }], 
    "externalId": "00uv931EiyRsnwOGa0g3", 
    "active": true ,
    "SSOUniqueID": "93945629-734B-475E-99CE-6AA7AFA43259"
}

PUT { SCIMBaseURL}/users/{userId} 
 { 
    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], 
    "userName": "jane.smith", 
    "name": { 
        "givenName": "Jane", 
        "familyName": "Smith" 
    }, 
    "emails": [{ 
        "primary": true, 
        "value": "jane.smith@example.com" 
    }], 
    "externalId": "00uv931EiyRsnwOGa0g3", 
    "active": true,
    "SSOUniqueID": "93945629-734B-475E-99CE-6AA7AFA43259"
} 

PATCH { SCIMBaseURL}/users/{userId}
 {
    "schemas": [ "urn:ietf:params:scim:api:messages:2.0:PatchOp" ],
    "Operations": [
     {
        "op": "replace",
        "path": "SSOUniqueID",
        "value": "93945629-734B-475E-99CE-6AA7AFA43259"
     }
  ]
}

OR
PATCH { SCIMBaseURL}/users/{userId}
 {
    "schemas": [ "urn:ietf:params:scim:api:messages:2.0:PatchOp" ],
    "Operations": [
     {
        "op": “add”,
        "path": "SSOUniqueID",
        "value": "93945629-734B-475E-99CE-6AA7AFA43259"
     }
  ]
}
```

### 

### Deny users using PUT

```plaintext
PUT { SCIMBaseURL}/users/{userId} 
 { 
    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], 
    "userName": "jane.smith", 
    "name": { 
        "givenName": "Jane", 
        "familyName": "Smith" 
    }, 
    "emails": [{ 
        "primary": true, 
        "value": "jane.smith@example.com" 
    }], 
    "externalId": "00uv931EiyRsnwOGa0g3", 
     "active": false 
}
```

### Deny users using PATCH

```plaintext
PATCH { SCIMBaseURL}/users/{userId}
 {
    "schemas": [ "urn:ietf:params:scim:api:messages:2.0:PatchOp" ],
    "Operations": [
     {
        "op": "replace",
        "path": "active",
        "value": "false"
     }
  ]
}
```

### Approve users

```plaintext
PUT { SCIMBaseURL}/users/{userId} 
 { 
    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], 
    "userName": "jane.smith", 
    "name": { 
        "givenName": "Jane", 
        "familyName": "Smith" 
    }, 
    "emails": [{ 
        "primary": true, 
        "value": "jane.smith@example.com" 
    }], 
    "externalId": "00uv931EiyRsnwOGa0g3", 
     "active": true 
}  
```

### Delete users

```plaintext
DELETE { SCIMBaseURL}/users/{userId}
```

### 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)
