feat: add API reference and document orgs, auto-linking, mapping, and events - #2625
Conversation
📝 WalkthroughWalkthroughTwo configuration changes update the documentation infrastructure: a new SCIM API reference document is added to the network sidebar navigation, and HTTP syntax highlighting support is enabled in Prism for code block display. ChangesDocumentation Configuration
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related PRs
Suggested labels
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 inconclusive)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
Updates the Ory Kratos SCIM documentation to match recent SCIM server behavior in Ory Network, adding a dedicated API reference and expanding the SCIM overview to cover organizations, auto-linking/conflicts, mapping, deprovisioning, and events.
Changes:
- Added a new SCIM API reference page and linked it into the Network sidebar.
- Expanded the SCIM overview with organization scoping behavior, auto-linking rules, conflict handling, mapping semantics, deprovisioning guidance, and corrected event names/attributes.
- Updated the Jsonnet mapping reference to document SCIM inputs (including the existing identity) and provide a SCIM mapping example; cross-linked organizations docs to SCIM provisioning behavior.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| sidebars-network.ts | Adds the SCIM API reference page to the SCIM sidebar category. |
| docs/kratos/reference/jsonnet.mdx | Documents SCIM Jsonnet inputs and adds a SCIM mapping example + cross-links. |
| docs/kratos/organizations/organizations.mdx | Adds guidance linking org pre-provisioning to SCIM provisioning and conflict behavior. |
| docs/kratos/manage-identities/scim/api-reference.mdx | Introduces a comprehensive SCIM API reference (auth, discovery, CRUD, schemas, pagination/filtering, errors, features). |
| docs/kratos/manage-identities/50_scim.mdx | Expands SCIM overview to include org scoping, auto-linking/conflicts, mapping semantics, deprovisioning, events, and limitations. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
LGTM! |
Yes, those didn't change. |
…x events Add a SCIM API reference page covering the base URL, authentication, service-discovery endpoints, Users/Groups CRUD with request and response shapes, the User/Group/Enterprise schemas, offset and cursor pagination, filtering, the error model, and a supported-features matrix. Expand the SCIM overview into a concept and setup hub: how SCIM relates to organizations (one-org-per-identity and the provisioning matrix), auto-linking, cross-organization conflicts, expanded data mapping (the identity extVar, full-replace semantics, and the relationship to the OIDC/SAML Jsonnet mapper), and deprovisioning. Correct the Events section against the implementation (SCIMGroup* event names, member-event nuance, SCIMProvisioningError, and attribute keys), add a SCIM mapping example to the Jsonnet reference, cross-link from the organizations page, and wire the API reference into the network sidebar. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Merge metadata_admin alongside metadata_public in the SCIM Jsonnet example to match the surrounding text, and clarify that identity.region is an optional field in addition to the standard mapper output. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
… auto-link diagram - Pagination: present cursor-based pagination first as recommended (faster, no startIndex/count caps) with a tip steering integrators to it. - Filtering: add a "Filtering users by group" section documenting the groups.value filter (UUID-validated, direct members only). - Authentication: sync the advertised scheme to oauthbearertoken (RFC 6750) to match the kratos fix, in both the note and the ServiceProviderConfig example. - Auto-linking: render the provisioning decision as a Mermaid diagram. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…, tidy fences - Remove "groups": [] from the create-user response (the field is omitempty and is omitted when the user has no memberships). - Clarify PUT replace semantics: omitted attributes reset to defaults, but password changes only when included. - Standardize the group-filter placeholder to <group-id>. - Use text fences for HTTP request snippets (http is not a configured Prism language). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ests Add "http" to prism.additionalLanguages and switch the SCIM request snippets back to ```http so request headers are highlighted. Request lines are kept in the simplified form (no HTTP/1.1), so only headers highlight — acceptable for readability. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Summary
Brings the SCIM documentation in line with the recent SCIM improvements in Ory Kratos (general-purpose, enterprise-ready SCIM), and fills the integrator-facing gaps.
docs/kratos/manage-identities/scim/api-reference.mdx): base URL format, authentication (incl. the single-Bearer-prefix handling), service-discovery endpoints (ServiceProviderConfig,ResourceTypes,Schemas), full Users/Groups CRUD with happy-path request/response shapes, the User/Group/Enterprise-extension schemas, offset and cursor (RFC 9865) pagination, filtering, a SCIM error model + common-error catalogue, and a supported-features matrix.50_scim.mdx) into a concept + setup hub: how SCIM relates to organizations (one-org-per-identity, the provisioning matrix), auto-linking (matching precedence + verified-domain adoption), cross-organization conflicts (the409 uniquenesscase + resolution), expanded data mapping (theidentityextVar, full-replace semantics, and the relationship to the OIDC/SAML Jsonnet mapper), and deprovisioning (active:falsevs. hard delete).SCIMGroupCreated/Updated/Deleted), the member-event nuance, the previously-undocumentedSCIMProvisioningErrorevent, and accurate attribute keys (SCIMClient, group/error attributes).identityextVar and added a working SCIM mapping example.Also fixed three things that were outright incorrect in the live docs: the
activedefault (now defaults totrue), the brokenidentity-merge mapping example, and the misleading "set the base URL" phrasing.Test Plan
npm install && npx docusaurus buildsucceeds🤖 Generated with Claude Code
Summary by CodeRabbit
httplanguage.