Docs

API reference · Access

Save non-secret Access identity provider configuration

POST/v1/orgs/{org}/access/providers
Permission
access.providers.manage
Audit log
access.provider.create
Operation
access.providers.create

Parameters

NameInTypeRequiredNotes
orgpathstringyesfor example "org_01h455vb4pex5vsknk084sn02q"
Idempotency-KeyheaderstringnoOne key per intended mutation. A retry with the key replays the recorded response instead of executing again; the key with another request answers 422 idempotency_key_reused. For example "01h455vb4pex5vsknk084sn02q"
x-obhut-management-assignmentheaderstringnoSelect one staff assignment. Direct membership remains the default. Bound API tokens use their stored source and ignore this selector. For example "masg_01h455vb4pex5vsknk084sn02q"

Request body

FieldTypeRequiredNotes
namestringyes1 to 100 characters
enabledbooleannodefault true
configurationobjectyes
configuration.protocol"oidc"yes
configuration.vendorstringyesone of "entra", "okta", "google", "custom"
configuration.issuerstringyes0 to 2048 characters
configuration.clientIdstringyes1 to 200 characters
configuration.emailClaimstringyes1 to 128 characters
configuration.groupsClaimstring or nullyes

Response 201

FieldTypeRequiredNotes
idstringyesfor example "idp_01h455vb4pex5vsknk084sn02q"
orgIdstringyesfor example "org_01h455vb4pex5vsknk084sn02q"
namestringyes
enabledbooleanyes
configurationobjectyes
configuration.protocol"oidc"yes
configuration.vendorstringyesone of "entra", "okta", "google", "custom"
configuration.issuerstring (uri)yes
configuration.clientIdstringyes1 to 200 characters
configuration.emailClaimstringyes1 to 128 characters
configuration.groupsClaimstring or nullyes
revisionstringyesOpaque revision: dot-joined counters.
secretStatus"missing"yes
readinessobjectyes
readiness.statestringyesone of "unconfigured", "pending", "applied"
readiness.savedRevisionstring or nullyes
readiness.appliedRevisionstring or nullyes
readiness.identityobject or nullyes
readiness.identity.signInHoststring or nullyes
readiness.identity.issuerstring or nullyes
readiness.identity.failureobject or nullyes
readiness.identity.failure.codestringyesone of "keycloak_unavailable", "keycloak_refused", "realm_conflict", "realm_drifted", "issuer_mismatch", "issuer_migration_required", "edge_client_keys_missing", "provider_egress_unavailable", "provider_refused", "sign_in_host_unreachable"
readiness.identity.failure.atstring (date-time)yesUTC, ISO 8601.
readiness.identity.publicCheckAtstring (date-time) or nullyes
readiness.serving"unavailable"yes
readiness.blockersarray of stringyes0 to 16 items
createdAtstring (date-time)yesUTC, ISO 8601.
updatedAtstring (date-time)yesUTC, ISO 8601.