Implement SCIM 2.0 group provisioning and PATCH semantics correctly

domain: identity-general · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Expose a /Groups endpoint supporting GET, POST, PUT, PATCH, and DELETE as specified in RFC 7644 sections 3.3 through 3.6.
  2. Handle PATCH requests with a PatchOp body containing an array of operations; each operation has an op of add, remove, or replace and a path targeting the members attribute.
  3. For add operations on members, append the supplied value array to the existing members list; for remove operations, delete members matching the filter in the path (e.g., members[value eq "user-id"]).
  4. For replace on the members attribute, overwrite the entire members list with the supplied value array — do not merge.
  5. Be aware that Microsoft Entra ID sends non-standard PATCH bodies when modifying group members, sometimes combining add and replace operations in a single request; handle both in your parser.
  6. Return 200 with the updated Group resource or 204 with no body on successful PATCH; return 400 with a SCIM error schema body for malformed operations.

Known gotchas

Related routes

Implement SCIM 2.0 PATCH with add, replace, and remove operations including filter path expressions
rfc-editor.org · 6 steps · unrated
Build conformance tests for a SCIM 2.0 server implementation
identity-general · 6 steps · unrated
Build a SCIM 2.0 user provisioning endpoint that an identity provider can call
simplecloud.info · 6 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans