<!-- llms.txt: https://workos.com/llms.txt -->
<!-- feedback.md: https://workos.com/docs/feedback.md -->

> Agents: if this page is wrong, missing a step, or its code fails, report it instead of working around it. `POST https://api.workos.com/feedback` with `Content-Type: application/json` and body `{"message":"Agent report: what you tried, what happened, client and model","pageUrl":"https://workos.com/docs/integrations/scim"}`. Ask the user once first. No auth. No secrets. Details: https://workos.com/docs/feedback.md

# SCIM

## Introduction

To set up a SCIM v2.0 directory sync connection, you'll need to provide the organization's IT team with specific configuration details from WorkOS. This allows their SCIM server to synchronize users and groups with your application.

***

## What WorkOS provides

When setting up a SCIM directory sync connection, WorkOS provides two key pieces of information that you'll need to share with the organization:

- [Endpoint](https://workos.com/docs/glossary/endpoint): The URL where the SCIM server will send requests
- Authentication credentials: Either a [Bearer Token](https://workos.com/docs/glossary/bearer-token) or OAuth 2.0 client credentials, depending on the authentication method selected for the directory

The endpoint is available in the **Directory details** section of the directory sync connection in the [WorkOS Dashboard](https://dashboard.workos.com/) as soon as the directory is created.

![The WorkOS Dashboard showing the directory details card with the endpoint and the Bearer tokens card below it](https://images.workoscdn.com/images/1ae8c088-07d6-4512-9abf-1adec38f6b0b.png?auto=format\&fit=clip\&q=50)

These settings enable the organization's SCIM server to securely send user and group data to your application through WorkOS.

### Authentication methods

Each SCIM directory authenticates requests with one of two methods, selected during setup. A directory accepts requests using its selected method only.

- **Bearer token** (default): A static token the SCIM server sends with every request. Bearer tokens are generated on demand from the **Bearer tokens** card in the WorkOS Dashboard. IT contacts can also generate, rotate, and revoke bearer tokens themselves from the [Admin Portal](https://workos.com/docs/admin-portal). See [Bearer token rotation](https://workos.com/docs/admin-portal/token-rotation) for details.
- **OAuth 2.0 client credentials**: WorkOS issues a client ID and client secret for the directory, along with a token URL. The SCIM server exchanges these credentials at the token URL for a short-lived access token and uses that token to authenticate its requests. Identity providers like Okta and Entra ID support this method natively — see the [Okta SCIM](https://workos.com/docs/integrations/okta-scim) and [Entra ID SCIM](https://workos.com/docs/integrations/entra-id-scim) guides for provider-specific steps.

> The OAuth client secret is displayed once, at the time it is created. Copy it before closing the page. If the secret is lost, rotate the client credentials to receive a new one.

***

## What you will need

The organization's IT team will handle the SCIM server configuration on their end. You need to provide them with the endpoint URL and the credentials for the directory's [authentication method](#authentication-methods): a bearer token, or a token URL, client ID, and client secret.

Typically, the organization's IT team will use these values to configure your application within their SCIM server or identity provider admin dashboard.

***

## (1) Set up your directory sync endpoint

Login to the [WorkOS Dashboard](https://dashboard.workos.com/).

In the left navigation menu, select the **Organizations** tab. Select the appropriate organization for which you will enable a SCIM directory sync connection.

On the organization's page, scroll down to the **Directory Sync** section. Click **Configure manually**.

![WorkOS Dashboard showing directory sync card with configure manually button highlighted](https://images.workoscdn.com/images/ebf08eb3-a698-4498-adde-1b551ab0f519.png?auto=format\&fit=clip\&q=50)

Select **Custom SCIM v2.0** as the directory type. Input an appropriate name for the connection. Click **Add directory**.

![The WorkOS Dashboard with a create directory dialog showing directory type and name inputs](https://images.workoscdn.com/images/aa5a17d9-0990-4af6-a61f-1640658650e1.png?auto=format\&fit=clip\&q=50)

The directory sync connection will now display the endpoint for the SCIM server. To create a bearer token, click **Generate token** on the **Bearer tokens** card. The token is shown once at creation time — copy it before closing the dialog.

To use OAuth 2.0 client credentials instead, the IT contact selects **OAuth client credentials** as the authentication method while completing the SCIM setup flow in the [Admin Portal](https://workos.com/docs/admin-portal). WorkOS provisions the directory's OAuth client when the directory is created, and the directory's **Client secrets** card in the Dashboard holds its secrets. Click **Generate new secret** on that card to create one. The secret is shown once at creation time — copy it before closing the dialog.

> We have support for custom labeled URLs for directory sync endpoints. [Contact us](mailto:support@workos.com) for more info!

***

## (2) Provide SCIM configuration to the organization

Copy the **Endpoint** from the **Directory details** section and the credentials for the directory's authentication method.

For a directory using a bearer token, provide these values to the organization's IT team so they can configure the application within their SCIM server or identity provider admin dashboard:

- **Endpoint URL**: The destination where their SCIM server will send user and group data
- **Bearer Token**: Authentication credentials for secure communication

For a directory using OAuth 2.0 client credentials, the IT team needs these values instead:

- **Endpoint URL**: The destination where their SCIM server will send user and group data
- **Token URL**: The OAuth token endpoint where their SCIM server exchanges the client credentials for an access token
- **Client ID** and **Client secret**: The credentials used in the token exchange

The Admin Portal setup flow shows all four values to the IT contact as they configure the identity provider, so there's no separate handoff when they set the directory up themselves.

Once the organization has configured these values in their SCIM server, your application will be ready to receive real-time user and group synchronization.

> Need to rotate or revoke credentials later? See [Bearer token rotation](https://workos.com/docs/admin-portal/token-rotation) for the bearer token self-serve flow, including how IT contacts can manage tokens directly from the Admin Portal. OAuth client secrets are managed from the **Client secrets** card on the directory in the Dashboard, and from the **OAuth client credentials** card in the Admin Portal. A directory holds up to two active secrets, so generate the new secret, update the identity provider with it, then revoke the old one.

***

## (3) Assign users and groups to your application

Now, whenever the organization assigns users or groups to your application in their directory, you'll receive real-time dashboard updates based on changes in their system.

A detailed guide to integrate the WorkOS API with your application can be found [here](https://workos.com/docs/directory-sync)
