askmeidentity · SCIM 2.0 · 2026-05-22
SCIM 2.0 — schema card
The SCIM 2.0 User + Group + Enterprise User schemas + the operations on /Users and /Groups — one page.
Core User schema (urn:ietf:params:scim:schemas:core:2.0:User)
| id | string | Server-assigned. Globally unique. |
| externalId | string | Client-defined identifier (e.g. HRIS employee ID) |
| userName | string | Unique within the tenant. Often email. |
| name | complex | familyName + givenName + middleName + formatted + honorific* |
| displayName | string | For display in UIs |
| emails | multi-valued | value + type (work / home / other) + primary |
| phoneNumbers | multi-valued | value + type (work / mobile / home / pager) |
| active | boolean | false = disabled, true = active |
| password | write-only | Set during create or replace |
| groups | multi-valued read-only | Group memberships (computed) |
| roles | multi-valued | Tenant-specific role assignments |
| meta | complex read-only | created + lastModified + version + location |
Enterprise extension (urn:ietf:params:scim:schemas:extension:enterprise:2.0:User)
| employeeNumber | string | Internal HRIS identifier |
| costCenter | string | |
| organization | string | |
| division | string | |
| department | string | |
| manager | complex | value (id) + $ref + displayName |
Group schema (urn:ietf:params:scim:schemas:core:2.0:Group)
| id | string | Server-assigned |
| displayName | string | Group name shown in UIs |
| members | multi-valued | value (User id) + $ref + display + type |
Operations (RFC 7644)
| GET /Users | List | Filters via ?filter= (RFC 7644 § 3.4.2.2) |
| GET /Users/:id | Read | Single resource |
| POST /Users | Create | Returns 201 + Location header |
| PUT /Users/:id | Replace | Full replacement of resource |
| PATCH /Users/:id | Modify | add / remove / replace operations |
| DELETE /Users/:id | Remove | 204 No Content |
Common PATCH operation patterns
| Disable user | {op:"replace",path:"active",value:false} | Most common |
| Update displayName | {op:"replace",path:"displayName",value:"..."} | |
| Add to group | {op:"add",path:"members",value:[{value:"<user-id>"}]} | |
| Remove from group | {op:"remove",path:"members[value eq \"<user-id>\"]"} |