Configure GiiS with SCIM 2.0 to automatically provision and deprovision users and groups from your identity provider.
GiiS has been tested with Okta and Microsoft Entra ID (Azure AD). Other SCIM 2.0 providers have not been validated yet. If you need support for a specific provider, reach out on our Slack or Discord channels and we can add it to the roadmap.
INFO
SCIM handles provisioning — syncing users and groups into GiiS. You still need a separate authentication method (e.g. OIDC or SAML) for user sign-in.
What SCIM Does
- User provisioning — Automatically create GiiS accounts when users are assigned in your IdP
- User deprovisioning — Deactivate GiiS accounts when users are unassigned or suspended
- Group sync — Push group membership changes from your IdP to GiiS
- Profile updates — Keep user attributes (name, email) in sync
Generate a SCIM Token
Before configuring your identity provider, generate a SCIM bearer token in GiiS.
Navigate to SCIM Settings
In your GiiS instance, go to the Admin Panel → Permissions → SCIM.
Generate Token
Click Generate SCIM Token. A new bearer token will be created for your IdP to authenticate with.
::: warning
The token is displayed **only once**. Copy or download it immediately.
Generating a new token will revoke the previous one.
:::
You will need these two values when configuring your identity provider:
| Field | Value |
|---|---|
| SCIM Base URL | https://YOUR_GIIS_DOMAIN/scim/v2 |
| Bearer Token | The token generated above |
Configure Your Identity Provider
Use the SCIM Base URL and Bearer Token from the previous step when configuring provisioning in your IdP.
Follow Okta's guide to add SCIM provisioning to your application
Follow Microsoft's guide to configure automatic provisioning
When prompted for connection details, use:
| IdP Field | Value |
|---|---|
| SCIM Base URL / Tenant URL | https://YOUR_GIIS_DOMAIN/scim/v2 |
| Authentication | Bearer token (HTTP Header) |
Verifying the Connection
Once provisioning is configured, the SCIM page in the GiiS Admin Panel will show a Connected status once the IdP has made its first request. You can also check the Users and Groups page to confirm that provisioned users and groups appear correctly.
Supported Attributes
The SCIM discovery endpoints are unauthenticated — no token required. You can query them directly to see exactly what GiiS supports without guessing.
curl -s https://YOUR_GIIS_DOMAIN/scim/v2/Schemas -H "Accept: application/scim+json" | jq .
curl -s https://YOUR_GIIS_DOMAIN/scim/v2/ServiceProviderConfig -H "Accept: application/scim+json" | jq .
curl -s https://YOUR_GIIS_DOMAIN/scim/v2/ResourceTypes -H "Accept: application/scim+json" | jq .The tables below reflect the current responses.
User Attributes (/scim/v2/Schemas)
| Attribute | Type | Required | Notes |
|---|---|---|---|
userName | string | Yes | Unique identifier — typically the user's email address |
name.givenName | string | No | First name |
name.familyName | string | No | Last name |
name.formatted | string | No | Full name including middle names and titles |
emails[].value | string | No | Email address |
emails[].type | string | No | Label, e.g. work |
emails[].primary | boolean | No | Whether this is the primary email |
active | boolean | No | Whether the account is active |
externalId | string | No | Identifier from the IdP (case-sensitive) |
Enterprise User extension (urn:ietf:params:scim:schemas:extension:enterprise:2.0:User):
| Attribute | Type | Required | Notes |
|---|---|---|---|
department | string | No | Department |
manager.value | string | No | Manager's user ID |
Group Attributes (/scim/v2/Schemas)
| Attribute | Type | Required | Notes |
|---|---|---|---|
displayName | string | Yes | Human-readable group name |
members[].value | string | No | User ID of the group member |
members[].display | string | No | Display name of the member (read-only) |
externalId | string | No | Identifier from the IdP (case-sensitive) |
Supported Operations (/scim/v2/ServiceProviderConfig)
| Feature | Supported |
|---|---|
| PATCH | Yes |
| Bulk operations | No |
| Filtering | Yes (max 100 results) |
| Change password | No |
| Sorting | No |
| ETags | No |
| Authentication | Bearer token |
Resource Types (/scim/v2/ResourceTypes)
| Resource | Endpoint | Schema |
|---|---|---|
| User | /scim/v2/Users | urn:ietf:params:scim:schemas:core:2.0:User + Enterprise extension (optional) |
| Group | /scim/v2/Groups | urn:ietf:params:scim:schemas:core:2.0:Group |