Patch User
PATCH/Users/:id
Partially updates a user. PATCH supports the same mutable surface as PUT (Replace User).
Supported operations (add / replace):
active— archive (false) or reactivate (true) a username.givenName/name.familyName— name components may be patched individually; they merge with the stored nameexternalIdrole— via theurn:ro.am:params:scim:schemas:extension:roam:2.0:Userextension, as a pathed operation or a path-less operation keyed by the extension URNuserName+emails— changing both together to the same new address performs an email change (see Replace User); changing only one returns 400, and a conflicting change returns 409
Operation forms:
- Operations may target an attribute path (
"path": "active") or omit the path and provide an object of attribute/value pairs (RFC 7644 §3.5.2.1) — the form Okta uses for deactivation:{"op": "replace", "value": {"active": false}} - Operation names are case-insensitive (
Replaceandreplaceboth work);addon a single-valued attribute behaves asreplace - Multiple operations are validated up front and folded into a single update, so a failing operation cannot leave a partial update behind
Tolerated / not supported:
- Attributes Roam does not store (
displayName,title,addresses,phoneNumbers, enterprise-extension fields, ...) are logged and ignored rather than failing the request, so a bundled IdP profile push still succeeds removeis rejected (400) for stored attributes and ignored for unsupported ones
See RFC 7644 §3.5.2 for SCIM PATCH operations.
Request
Responses
- 200
Updated user