Notifications
Notification delivery settings, templates and jobs. 9 operations
Expand an endpoint for authentication, parameters, request fields and responses.
GET/api/v1/realms/{realm}/notification-settings+
Get delivery settings
Parameters
| Name | Location | Required | Details |
|---|---|---|---|
realm | path | Yes | Realm name (path-based issuer). Unknown realms return 404.{"type":"string"} |
organization_id | query | — | An organization's sender settings instead of the realm's; the ETag then covers them (for PATCH with organization_id).{"type":"string"} |
X-Request-Id | header | — | Optional caller-supplied correlation ID (printable ASCII, at most 64 characters); otherwise generated. Echoed in X-Request-Id and problem request_id.{"type":"string","maxLength":64,"pattern":"^[\\x21-\\x7e]+$"} |
Responses
200 OK
application/json
| Field | Type | Required | Description |
|---|---|---|---|
sender_address | string,null | Yes | |
sender_name | string,null | Yes | |
reply_to | string,null | Yes | |
default_locale | string,null | Yes | |
adapter | string | Yes |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}401 Missing or invalid credentials (code unauthenticated or invalid_credentials). Includes WWW-Authenticate.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"WWW-Authenticate": {
"$ref": "#/components/headers/WWW-Authenticate"
}
}403 Authenticated but not allowed (code forbidden, mfa_required, step_up_required, recent_authentication_required, grant_ceiling_exceeded, impersonation_restricted, account_unavailable, sso_required, recovery_restricted). Step-up problems carry obligations.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}404 Unknown realm or resource, or existence concealed from the caller (code not_found, feature_disabled).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}500 Unexpected error (code internal_error); no stack traces or secrets.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}503 Load shedding, realm unavailable or dependency failure (code unavailable, upstream_unavailable). May include Retry-After.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"Retry-After": {
"$ref": "#/components/headers/Retry-After"
}
}Operation getNotificationSettings · Schema definitions · OpenAPI contract
PATCH/api/v1/realms/{realm}/notification-settings+
Update delivery settings
Note: despite PATCH, every field is written (omitted fields are cleared; default_locale falls back to en).
Parameters
| Name | Location | Required | Details |
|---|---|---|---|
realm | path | Yes | Realm name (path-based issuer). Unknown realms return 404.{"type":"string"} |
If-Match | header | — | Expected resource version from the ETag (W/"v12" or "v12"). Stale versions return 412.{"type":"string","examples":["W/\"v12\""]} |
X-Request-Id | header | — | Optional caller-supplied correlation ID (printable ASCII, at most 64 characters); otherwise generated. Echoed in X-Request-Id and problem request_id.{"type":"string","maxLength":64,"pattern":"^[\\x21-\\x7e]+$"} |
Request body
application/json · required
| Field | Type | Required | Description |
|---|---|---|---|
sender_address | string | — | |
sender_name | string | — | |
reply_to | string | — | |
default_locale | string | — | |
organization_id | string | — |
Complete request schema
{
"type": "object",
"properties": {
"sender_address": {
"type": "string"
},
"sender_name": {
"type": "string"
},
"reply_to": {
"type": "string"
},
"default_locale": {
"type": "string"
},
"organization_id": {
"type": "string"
}
},
"additionalProperties": false
}Responses
204 No Content
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}400 Malformed request, invalid JSON (duplicate members, unknown fields, wrong types), invalid cursor or invalid transaction (code invalid_request, transaction_invalid, invalid_proof, invitation_invalid).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}401 Missing or invalid credentials (code unauthenticated or invalid_credentials). Includes WWW-Authenticate.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"WWW-Authenticate": {
"$ref": "#/components/headers/WWW-Authenticate"
}
}403 Authenticated but not allowed (code forbidden, mfa_required, step_up_required, recent_authentication_required, grant_ceiling_exceeded, impersonation_restricted, account_unavailable, sso_required, recovery_restricted). Step-up problems carry obligations.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}404 Unknown realm or resource, or existence concealed from the caller (code not_found, feature_disabled).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}409 Conflicts with current state, or an idempotent request with the same key is still in progress / carried a one-time secret (code conflict, unexpected_step, last_owner, last_sign_in_method).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}412 If-Match does not match the current version (code precondition_failed).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}413 Body exceeds limits.max_body_bytes (code payload_too_large).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}415 Wrong Content-Type (code unsupported_media_type).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}422 Validation failed (code validation_failed, password_policy, idempotency_key_reused); errors maps fields to messages.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}500 Unexpected error (code internal_error); no stack traces or secrets.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}503 Load shedding, realm unavailable or dependency failure (code unavailable, upstream_unavailable). May include Retry-After.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"Retry-After": {
"$ref": "#/components/headers/Retry-After"
}
}Operation updateNotificationSettings · Schema definitions · OpenAPI contract
GET/api/v1/realms/{realm}/templates+
List active templates
Parameters
| Name | Location | Required | Details |
|---|---|---|---|
realm | path | Yes | Realm name (path-based issuer). Unknown realms return 404.{"type":"string"} |
X-Request-Id | header | — | Optional caller-supplied correlation ID (printable ASCII, at most 64 characters); otherwise generated. Echoed in X-Request-Id and problem request_id.{"type":"string","maxLength":64,"pattern":"^[\\x21-\\x7e]+$"} |
Responses
200 OK
application/json
| Field | Type | Required | Description |
|---|---|---|---|
items | array | Yes | |
variables | object | — | Template event type -> allowed variables. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}401 Missing or invalid credentials (code unauthenticated or invalid_credentials). Includes WWW-Authenticate.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"WWW-Authenticate": {
"$ref": "#/components/headers/WWW-Authenticate"
}
}403 Authenticated but not allowed (code forbidden, mfa_required, step_up_required, recent_authentication_required, grant_ceiling_exceeded, impersonation_restricted, account_unavailable, sso_required, recovery_restricted). Step-up problems carry obligations.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}404 Unknown realm or resource, or existence concealed from the caller (code not_found, feature_disabled).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}500 Unexpected error (code internal_error); no stack traces or secrets.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}503 Load shedding, realm unavailable or dependency failure (code unavailable, upstream_unavailable). May include Retry-After.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"Retry-After": {
"$ref": "#/components/headers/Retry-After"
}
}Operation listTemplates · Schema definitions · OpenAPI contract
POST/api/v1/realms/{realm}/templates+
Create or replace a template
Disables the previous active template for the same organization, event type and locale.
Parameters
| Name | Location | Required | Details |
|---|---|---|---|
realm | path | Yes | Realm name (path-based issuer). Unknown realms return 404.{"type":"string"} |
X-Request-Id | header | — | Optional caller-supplied correlation ID (printable ASCII, at most 64 characters); otherwise generated. Echoed in X-Request-Id and problem request_id.{"type":"string","maxLength":64,"pattern":"^[\\x21-\\x7e]+$"} |
Idempotency-Key | header | — | Actor/realm/route-bound idempotency key (API-005) for POST requests, at most 255 characters (422 otherwise), kept for 24 hours; only a digest of the key is stored. The request is identified by its method, exact path and body: a replay with the same path and body returns the stored status and response with Idempotent-Replayed: true; the same key with a different body or another path on the same route (another resource) returns 422 idempotency_key_reused; a request still in progress returns 409. Only successful responses are recorded: when the original request failed (an error or a status of 400 or above) the key is released and a retry runs again. Responses containing one-time secrets (members such as client_secret, token, api_key, access_token, refresh_token, id_token, recovery_codes, secret or webhook_secrets) are never stored or replayed (409 with original_status).{"type":"string","maxLength":255} |
Request body
application/json · required
| Field | Type | Required | Description |
|---|---|---|---|
organization_id | string | — | |
event_type | string | Yes | |
locale | string | — | Defaults to en. |
subject | string | Yes | |
body_text | string | Yes | |
body_html | string | — |
Complete request schema
{
"type": "object",
"properties": {
"organization_id": {
"type": "string"
},
"event_type": {
"type": "string"
},
"locale": {
"type": "string",
"description": "Defaults to en."
},
"subject": {
"type": "string"
},
"body_text": {
"type": "string"
},
"body_html": {
"type": "string"
}
},
"required": [
"event_type",
"subject",
"body_text"
],
"additionalProperties": false
}Responses
201 Created
application/json
| Field | Type | Required | Description |
|---|---|---|---|
id | string | Yes |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"Idempotent-Replayed": {
"$ref": "#/components/headers/Idempotent-Replayed"
}
}400 Malformed request, invalid JSON (duplicate members, unknown fields, wrong types), invalid cursor or invalid transaction (code invalid_request, transaction_invalid, invalid_proof, invitation_invalid).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}401 Missing or invalid credentials (code unauthenticated or invalid_credentials). Includes WWW-Authenticate.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"WWW-Authenticate": {
"$ref": "#/components/headers/WWW-Authenticate"
}
}403 Authenticated but not allowed (code forbidden, mfa_required, step_up_required, recent_authentication_required, grant_ceiling_exceeded, impersonation_restricted, account_unavailable, sso_required, recovery_restricted). Step-up problems carry obligations.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}404 Unknown realm or resource, or existence concealed from the caller (code not_found, feature_disabled).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}409 Conflicts with current state, or an idempotent request with the same key is still in progress / carried a one-time secret (code conflict, unexpected_step, last_owner, last_sign_in_method).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}413 Body exceeds limits.max_body_bytes (code payload_too_large).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}415 Wrong Content-Type (code unsupported_media_type).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}422 Validation failed (code validation_failed, password_policy, idempotency_key_reused); errors maps fields to messages.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}500 Unexpected error (code internal_error); no stack traces or secrets.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}503 Load shedding, realm unavailable or dependency failure (code unavailable, upstream_unavailable). May include Retry-After.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"Retry-After": {
"$ref": "#/components/headers/Retry-After"
}
}Operation upsertTemplate · Schema definitions · OpenAPI contract
DELETE/api/v1/realms/{realm}/templates/{id}+
Disable a template
Parameters
| Name | Location | Required | Details |
|---|---|---|---|
realm | path | Yes | Realm name (path-based issuer). Unknown realms return 404.{"type":"string"} |
id | path | Yes | Resource identifier.{"type":"string"} |
X-Request-Id | header | — | Optional caller-supplied correlation ID (printable ASCII, at most 64 characters); otherwise generated. Echoed in X-Request-Id and problem request_id.{"type":"string","maxLength":64,"pattern":"^[\\x21-\\x7e]+$"} |
Responses
204 No Content
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}401 Missing or invalid credentials (code unauthenticated or invalid_credentials). Includes WWW-Authenticate.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"WWW-Authenticate": {
"$ref": "#/components/headers/WWW-Authenticate"
}
}403 Authenticated but not allowed (code forbidden, mfa_required, step_up_required, recent_authentication_required, grant_ceiling_exceeded, impersonation_restricted, account_unavailable, sso_required, recovery_restricted). Step-up problems carry obligations.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}404 Unknown realm or resource, or existence concealed from the caller (code not_found, feature_disabled).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}409 Conflicts with current state, or an idempotent request with the same key is still in progress / carried a one-time secret (code conflict, unexpected_step, last_owner, last_sign_in_method).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}500 Unexpected error (code internal_error); no stack traces or secrets.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}503 Load shedding, realm unavailable or dependency failure (code unavailable, upstream_unavailable). May include Retry-After.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"Retry-After": {
"$ref": "#/components/headers/Retry-After"
}
}Operation disableTemplate · Schema definitions · OpenAPI contract
POST/api/v1/realms/{realm}/notification-tests+
Send a test message to the caller's verified email
Any request body is ignored.
Parameters
| Name | Location | Required | Details |
|---|---|---|---|
realm | path | Yes | Realm name (path-based issuer). Unknown realms return 404.{"type":"string"} |
X-Request-Id | header | — | Optional caller-supplied correlation ID (printable ASCII, at most 64 characters); otherwise generated. Echoed in X-Request-Id and problem request_id.{"type":"string","maxLength":64,"pattern":"^[\\x21-\\x7e]+$"} |
Idempotency-Key | header | — | Actor/realm/route-bound idempotency key (API-005) for POST requests, at most 255 characters (422 otherwise), kept for 24 hours; only a digest of the key is stored. The request is identified by its method, exact path and body: a replay with the same path and body returns the stored status and response with Idempotent-Replayed: true; the same key with a different body or another path on the same route (another resource) returns 422 idempotency_key_reused; a request still in progress returns 409. Only successful responses are recorded: when the original request failed (an error or a status of 400 or above) the key is released and a retry runs again. Responses containing one-time secrets (members such as client_secret, token, api_key, access_token, refresh_token, id_token, recovery_codes, secret or webhook_secrets) are never stored or replayed (409 with original_status).{"type":"string","maxLength":255} |
Responses
202 Accepted
application/json
| Field | Type | Required | Description |
|---|---|---|---|
job_id | string | Yes | |
note | string | Yes |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"Idempotent-Replayed": {
"$ref": "#/components/headers/Idempotent-Replayed"
}
}401 Missing or invalid credentials (code unauthenticated or invalid_credentials). Includes WWW-Authenticate.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"WWW-Authenticate": {
"$ref": "#/components/headers/WWW-Authenticate"
}
}403 Authenticated but not allowed (code forbidden, mfa_required, step_up_required, recent_authentication_required, grant_ceiling_exceeded, impersonation_restricted, account_unavailable, sso_required, recovery_restricted). Step-up problems carry obligations.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}404 Unknown realm or resource, or existence concealed from the caller (code not_found, feature_disabled).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}409 Conflicts with current state, or an idempotent request with the same key is still in progress / carried a one-time secret (code conflict, unexpected_step, last_owner, last_sign_in_method).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}422 Validation failed (code validation_failed, password_policy, idempotency_key_reused); errors maps fields to messages.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}500 Unexpected error (code internal_error); no stack traces or secrets.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}503 Load shedding, realm unavailable or dependency failure (code unavailable, upstream_unavailable). May include Retry-After.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"Retry-After": {
"$ref": "#/components/headers/Retry-After"
}
}Operation sendNotificationTest · Schema definitions · OpenAPI contract
GET/api/v1/realms/{realm}/notification-jobs+
List notification jobs
Parameters
| Name | Location | Required | Details |
|---|---|---|---|
realm | path | Yes | Realm name (path-based issuer). Unknown realms return 404.{"type":"string"} |
X-Request-Id | header | — | Optional caller-supplied correlation ID (printable ASCII, at most 64 characters); otherwise generated. Echoed in X-Request-Id and problem request_id.{"type":"string","maxLength":64,"pattern":"^[\\x21-\\x7e]+$"} |
cursor | query | — | Opaque cursor from a previous page (next_cursor). Cursors are HMAC-bound to the realm and listing.{"type":"string"} |
limit | query | — | Page size; defaults to limits.default_page_size and is capped at limits.max_page_size.{"type":"integer","minimum":1} |
reference_type | query | — | Filter by reference type.{"type":"string"} |
reference_id | query | — | Filter by reference ID.{"type":"string"} |
Responses
200 OK
application/json
| Field | Type | Required | Description |
|---|---|---|---|
items | array | Yes | |
next_cursor | string | — | Opaque cursor for the next page; empty on the last page (API-004). |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}401 Missing or invalid credentials (code unauthenticated or invalid_credentials). Includes WWW-Authenticate.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"WWW-Authenticate": {
"$ref": "#/components/headers/WWW-Authenticate"
}
}403 Authenticated but not allowed (code forbidden, mfa_required, step_up_required, recent_authentication_required, grant_ceiling_exceeded, impersonation_restricted, account_unavailable, sso_required, recovery_restricted). Step-up problems carry obligations.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}404 Unknown realm or resource, or existence concealed from the caller (code not_found, feature_disabled).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}500 Unexpected error (code internal_error); no stack traces or secrets.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}503 Load shedding, realm unavailable or dependency failure (code unavailable, upstream_unavailable). May include Retry-After.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"Retry-After": {
"$ref": "#/components/headers/Retry-After"
}
}Operation listNotificationJobs · Schema definitions · OpenAPI contract
POST/api/v1/realms/{realm}/delivery-events+
Provider delivery feedback
Bounce and complaint callbacks from the email provider (MSG-007). Authenticated with a Standard Webhooks signature (Webhook-Id, Webhook-Timestamp, Webhook-Signature) over the raw body using delivery.email.events_secret; disabled (404) when no secret is configured. Permanent bounces and complaints suppress optional mail to the address; feedback never verifies or changes an identity.
Parameters
| Name | Location | Required | Details |
|---|---|---|---|
realm | path | Yes | Realm name (path-based issuer). Unknown realms return 404.{"type":"string"} |
X-Request-Id | header | — | Optional caller-supplied correlation ID (printable ASCII, at most 64 characters); otherwise generated. Echoed in X-Request-Id and problem request_id.{"type":"string","maxLength":64,"pattern":"^[\\x21-\\x7e]+$"} |
Request body
application/json · required
| Field | Type | Required | Description |
|---|---|---|---|
events | array | Yes |
Complete request schema
{
"type": "object",
"properties": {
"events": {
"type": "array",
"minItems": 1,
"maxItems": 500,
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"delivered",
"bounce",
"complaint"
]
},
"recipient": {
"type": "string"
},
"provider_message_id": {
"type": "string"
},
"permanent": {
"type": "boolean"
}
},
"required": [
"type"
]
}
}
},
"required": [
"events"
],
"additionalProperties": false
}Responses
200 OK
application/json
| Field | Type | Required | Description |
|---|---|---|---|
applied | integer | — |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}400 Malformed request, invalid JSON (duplicate members, unknown fields, wrong types), invalid cursor or invalid transaction (code invalid_request, transaction_invalid, invalid_proof, invitation_invalid).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}401 Missing or invalid credentials (code unauthenticated or invalid_credentials). Includes WWW-Authenticate.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"WWW-Authenticate": {
"$ref": "#/components/headers/WWW-Authenticate"
}
}403 Authenticated but not allowed (code forbidden, mfa_required, step_up_required, recent_authentication_required, grant_ceiling_exceeded, impersonation_restricted, account_unavailable, sso_required, recovery_restricted). Step-up problems carry obligations.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}404 Unknown realm or resource, or existence concealed from the caller (code not_found, feature_disabled).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}409 Conflicts with current state, or an idempotent request with the same key is still in progress / carried a one-time secret (code conflict, unexpected_step, last_owner, last_sign_in_method).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}422 Validation failed (code validation_failed, password_policy, idempotency_key_reused); errors maps fields to messages.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}500 Unexpected error (code internal_error); no stack traces or secrets.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}Operation recordDeliveryEvents · Schema definitions · OpenAPI contract
POST/api/v1/realms/{realm}/notification-settings/check+
Check delivery configuration
Connects to the configured SMTP server, negotiates TLS and authenticates without sending (MSG-012). Only the failing stage is returned; server responses and credentials go to the operator log.
Parameters
| Name | Location | Required | Details |
|---|---|---|---|
realm | path | Yes | Realm name (path-based issuer). Unknown realms return 404.{"type":"string"} |
X-Request-Id | header | — | Optional caller-supplied correlation ID (printable ASCII, at most 64 characters); otherwise generated. Echoed in X-Request-Id and problem request_id.{"type":"string","maxLength":64,"pattern":"^[\\x21-\\x7e]+$"} |
Responses
200 OK
application/json
| Field | Type | Required | Description |
|---|---|---|---|
ok | boolean | — | |
stage | string | — | ok | connect | greeting | starttls | credentials | authentication | not_applicable |
email_adapter | string | — |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}400 Malformed request, invalid JSON (duplicate members, unknown fields, wrong types), invalid cursor or invalid transaction (code invalid_request, transaction_invalid, invalid_proof, invitation_invalid).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}401 Missing or invalid credentials (code unauthenticated or invalid_credentials). Includes WWW-Authenticate.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
},
"WWW-Authenticate": {
"$ref": "#/components/headers/WWW-Authenticate"
}
}403 Authenticated but not allowed (code forbidden, mfa_required, step_up_required, recent_authentication_required, grant_ceiling_exceeded, impersonation_restricted, account_unavailable, sso_required, recovery_restricted). Step-up problems carry obligations.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}404 Unknown realm or resource, or existence concealed from the caller (code not_found, feature_disabled).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}409 Conflicts with current state, or an idempotent request with the same key is still in progress / carried a one-time secret (code conflict, unexpected_step, last_owner, last_sign_in_method).
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}422 Validation failed (code validation_failed, password_policy, idempotency_key_reused); errors maps fields to messages.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}500 Unexpected error (code internal_error); no stack traces or secrets.
application/problem+json
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | https://auth.proudbase.com/problems/{code} |
title | string | Yes | |
status | integer | Yes | |
code | string | Yes | Stable machine-readable error code.invalid_request | validation_failed | unauthenticated | forbidden | not_found | conflict | precondition_failed | precondition_required | rate_limited | unavailable | internal_error | payload_too_large | unsupported_media_type | step_up_required | recent_authentication_required | mfa_required | recovery_restricted | transaction_invalid | transaction_expired | invalid_credentials | invalid_proof | unexpected_step | password_policy | last_owner | grant_ceiling_exceeded | impersonation_denied | impersonation_restricted | feature_disabled | invitation_invalid | last_sign_in_method | idempotency_key_reused | account_unavailable | sso_required | upstream_unavailable |
detail | string | — | Client-safe detail; never contains secrets. |
errors | object | — | Field name -> validation message. |
request_id | string | — | Correlation identifier, equal to the X-Request-Id response header. |
obligations | array | — | Present on step-up / recent-authentication / MFA problems. |
original_status | integer | — | Present when an idempotent replay is refused because the original response carried a one-time secret. |
Response headers
{
"X-Request-Id": {
"$ref": "#/components/headers/X-Request-Id"
}
}Operation checkNotificationDelivery · Schema definitions · OpenAPI contract