Request a durable restart of tenant membership reconciliation
curl --request POST \ --url https://auth.example.com/api/admin/service-groups/reconcile \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "ifMatch": 1 }'Service-user membership only; this operation does not grant authorization or emit token claims. Tenant scope is required. Reads require admin:users:read; mutations and previews require admin:users:write. Rule changes use ifMatch optimistic concurrency; a stale version returns 409. Missing or disabled group references, cycles and invalid typed comparisons are rejected. Malformed, empty or non-object JSON request bodies return 400 with group_request_invalid. Only complete per-user snapshots are published. During reconciliation, old snapshots remain readable with stale status; pending or failed results must not be treated as current membership.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Header Parameters
Section titled “Header Parameters ”Tenant selector for multi-tenant admin requests.
Request Body required
Section titled “Request Body required ”object
Current catalog revision; zero for the first group.
Example generated
{ "ifMatch": 1}Responses
Section titled “ Responses ”Successful operation.
Catalog operations return revision and groups. Catalog reads additionally return fields, dependencies and scans. Validation returns valid, dependencies, order and optional evaluation. Member listing returns members, nextCursor and coverage. Reconciliation requests return status.
object
object
Null or omitted disables the dynamic contribution; other sources are preserved.
object
object
object
object
Stable ID of an enabled group in the same tenant.
object
Email, email_domain, email_verified, country, registration_state, or custom.FIELD_KEY. Custom fields require an active schema. Email and domain are unavailable until verified. Country is normalized to two uppercase ASCII letters; domains are lowercase. Other strings use case-sensitive NFC equality. Registration state is guest or registered.
object
object
object
Stable ID of an enabled group in the same tenant.
object
Email, email_domain, email_verified, country, registration_state, or custom.FIELD_KEY. Custom fields require an active schema. Email and domain are unavailable until verified. Country is normalized to two uppercase ASCII letters; domains are lowercase. Other strings use case-sensitive NFC equality. Registration state is guest or registered.
object
Stable ID of an enabled group in the same tenant.
object
Email, email_domain, email_verified, country, registration_state, or custom.FIELD_KEY. Custom fields require an active schema. Email and domain are unavailable until verified. Country is normalized to two uppercase ASCII letters; domains are lowercase. Other strings use case-sensitive NFC equality. Registration state is guest or registered.
Optional explicit link to a tenant-local legacy SCIM role. No existing role data is rewritten.
object
object
object
object
object
object
object
Example
{ "groups": [ { "enabled": true, "condition": { "op": "all" } } ], "scans": [ { "status": "pending" } ], "coverage": "evaluated_subjects", "status": "pending"}Invalid condition, reference, subject, or unavailable stable input.
object
Example generated
{ "error": "example"}Authentication required.
object
Example generated
{ "error": "example"}Insufficient tenant-scoped permissions.
object
Example generated
{ "error": "example"}Group not found.
object
Example generated
{ "error": "example"}Rule version conflict or concurrent evaluation.
object
Example generated
{ "error": "example"}Input storage unavailable. No partial result was published.
object
Example generated
{ "error": "example"}