Schema
A platform-neutral schema and extension model for representing users and groups.
The core schema defines the resource types a SCIM service provider exposes, the
attributes each one carries, and the rules for extending them. Every resource is
identified by one or more schema URIs listed in its schemas attribute.
Resource types
- User urn:ietf:params:scim:schemas:core:2.0:User
-
An individual identity. Carries
userName,name,emails,phoneNumbers,addresses,active, and more. See an example → - Group urn:ietf:params:scim:schemas:core:2.0:Group
-
A collection used to model organizational structure. Carries
displayNameand a multi-valuedmembersattribute; members may be users or other groups. See an example → - Enterprise User urn:ietf:params:scim:schemas:extension:enterprise:2.0:User
-
A schema extension for common enterprise attributes:
employeeNumber,costCenter,organization,division,department, andmanager.
Those are the resource types defined by the core schema.
RFC 9944 adds two more — Device and
EndpointApp — extending SCIM from provisioning people to provisioning
devices.
Extensions
Extensions are namespaced by their own schema URI and appear as a nested object keyed by
that URI, alongside the core attributes. A resource lists every schema it conforms to in
schemas, so a client can tell what to expect:
{
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:User",
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"
],
"id": "2819c223-7f76-453a-919d-413861904646",
"userName": "dschrute",
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
"employeeNumber": "701984",
"department": "Sales",
"manager": {
"value": "26118915-6090-4610-87e4-49d8ca9f808d",
"displayName": "Michael Scott"
}
}
}Which resource types and schemas a particular server supports is discoverable at runtime — see Discovery.