Per-scope step-up configuration. Each entry is either delegated
to a delegation hook on your backend, resolved directly by
Prelude using a static decision, or routed to a preformatted
Prelude-managed flow (prld:phone:register,
prld:email:register).
HTTPS endpoint exposing the JWKS used to verify tokens issued
by your backend for custom steps. Required when at least one
entry in allowed_scopes uses the delegated mode.
{
"code": "invalid_request",
"status": "bad_request",
"message": "The request body is invalid."
}
{
"code": "app_not_found",
"status": "not_found",
"message": "The application was not found."
}
{
"code": "step_up_config_already_exists",
"status": "conflict",
"message": "A step-up configuration already exists for this application."
}
{"docsConfig":{"theme":"maple","$schema":"https://mintlify.com/docs.json","name":"Prelude Docs","colors":{"primary":"#3D16FF","light":"#83dd05","dark":"#3a5ccc"},"logo":{"light":"https://mintcdn.com/ding/Oh9xTmLZLfeVDwbL/images/logo/light.svg?fit=max\u0026auto=format\u0026n=Oh9xTmLZLfeVDwbL\u0026q=85\u0026s=592853f53e252f58d8ca969053ecde2c","dark":"https://mintcdn.com/ding/Oh9xTmLZLfeVDwbL/images/logo/dark.svg?fit=max\u0026auto=format\u0026n=Oh9xTmLZLfeVDwbL\u0026q=85\u0026s=b353ee028ccba0ef11d98646ada1d585"},"favicon":"https://mintcdn.com/ding/mO4m5aLNuvukvWgO/favicon.png?fit=max\u0026auto=format\u0026n=mO4m5aLNuvukvWgO\u0026q=85\u0026s=31138ef6929c5da3b6fbe480c91d653f","appearance":{"default":"system","strict":false},"background":{"decoration":"gradient","color":{"light":"#fff","dark":"#060A06"}},"navbar":{"links":[{"href":"https://prelude.so/contact","label":"Book a demo"}],"primary":{"type":"button","label":"Get started","href":"https://app.prelude.so"}},"footer":{"socials":{"x":"https://x.com/@UsePrelude","github":"https://github.com/prelude-so","linkedin":"https://www.linkedin.com/company/prelude-so"},"links":[{"header":"Pricing","items":[{"label":"Check all prices","href":"https://prelude.so/countries"},{"label":"US Prices","href":"https://prelude.so/countries/us"},{"label":"France Prices","href":"https://prelude.so/countries/fr"},{"label":"UK Prices","href":"https://prelude.so/countries/gb"},{"label":"Germany Prices","href":"https://prelude.so/countries/de"}]},{"header":"About Us","items":[{"label":"Blog","href":"https://prelude.so/blog"},{"label":"Customer Story","href":"https://prelude.so/customer-stories"},{"label":"Careers","href":"https://jobs.ashbyhq.com/Prelude"}]},{"header":"Resources","items":[{"label":"Status Page","href":"https://status.prelude.so"},{"label":"Trust Center","href":"https://trust.prelude.so/"}]}]},"seo":{"indexing":"all"},"fonts":{"family":"Inter"},"integrations":{"ga4":{"measurementId":"G-CQ4YD24X1M"},"cookies":{"key":"mint_prldc","value":"true"}},"contextual":{"options":["copy","cursor","chatgpt","claude","mcp"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"ding","hasAudioNarration":false,"actualSubdomain":"ding","customDomains":["docs.prelude.so"],"gitSource":{"type":"github","owner":"ding-live","repo":"monorepo","deployBranch":"master","contentDirectory":"doc","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6adb708f29f87a0e412d6555","collectionId":"12bafa73-2071-46e4-bf3b-f9dbccc8903a","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6adb708f29f87a0e412d6555"},"feedback":{"thumbs":false,"edits":false,"issues":false},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6adb708f29f87a0e412d6555","clientVersion":"0.0.3966","searchFilterCounts":[{"language":"default","tag":"Auth","count":185},{"language":"default","tag":"API Reference","count":151},{"language":"default","tag":"Management","count":105},{"language":"default","tag":"Documentation","count":100},{"language":"default","tag":"Frontend","count":38},{"language":"default","tag":"Verify","count":33},{"language":"default","tag":"Integration Guide","count":26},{"language":"default","tag":"Watch","count":23},{"language":"default","tag":"Notify","count":22},{"language":"default","tag":"Frontend SDKs","count":19}]},"assistantConfig":{"enableAskAiButton":true,"enableAskAiSearchBar":true,"deflection":{"enabled":true,"email":"support@prelude.so","showHelpButton":true}},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"privacy":{"consentBanner":{"enabled":true}},"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".update-container ul{list-style:none!important;padding-left:0!important}.update-container ul li::marker{content:none}"}],"page":{"pagePath":"auth/api-reference/management/config/stepup/create-stepup-config","slug":"/auth/api-reference/management/config/stepup/create-stepup-config","pageMetadata":{"openapi":"post /v2/session/apps/{appID}/config/stepup","title":"Create step-up config","description":"Create a step-up authentication configuration for the application.","href":"/auth/api-reference/management/config/stepup/create-stepup-config"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Create a step-up authentication configuration for the application.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"openapi":"post /v2/session/apps/{appID}/config/stepup","title":"Create step-up config","description":"Create a step-up authentication configuration for the application.","href":"/auth/api-reference/management/config/stepup/create-stepup-config"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Config - Step-up"],"summary":"Create step-up config","description":"Create a step-up authentication configuration for the application.","operationId":"createStepUpConfig","requestBody":"ac5e52c3-0142-4cc1-aa35-a53c4ee5177b","responses":{"201":"39e9eb87-c716-47ea-afa8-2cee8ab1e87e","400":"e35a3634-5c54-483b-a7ec-d0499c6cf34b","404":"99b2ca3a-6209-4f7a-916d-0e3278ebaf83","409":"441ee046-b263-4658-b2e6-43d121e8a6e0"},"method":"post","type":"path","servers":["8edc468c-fadb-4403-ae46-16c6245b57c4"],"security":["87c2bddb-7f41-4f58-8f37-5313f4059fa9"],"path":"/v2/session/apps/{appID}/config/stepup","baseUrlOptions":["https://api.prelude.dev"],"title":"Create step-up config","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"d6b6dbe5-13f3-4f08-8878-2d97ff398228":{"in":"path","name":"appID","required":true,"description":"The id of the app the request refers to.","schema":{"type":"string","description":"The id of the app the request refers to.\nAn application's unique identifier.","examples":["54e9ujn","fvua38g"],"isRequired":true,"uniqueKey":"","typeLabel":"string"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"step_keys":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","examples":["high_value_transaction"],"isRequired":true,"uniqueKey":"step_keys.items.[INDEX].key","typeLabel":"string"},"description":{"type":"string","examples":["Triggered for transactions above $10,000"],"isRequired":true,"uniqueKey":"step_keys.items.[INDEX].description","typeLabel":"string"}},"required":["key","description"],"uniqueKey":"step_keys.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"step_keys","typeLabel":"object[]"},"allowed_scopes":{"type":"array","description":"Per-scope step-up configuration. Each entry is either delegated\nto a delegation hook on your backend, resolved directly by\nPrelude using a static decision, or routed to a preformatted\nPrelude-managed flow (`prld:phone:register`,\n`prld:email:register`).\n","items":{"type":"object","description":"Per-scope step-up configuration. Set `mode` to:\n- `delegated` to call your delegation hook for this scope.\n- `direct` to serve a static decision without any hook call.\n- `managed` to route to a preformatted Prelude-driven flow. Reserved\n for `prld:phone:register` and `prld:email:register`.\n\nWhen `mode` is `delegated`, the `delegated` field is required and\n`direct` must be omitted. When `mode` is `direct`, the `direct`\nfield is required and `delegated` must be omitted. When `mode` is\n`managed`, both `delegated` and `direct` must be omitted; the flow\nis fully configured by Prelude.\n\nA scope may appear more than once in `allowed_scopes`:\n- Multiple `direct` entries are allowed as long as each\n `(scope, identifier_type)` pair is unique — useful when the step\n differs per identifier type (e.g. `verify_email` vs `verify_sms`).\n- At most one `delegated` entry per scope. When present alongside\n `direct` entries, it acts as a fallback and is invoked when no\n `direct` entry matches the user's identifier types at runtime.\n- At most one `managed` entry per scope. The scope must be a\n preformatted scope (`prld:phone:register` or\n `prld:email:register`).\n\nAt runtime Prelude picks the first matching `direct` entry in\ndeclaration order, or falls back to the delegated entry. For\nmanaged entries, Prelude runs the preformatted flow directly. If\nnothing matches, the request is rejected.\n","properties":{"scope":{"type":"string","description":"The scope this entry configures.","examples":["transfer"],"isRequired":true,"uniqueKey":"allowed_scopes.items.[INDEX].scope","typeLabel":"string"},"mode":{"type":"string","enum":["delegated","direct","managed"],"description":"How the step-up decision for this scope is produced. `managed`\nis reserved for the preformatted scopes\n`prld:phone:register` and `prld:email:register`.\n","isRequired":true,"uniqueKey":"allowed_scopes.items.[INDEX].mode","typeLabel":"enum\u003cstring>"},"delegated":{"type":"object","description":"Configuration of a scope whose decision is delegated to the\ncustomer's delegation hook.\n","properties":{"delegation_hook":{"type":"string","format":"uri","description":"HTTPS endpoint Prelude calls for this scope.","examples":["https://api.example.com/stepup/signal"],"isRequired":true,"uniqueKey":"allowed_scopes.items.[INDEX].delegated.delegation_hook","typeLabel":"string\u003curi>"}},"required":["delegation_hook"],"uniqueKey":"allowed_scopes.items.[INDEX].delegated","typeLabel":"object"},"direct":{"type":"object","description":"Static step-up decision served directly by Prelude for a scope,\nwithout any hook call. The decision applies only to users who hold\nat least one identifier of the listed `identifier_types`.\n","properties":{"identifier_types":{"type":"array","description":"Identifier types the user must hold for this decision to apply.\nAt least one identifier type is required.\n","minItems":1,"items":{"type":"string","enum":["email_address","phone_number"],"uniqueKey":"allowed_scopes.items.[INDEX].direct.identifier_types.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"allowed_scopes.items.[INDEX].direct.identifier_types","typeLabel":"enum\u003cstring>[]"},"status":{"type":"string","enum":["continue","review","block"],"description":"`continue` grants the scope immediately, `review` requires the\nuser to complete one or more steps, `block` denies the scope.\n","isRequired":true,"uniqueKey":"allowed_scopes.items.[INDEX].direct.status","typeLabel":"enum\u003cstring>"},"granted_for":{"type":"integer","minimum":0,"maximum":86400,"description":"Duration in seconds for which the scope is granted. Required\nwhen `status` is `continue` or `review`. For `session-bound` and\n`profile-bound` grants, a value below 1 defaults to 600 seconds.\n","examples":[3600],"uniqueKey":"allowed_scopes.items.[INDEX].direct.granted_for","typeLabel":"integer"},"grant_mode":{"type":"string","enum":["single-use","session-bound","profile-bound"],"description":"How the granted scope is attached. Required when `status` is\n`continue` or `review`.\n","uniqueKey":"allowed_scopes.items.[INDEX].direct.grant_mode","typeLabel":"enum\u003cstring>"},"steps":{"type":"array","description":"Steps the user must complete, in order. Required and non-empty\nwhen `status` is `review`. Must be omitted otherwise.\n","items":{"type":"object","properties":{"order":{"type":"integer","description":"Position of this step in the sequence (starts at 1).","minimum":1,"examples":[1],"isRequired":true,"uniqueKey":"allowed_scopes.items.[INDEX].direct.steps.items.[INDEX].order","typeLabel":"integer"},"key":{"type":"string","pattern":"^[a-zA-Z0-9.\\-_:]+$","description":"Step identifier. Use `verify_sms` or `verify_email` for\nPrelude-owned steps, or any custom key registered in\n`step_keys`.\n","examples":["verify_sms"],"isRequired":true,"uniqueKey":"allowed_scopes.items.[INDEX].direct.steps.items.[INDEX].key","typeLabel":"string"},"expiration_duration":{"type":"integer","description":"Time in seconds the user has to complete this step.","minimum":0,"maximum":86400,"examples":[600],"isRequired":true,"uniqueKey":"allowed_scopes.items.[INDEX].direct.steps.items.[INDEX].expiration_duration","typeLabel":"integer"}},"required":["order","key","expiration_duration"],"uniqueKey":"allowed_scopes.items.[INDEX].direct.steps.items.[INDEX]","typeLabel":"object"},"uniqueKey":"allowed_scopes.items.[INDEX].direct.steps","typeLabel":"object[]"}},"required":["identifier_types","status"],"uniqueKey":"allowed_scopes.items.[INDEX].direct","typeLabel":"object"}},"required":["scope","mode"],"uniqueKey":"allowed_scopes.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"allowed_scopes","typeLabel":"object[]"},"jwks_url":{"type":"string","format":"uri","description":"HTTPS endpoint exposing the JWKS used to verify tokens issued\nby your backend for custom steps. Required when at least one\nentry in `allowed_scopes` uses the `delegated` mode.\n","examples":["https://api.example.com/.well-known/jwks.json"],"uniqueKey":"jwks_url","typeLabel":"string\u003curi>"}},"required":["step_keys","allowed_scopes"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"step_keys":[{"key":"high_value_transaction","description":"Triggered for transactions above $10,000"}],"allowed_scopes":[{"scope":"transfer"}],"jwks_url":"https://api.example.com/.well-known/jwks.json"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"39e9eb87-c716-47ea-afa8-2cee8ab1e87e":{"description":"Created","content":{"application/json":{"schema":{"type":"object","properties":{"config":{"type":"object","properties":{"jwks_url":{"type":"string","format":"uri","description":"HTTPS endpoint exposing the JWKS used to verify tokens issued\nby your backend for custom steps. Required when at least one\nentry in `allowed_scopes` uses the `delegated` mode.\n","examples":["https://api.example.com/.well-known/jwks.json"],"isRequired":true,"uniqueKey":"config.jwks_url","typeLabel":"string\u003curi>"},"step_keys":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","examples":["high_value_transaction"],"isRequired":true,"uniqueKey":"config.step_keys.items.[INDEX].key","typeLabel":"string"},"description":{"type":"string","examples":["Triggered for transactions above $10,000"],"isRequired":true,"uniqueKey":"config.step_keys.items.[INDEX].description","typeLabel":"string"}},"required":["key","description"],"uniqueKey":"config.step_keys.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"config.step_keys","typeLabel":"object[]"},"allowed_scopes":{"type":"array","description":"Per-scope step-up configuration. Each entry is either delegated\nto a delegation hook on your backend, resolved directly by\nPrelude using a static decision, or routed to a preformatted\nPrelude-managed flow (`prld:phone:register`,\n`prld:email:register`).\n","items":{"type":"object","description":"Per-scope step-up configuration. Set `mode` to:\n- `delegated` to call your delegation hook for this scope.\n- `direct` to serve a static decision without any hook call.\n- `managed` to route to a preformatted Prelude-driven flow. Reserved\n for `prld:phone:register` and `prld:email:register`.\n\nWhen `mode` is `delegated`, the `delegated` field is required and\n`direct` must be omitted. When `mode` is `direct`, the `direct`\nfield is required and `delegated` must be omitted. When `mode` is\n`managed`, both `delegated` and `direct` must be omitted; the flow\nis fully configured by Prelude.\n\nA scope may appear more than once in `allowed_scopes`:\n- Multiple `direct` entries are allowed as long as each\n `(scope, identifier_type)` pair is unique — useful when the step\n differs per identifier type (e.g. `verify_email` vs `verify_sms`).\n- At most one `delegated` entry per scope. When present alongside\n `direct` entries, it acts as a fallback and is invoked when no\n `direct` entry matches the user's identifier types at runtime.\n- At most one `managed` entry per scope. The scope must be a\n preformatted scope (`prld:phone:register` or\n `prld:email:register`).\n\nAt runtime Prelude picks the first matching `direct` entry in\ndeclaration order, or falls back to the delegated entry. For\nmanaged entries, Prelude runs the preformatted flow directly. If\nnothing matches, the request is rejected.\n","properties":{"scope":{"type":"string","description":"The scope this entry configures.","examples":["transfer"],"isRequired":true,"uniqueKey":"config.allowed_scopes.items.[INDEX].scope","typeLabel":"string"},"mode":{"type":"string","enum":["delegated","direct","managed"],"description":"How the step-up decision for this scope is produced. `managed`\nis reserved for the preformatted scopes\n`prld:phone:register` and `prld:email:register`.\n","isRequired":true,"uniqueKey":"config.allowed_scopes.items.[INDEX].mode","typeLabel":"enum\u003cstring>"},"delegated":{"type":"object","description":"Configuration of a scope whose decision is delegated to the\ncustomer's delegation hook.\n","properties":{"delegation_hook":{"type":"string","format":"uri","description":"HTTPS endpoint Prelude calls for this scope.","examples":["https://api.example.com/stepup/signal"],"isRequired":true,"uniqueKey":"config.allowed_scopes.items.[INDEX].delegated.delegation_hook","typeLabel":"string\u003curi>"}},"required":["delegation_hook"],"uniqueKey":"config.allowed_scopes.items.[INDEX].delegated","typeLabel":"object"},"direct":{"type":"object","description":"Static step-up decision served directly by Prelude for a scope,\nwithout any hook call. The decision applies only to users who hold\nat least one identifier of the listed `identifier_types`.\n","properties":{"identifier_types":{"type":"array","description":"Identifier types the user must hold for this decision to apply.\nAt least one identifier type is required.\n","minItems":1,"items":{"type":"string","enum":["email_address","phone_number"],"uniqueKey":"config.allowed_scopes.items.[INDEX].direct.identifier_types.items.[INDEX]","typeLabel":"enum\u003cstring>"},"isRequired":true,"uniqueKey":"config.allowed_scopes.items.[INDEX].direct.identifier_types","typeLabel":"enum\u003cstring>[]"},"status":{"type":"string","enum":["continue","review","block"],"description":"`continue` grants the scope immediately, `review` requires the\nuser to complete one or more steps, `block` denies the scope.\n","isRequired":true,"uniqueKey":"config.allowed_scopes.items.[INDEX].direct.status","typeLabel":"enum\u003cstring>"},"granted_for":{"type":"integer","minimum":0,"maximum":86400,"description":"Duration in seconds for which the scope is granted. Required\nwhen `status` is `continue` or `review`. For `session-bound` and\n`profile-bound` grants, a value below 1 defaults to 600 seconds.\n","examples":[3600],"uniqueKey":"config.allowed_scopes.items.[INDEX].direct.granted_for","typeLabel":"integer"},"grant_mode":{"type":"string","enum":["single-use","session-bound","profile-bound"],"description":"How the granted scope is attached. Required when `status` is\n`continue` or `review`.\n","uniqueKey":"config.allowed_scopes.items.[INDEX].direct.grant_mode","typeLabel":"enum\u003cstring>"},"steps":{"type":"array","description":"Steps the user must complete, in order. Required and non-empty\nwhen `status` is `review`. Must be omitted otherwise.\n","items":{"type":"object","properties":{"order":{"type":"integer","description":"Position of this step in the sequence (starts at 1).","minimum":1,"examples":[1],"isRequired":true,"uniqueKey":"config.allowed_scopes.items.[INDEX].direct.steps.items.[INDEX].order","typeLabel":"integer"},"key":{"type":"string","pattern":"^[a-zA-Z0-9.\\-_:]+$","description":"Step identifier. Use `verify_sms` or `verify_email` for\nPrelude-owned steps, or any custom key registered in\n`step_keys`.\n","examples":["verify_sms"],"isRequired":true,"uniqueKey":"config.allowed_scopes.items.[INDEX].direct.steps.items.[INDEX].key","typeLabel":"string"},"expiration_duration":{"type":"integer","description":"Time in seconds the user has to complete this step.","minimum":0,"maximum":86400,"examples":[600],"isRequired":true,"uniqueKey":"config.allowed_scopes.items.[INDEX].direct.steps.items.[INDEX].expiration_duration","typeLabel":"integer"}},"required":["order","key","expiration_duration"],"uniqueKey":"config.allowed_scopes.items.[INDEX].direct.steps.items.[INDEX]","typeLabel":"object"},"uniqueKey":"config.allowed_scopes.items.[INDEX].direct.steps","typeLabel":"object[]"}},"required":["identifier_types","status"],"uniqueKey":"config.allowed_scopes.items.[INDEX].direct","typeLabel":"object"}},"required":["scope","mode"],"uniqueKey":"config.allowed_scopes.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"config.allowed_scopes","typeLabel":"object[]"},"created_at":{"type":"string","format":"date-time","examples":["2025-03-15T10:30:00Z"],"isRequired":true,"uniqueKey":"config.created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"type":"string","format":"date-time","examples":["2025-03-15T12:00:00Z"],"isRequired":true,"uniqueKey":"config.updated_at","typeLabel":"string\u003cdate-time>"}},"required":["jwks_url","step_keys","allowed_scopes","created_at","updated_at"],"isRequired":true,"uniqueKey":"config","typeLabel":"object"}},"required":["config"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"config":{"jwks_url":"https://api.example.com/.well-known/jwks.json","step_keys":[{"key":"high_value_transaction","description":"Triggered for transactions above $10,000"}],"allowed_scopes":[{"scope":"transfer","mode":"delegated","delegated":{"delegation_hook":"https://api.example.com/stepup/signal"},"direct":{"identifier_types":["email_address"],"status":"continue","granted_for":3600,"grant_mode":"single-use","steps":[{"order":1,"key":"verify_sms","expiration_duration":600}]}}],"created_at":"2025-03-15T10:30:00Z","updated_at":"2025-03-15T12:00:00Z"}}}},"exampleType":"generated"}},"exampleType":"generated"},"e35a3634-5c54-483b-a7ec-d0499c6cf34b":{"description":"Bad Request","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","enum":["invalid_request"],"examples":["invalid_request"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"status":{"type":"string","enum":["bad_request"],"examples":["bad_request"],"isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"message":{"type":"string","examples":["The request body is invalid."],"isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["code","status","message"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"invalid_request","status":"bad_request","message":"The request body is invalid."}}},"exampleType":"generated"}},"exampleType":"generated"},"99b2ca3a-6209-4f7a-916d-0e3278ebaf83":{"description":"Not Found","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","enum":["app_not_found"],"examples":["app_not_found"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"status":{"type":"string","enum":["not_found"],"examples":["not_found"],"isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"message":{"type":"string","examples":["The application was not found."],"isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["code","status","message"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"app_not_found","status":"not_found","message":"The application was not found."}}},"exampleType":"generated"}},"exampleType":"generated"},"441ee046-b263-4658-b2e6-43d121e8a6e0":{"description":"Conflict","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","enum":["step_up_config_already_exists"],"examples":["step_up_config_already_exists"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"status":{"type":"string","enum":["conflict"],"examples":["conflict"],"isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"message":{"type":"string","examples":["A step-up configuration already exists for this application."],"isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["code","status","message"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"step_up_config_already_exists","status":"conflict","message":"A step-up configuration already exists for this application."}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"87c2bddb-7f41-4f58-8f37-5313f4059fa9":{"Authorization":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"Authorization"}}},"servers":{"8edc468c-fadb-4403-ae46-16c6245b57c4":{"url":"https://api.prelude.dev","description":"Production server"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"Authorization"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"Authorization","name":"Authorization"}],"title":"Authorization"}]},"originalFileLocation":"api-reference/session-management.yml"},"subdomain":"ding","siteName":"Prelude Docs","title":"Create step-up config - Prelude Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-05-18T18:28:01.235Z","originalFileLocation":"auth/api-reference/management/config/stepup/create-stepup-config.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Create a step-up authentication configuration for the application.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Prelude Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/ding/XcVFWlvRbYgvqL60/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/ding/XcVFWlvRbYgvqL60/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/ding/XcVFWlvRbYgvqL60/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/ding/XcVFWlvRbYgvqL60/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/ding/XcVFWlvRbYgvqL60/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/ding/XcVFWlvRbYgvqL60/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/ding/XcVFWlvRbYgvqL60/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/ding/XcVFWlvRbYgvqL60/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/ding/XcVFWlvRbYgvqL60/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create step-up config - Prelude Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Create a step-up authentication configuration for the application.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Prelude Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.prelude.so/auth/api-reference/management/config/stepup/create-stepup-config\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://ding.mintlify.app/_mintlify/api/og/v2?division=Step-Up+Config+API\u0026amp;title=Create+step-up+config\u0026amp;description=Create+a+step-up+authentication+configuration+for+the+application.\u0026amp;theme=6928357f80dea69981b41e48\u0026amp;signature=0bd6531eb875c8a9c82f1369e499dc8d949cf741a7d5fe76edd26c3a82a62297\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Create step-up config - Prelude Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Create a step-up authentication configuration for the application.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://ding.mintlify.app/_mintlify/api/og/v2?division=Step-Up+Config+API\u0026amp;title=Create+step-up+config\u0026amp;description=Create+a+step-up+authentication+configuration+for+the+application.\u0026amp;theme=6928357f80dea69981b41e48\u0026amp;signature=0bd6531eb875c8a9c82f1369e499dc8d949cf741a7d5fe76edd26c3a82a62297\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/ding/XcVFWlvRbYgvqL60/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Prelude Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3D16FF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.prelude.so/auth/api-reference/management/config/stepup/create-stepup-config\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/auth/api-reference/management/config/stepup/create-stepup-config.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.prelude.so/#organization\",\"name\":\"Prelude Docs\",\"url\":\"https://docs.prelude.so\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/ding/Oh9xTmLZLfeVDwbL/images/logo/light.svg?fit=max\u0026auto=format\u0026n=Oh9xTmLZLfeVDwbL\u0026q=85\u0026s=592853f53e252f58d8ca969053ecde2c\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.prelude.so#website\",\"name\":\"Prelude Docs\",\"url\":\"https://docs.prelude.so\",\"publisher\":{\"@id\":\"https://docs.prelude.so/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.prelude.so/auth/api-reference/management/config/stepup/create-stepup-config#webpage\",\"url\":\"https://docs.prelude.so/auth/api-reference/management/config/stepup/create-stepup-config\",\"name\":\"Create step-up config\",\"description\":\"Create a step-up authentication configuration for the application.\",\"dateModified\":\"2026-05-18T18:28:01.235Z\",\"isPartOf\":{\"@id\":\"https://docs.prelude.so#website\"},\"breadcrumb\":{\"@id\":\"https://docs.prelude.so/auth/api-reference/management/config/stepup/create-stepup-config#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.prelude.so/auth/api-reference/management/config/stepup/create-stepup-config#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"API Reference\",\"item\":\"https://docs.prelude.so/auth/api-reference/frontend/start-login-otp\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Management\",\"item\":\"https://docs.prelude.so/auth/api-reference/management/mode/get-mode\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Step-Up Config API\",\"item\":\"https://docs.prelude.so/auth/api-reference/management/config/stepup/get-stepup-config\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Create step-up config\",\"item\":\"https://docs.prelude.so/auth/api-reference/management/config/stepup/create-stepup-config\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.prelude.so/auth/api-reference/management/config/stepup/create-stepup-config#apireference\",\"headline\":\"Create step-up config\",\"name\":\"Create step-up config\",\"description\":\"Create a step-up authentication configuration for the application.\",\"url\":\"https://docs.prelude.so/auth/api-reference/management/config/stepup/create-stepup-config\",\"mainEntityOfPage\":{\"@id\":\"https://docs.prelude.so/auth/api-reference/management/config/stepup/create-stepup-config#webpage\"},\"dateModified\":\"2026-05-18T18:28:01.235Z\",\"publisher\":{\"@id\":\"https://docs.prelude.so/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.prelude.so#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Prelude Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Prelude Docs","nav":{"global":null,"anchors":[{"anchor":"Overview","pages":[{"title":"Overview","href":"/introduction/welcome-to-prelude"}]},{"anchor":"Verify","icon":"fingerprint","versions":[{"version":"v2","pages":[{"group":"Documentation","pages":[{"title":"Introduction to Verify","sidebarTitle":"Introduction","icon":"fingerprint","href":"/verify/v2/documentation/introduction"},{"title":"Quickstart","icon":"circle-bolt","href":"/verify/v2/documentation/quickstart"},{"title":"Verification Lifecycle","icon":"arrow-progress","sidebarTitle":"Verification Lifecycle","href":"/verify/v2/documentation/lifecycle"},{"title":"Prevent Fraud","icon":"binoculars","href":"/verify/v2/documentation/prevent-fraud"},{"title":"Fraud Protection Settings","icon":"sliders","href":"/verify/v2/documentation/fraud-protection-settings"},{"title":"Message Content","sidebarTitle":"Message Content","icon":"message-pen","href":"/verify/v2/documentation/content"},{"title":"Custom Sender IDs","sidebarTitle":"Custom Sender IDs","icon":"message-smile","href":"/verify/v2/documentation/sender-id"},{"title":"Connect your WhatsApp Business Account to Prelude","sidebarTitle":"WhatsApp BSP","icon":"whatsapp","href":"/verify/v2/documentation/whatsapp"},{"title":"Webhook for the Verify API","sidebarTitle":"Webhook","icon":"webhook","href":"/verify/v2/documentation/webhook"},{"title":"Test Numbers","sidebarTitle":"Test Numbers","icon":"vial-circle-check","href":"/verify/v2/documentation/testing"},{"title":"Silent Verification","sidebarTitle":"Silent Verification","icon":"message-slash","href":"/verify/v2/documentation/silent-verification"},{"title":"Email Verification","sidebarTitle":"Email Verification","icon":"envelope","href":"/verify/v2/documentation/email-verification"},{"group":"Integrations","icon":"pipe-circle-check","pages":[{"title":"Prelude API v2 and Firebase Auth integration","sidebarTitle":"Firebase","icon":"dot","href":"/verify/v2/documentation/integrations/firebase"},{"title":"Integrate Prelude with Supabase phone authentication","sidebarTitle":"Supabase","icon":"dot","href":"/verify/v2/documentation/integrations/supabase"},{"title":"Integrate Prelude with Auth0 for phone verification","sidebarTitle":"Auth0","icon":"dot","href":"/verify/v2/documentation/integrations/auth0"}]}]},{"group":"API Reference","pages":[{"openapi":"post /v2/verification","title":"Create or retry a verification","href":"/verify/v2/api-reference/create-or-retry-a-verification"},{"openapi":"post /v2/verification/check","title":"Check a code","href":"/verify/v2/api-reference/check-a-code"},{"group":"History","icon":"table-list","pages":[{"openapi":"get /v2/verification/phone/history","title":"List phone verifications","href":"/verify/v2/api-reference/history/list-phone-verifications"},{"openapi":"get /v2/verification/phone/history/{id}","title":"Get a phone verification","href":"/verify/v2/api-reference/history/get-a-phone-verification"}]},{"group":"Management","icon":"wrench","pages":[{"title":"Overview","sidebarTitle":"Overview","icon":"wrench","href":"/verify/v2/api-reference/management/overview"},{"group":"Sender ID","pages":[{"openapi":"get /v2/verification/management/sender-id","title":"List available Sender IDs","href":"/verify/v2/api-reference/management/sender-id/list-sender-ids"},{"openapi":"post /v2/verification/management/sender-id","title":"Submit a sender ID","href":"/verify/v2/api-reference/management/sender-id/submit-sender-id"}]},{"group":"Phone Number","pages":[{"openapi":"get /v2/verification/management/phone-numbers/{action}","title":"Get phone numbers allow or block list","href":"/verify/v2/api-reference/management/phone-numbers/get-phone-numbers"},{"openapi":"post /v2/verification/management/phone-numbers/{action}","title":"Add phone number to allow or block list","href":"/verify/v2/api-reference/management/phone-numbers/add-phone-number"},{"openapi":"delete /v2/verification/management/phone-numbers/{action}","title":"Delete phone number from allow or block list","href":"/verify/v2/api-reference/management/phone-numbers/delete-phone-number"}]},{"group":"Templates","pages":[{"openapi":"get /v2/verification/management/templates","title":"List OTP templates","href":"/verify/v2/api-reference/management/templates/list-templates"},{"openapi":"post /v2/verification/management/templates","title":"Create an OTP template","href":"/verify/v2/api-reference/management/templates/create-template"},{"openapi":"get /v2/verification/management/templates/{template_id}","title":"Retrieve an OTP template","href":"/verify/v2/api-reference/management/templates/get-template"},{"openapi":"patch /v2/verification/management/templates/{template_id}","title":"Update an OTP template","href":"/verify/v2/api-reference/management/templates/update-template"},{"openapi":"delete /v2/verification/management/templates/{template_id}","title":"Delete an OTP template","href":"/verify/v2/api-reference/management/templates/delete-template"}]},{"group":"Sandboxed Numbers","pages":[{"openapi":"get /v2/verification/management/phone-numbers/sandbox","title":"Get sandbox phone numbers","href":"/verify/v2/api-reference/management/phone-numbers/sandbox/get-sandbox-phone-numbers"},{"openapi":"put /v2/verification/management/phone-numbers/sandbox","title":"Add a sandbox phone number","href":"/verify/v2/api-reference/management/phone-numbers/sandbox/add-sandbox-phone-number"},{"openapi":"delete /v2/verification/management/phone-numbers/sandbox/{phone_number}","title":"Delete a sandbox phone number","href":"/verify/v2/api-reference/management/phone-numbers/sandbox/delete-sandbox-phone-number"}]}]}]}]}]},{"anchor":"Auth","icon":"tickets","pages":[{"group":"Documentation","pages":[{"title":"Introduction to Auth","sidebarTitle":"Introduction","icon":"tickets","href":"/auth/documentation/introduction"},{"group":"Integration Guide","icon":"code","pages":[{"title":"Integration Guide","sidebarTitle":"Introduction","icon":"code","href":"/auth/documentation/integration-guide/introduction"},{"title":"OTP Login","sidebarTitle":"OTP Login","icon":"message-code","href":"/auth/documentation/integration-guide/otp-login"},{"title":"Password Authentication","sidebarTitle":"Password Authentication","icon":"key","href":"/auth/documentation/integration-guide/password-authentication"},{"title":"Passkey Authentication","sidebarTitle":"Passkey","icon":"fingerprint","href":"/auth/documentation/integration-guide/passkey"},{"title":"MCP Login","sidebarTitle":"MCP Login","icon":"plug","href":"/auth/documentation/integration-guide/mcp"},{"title":"SSO Login","sidebarTitle":"SSO Login","icon":"right-to-bracket","href":"/auth/documentation/integration-guide/sso"},{"group":"Social Login","icon":"users","pages":[{"title":"Introduction","sidebarTitle":"Introduction","icon":"book-open","href":"/auth/documentation/integration-guide/social-login/introduction"},{"title":"Google","sidebarTitle":"Google","icon":"google","href":"/auth/documentation/integration-guide/social-login/google"},{"title":"Apple","sidebarTitle":"Apple","icon":"apple","href":"/auth/documentation/integration-guide/social-login/apple"},{"title":"Microsoft","sidebarTitle":"Microsoft","icon":"microsoft","href":"/auth/documentation/integration-guide/social-login/microsoft"},{"title":"GitHub","sidebarTitle":"GitHub","icon":"github","href":"/auth/documentation/integration-guide/social-login/github"},{"title":"Okta","sidebarTitle":"Okta","icon":"lock","href":"/auth/documentation/integration-guide/social-login/okta"},{"title":"Facebook","sidebarTitle":"Facebook","icon":"facebook","href":"/auth/documentation/integration-guide/social-login/facebook"},{"title":"LinkedIn","sidebarTitle":"LinkedIn","icon":"linkedin","href":"/auth/documentation/integration-guide/social-login/linkedin"}]},{"group":"SAML SSO","icon":"key","pages":[{"title":"Introduction","sidebarTitle":"Introduction","icon":"book-open","href":"/auth/documentation/integration-guide/saml/introduction"},{"title":"Okta","sidebarTitle":"Okta","icon":"lock","href":"/auth/documentation/integration-guide/saml/okta"},{"title":"Google Workspace","sidebarTitle":"Google","icon":"google","href":"/auth/documentation/integration-guide/saml/google"},{"title":"JumpCloud","sidebarTitle":"JumpCloud","icon":"key","href":"/auth/documentation/integration-guide/saml/jumpcloud"},{"title":"Enforce SSO login","sidebarTitle":"Enforce login","icon":"shield-halved","href":"/auth/documentation/integration-guide/saml/enforce"}]},{"group":"Enterprise SSO (OIDC)","icon":"building-lock","pages":[{"title":"Introduction","sidebarTitle":"Introduction","icon":"book-open","href":"/auth/documentation/integration-guide/enterprise-oidc/introduction"}]},{"group":"Step-Up Authentication","icon":"shield-check","pages":[{"title":"Step-Up Authentication","sidebarTitle":"Step-Up Authentication","icon":"shield-check","href":"/auth/documentation/step-up-authentication"},{"title":"Custom Steps","sidebarTitle":"Custom Steps","icon":"puzzle-piece","href":"/auth/documentation/step-up-custom-steps"},{"title":"Step-Up Hook Reference","sidebarTitle":"Step-Up Hook","icon":"webhook","href":"/auth/documentation/step-up-hook"},{"title":"Register an Identifier","sidebarTitle":"Register Identifier","icon":"id-badge","href":"/auth/documentation/register-identifier"},{"title":"Passkey (WebAuthn)","sidebarTitle":"Passkey","icon":"fingerprint","href":"/auth/documentation/passkey"}]},{"title":"Logged-in Change Password","sidebarTitle":"Change Password","icon":"key-skeleton","href":"/auth/documentation/change-password"}]},{"title":"Server Tokens","sidebarTitle":"Server Tokens","icon":"server","href":"/auth/documentation/server-tokens"},{"group":"Frontend SDKs","icon":"window","pages":[{"group":"Web","icon":"code","pages":[{"title":"Introduction","sidebarTitle":"Introduction","icon":"book-open","href":"/auth/documentation/frontend-sdks/web/introduction"},{"title":"Password","sidebarTitle":"Password","icon":"key","href":"/auth/documentation/frontend-sdks/web/password"},{"title":"OTP Login","sidebarTitle":"OTP Login","icon":"message-code","href":"/auth/documentation/frontend-sdks/web/otp"},{"title":"Social Login","sidebarTitle":"Social Login","icon":"users","href":"/auth/documentation/frontend-sdks/web/social-login"},{"title":"SAML Login","sidebarTitle":"SAML Login","icon":"key","href":"/auth/documentation/frontend-sdks/web/saml"},{"title":"Enforce SSO Login","sidebarTitle":"Enforce SSO","icon":"shield-halved","href":"/auth/documentation/frontend-sdks/web/saml-enforce"},{"title":"Enterprise SSO","sidebarTitle":"Enterprise SSO","icon":"building-lock","href":"/auth/documentation/frontend-sdks/web/enterprise-oidc"},{"title":"Session Management","sidebarTitle":"Session Management","icon":"rotate","href":"/auth/documentation/frontend-sdks/web/session-management"},{"title":"Step-Up Authentication","sidebarTitle":"Step-Up","icon":"shield-check","href":"/auth/documentation/frontend-sdks/web/step-up"},{"title":"Passkey","sidebarTitle":"Passkey","icon":"fingerprint","href":"/auth/documentation/frontend-sdks/web/passkey"},{"title":"Change Password","sidebarTitle":"Change Password","icon":"key-skeleton","href":"/auth/documentation/frontend-sdks/web/change-password"}]},{"group":"Mobile","icon":"mobile","pages":[{"title":"Introduction","sidebarTitle":"Introduction","icon":"book-open","href":"/auth/documentation/frontend-sdks/mobile/introduction"},{"title":"Password","sidebarTitle":"Password","icon":"key","href":"/auth/documentation/frontend-sdks/mobile/password"},{"title":"OTP Login","sidebarTitle":"OTP Login","icon":"message-code","href":"/auth/documentation/frontend-sdks/mobile/otp"},{"title":"Social Login","sidebarTitle":"Social Login","icon":"users","href":"/auth/documentation/frontend-sdks/mobile/social-login"},{"title":"Session Management","sidebarTitle":"Session Management","icon":"rotate","href":"/auth/documentation/frontend-sdks/mobile/session-management"},{"title":"Step-Up Authentication","sidebarTitle":"Step-Up","icon":"shield-check","href":"/auth/documentation/frontend-sdks/mobile/step-up"},{"title":"Change Password","sidebarTitle":"Change Password","icon":"key-skeleton","href":"/auth/documentation/frontend-sdks/mobile/change-password"},{"title":"React Hooks","sidebarTitle":"React Hooks","icon":"react","href":"/auth/documentation/frontend-sdks/mobile/react-hooks"}]}]},{"title":"Auth Applications","sidebarTitle":"Applications","icon":"server","href":"/auth/documentation/applications"},{"title":"Domain Names","sidebarTitle":"Domain Names","icon":"globe-pointer","href":"/auth/documentation/domain-names"},{"title":"Groups","sidebarTitle":"Groups","icon":"user-group","href":"/auth/documentation/groups"},{"group":"Webhooks","icon":"webhook","pages":[{"title":"Webhooks","sidebarTitle":"Introduction","icon":"play","href":"/auth/documentation/webhooks/introduction"},{"title":"Activation Challenge Request","sidebarTitle":"Activation Webhook Event","icon":"cloud-check","href":"/auth/documentation/webhooks/verification-event"},{"group":"Events","icon":"list-check","pages":[{"title":"User Created","icon":"dot","href":"/auth/documentation/webhooks/events/user-created"},{"title":"User Deleted","icon":"dot","href":"/auth/documentation/webhooks/events/user-deleted"},{"title":"User Profile Updated","icon":"dot","href":"/auth/documentation/webhooks/events/user-profile-updated"},{"title":"User Identifier Created","icon":"dot","href":"/auth/documentation/webhooks/events/user-identifier-created"},{"title":"User Identifier Deleted","icon":"dot","href":"/auth/documentation/webhooks/events/user-identifier-deleted"},{"title":"User Session Created","icon":"dot","href":"/auth/documentation/webhooks/events/user-session-created"},{"title":"User Session Revoked","icon":"dot","href":"/auth/documentation/webhooks/events/user-session-revoked"},{"title":"User Passkey Registered","icon":"dot","href":"/auth/documentation/webhooks/events/user-passkey-registered"},{"title":"User Passkey Deleted","icon":"dot","href":"/auth/documentation/webhooks/events/user-passkey-deleted"},{"title":"User Passkey Assertion Failed","icon":"dot","href":"/auth/documentation/webhooks/events/user-passkey-assertion-failed"},{"title":"Migration Hook Failed","icon":"dot","href":"/auth/documentation/webhooks/events/migration-hook-failed"},{"title":"Step-Up Hook Failed","icon":"dot","href":"/auth/documentation/webhooks/events/step-up-hook-failed"},{"title":"Group Created","icon":"dot","href":"/auth/documentation/webhooks/events/group-created"},{"title":"Group Deleted","icon":"dot","href":"/auth/documentation/webhooks/events/group-deleted"},{"title":"Group Member Added","icon":"dot","href":"/auth/documentation/webhooks/events/group-member-added"},{"title":"Group Member Removed","icon":"dot","href":"/auth/documentation/webhooks/events/group-member-removed"}]}]},{"title":"Cookies","sidebarTitle":"Cookies","icon":"cookie-bite","href":"/auth/documentation/cookies"},{"title":"JSON Web Key Set (JWKS)","sidebarTitle":"JWKS","icon":"key-skeleton-left-right","href":"/auth/documentation/jwks"},{"title":"Custom Claims","sidebarTitle":"Custom Claims","icon":"id-card","href":"/auth/documentation/custom-claims"},{"title":"Migration Guide","sidebarTitle":"Migration Guide","icon":"arrows-rotate","href":"/auth/documentation/migration-guide"}]},{"group":"API Reference","pages":[{"group":"Frontend","icon":"mobile","pages":[{"group":"Login OTP","pages":[{"openapi":"post /v1/session/otp","title":"Create standalone OTP","href":"/auth/api-reference/frontend/start-login-otp"},{"openapi":"post /v1/session/otp/retry","title":"Retry standalone OTP","href":"/auth/api-reference/frontend/retry-otp"},{"openapi":"post /v1/session/otp/check","title":"Check standalone OTP","href":"/auth/api-reference/frontend/complete-login-otp"}]},{"group":"Login Email Password","pages":[{"openapi":"post /v1/session/login/email/password","title":"Login with email and password","href":"/auth/api-reference/frontend/login-email-password"},{"openapi":"get /v1/session/password/compliancy","title":"Get password compliancy rules","href":"/auth/api-reference/frontend/password-compliancy"}]},{"group":"Login OAuth","pages":[{"openapi":"post /v1/session/login/oauth/{provider}/authorize","title":"Initiate OAuth authorization","href":"/auth/api-reference/frontend/oauth-authorize"},{"openapi":"post /v1/session/login/oauth/authorize","title":"Initiate enterprise OAuth (OIDC SSO) authorization","href":"/auth/api-reference/frontend/oauth-enterprise-authorize"},{"openapi":"get /v1/session/login/oauth/{provider}/callback","title":"OAuth callback (GET)","href":"/auth/api-reference/frontend/oauth-callback-get"},{"openapi":"post /v1/session/login/oauth/{provider}/callback","title":"OAuth callback (POST)","href":"/auth/api-reference/frontend/oauth-callback-post"}]},{"group":"Login SAML","pages":[{"openapi":"get /v1/session/login/saml/initiate","title":"Initiate SAML login (resolve by email)","href":"/auth/api-reference/frontend/saml-initiate-by-email"},{"openapi":"get /v1/session/login/saml/{provider_id}/{connection_id}/initiate","title":"Initiate SAML login (explicit connection)","href":"/auth/api-reference/frontend/saml-initiate"},{"openapi":"post /v1/session/login/saml/{provider_id}/{connection_id}/acs","title":"SAML Assertion Consumer Service (ACS)","href":"/auth/api-reference/frontend/saml-acs"},{"openapi":"get /v1/session/login/saml/{provider_id}/{connection_id}/metadata","title":"Get SP metadata","href":"/auth/api-reference/frontend/saml-metadata"}]},{"group":"Login Finalize","pages":[{"openapi":"post /v1/session/login/finalize","title":"Finalize login","href":"/auth/api-reference/frontend/finalize-login"}]},{"group":"Login Migration","pages":[{"openapi":"post /v1/session/migration","title":"Migrate a legacy session","href":"/auth/api-reference/frontend/session-migration"}]},{"group":"Authentication","pages":[{"openapi":"post /v1/session/refresh","title":"Refresh session","href":"/auth/api-reference/frontend/refresh-session"},{"openapi":"post /v1/session/revoke","title":"Revoke session","href":"/auth/api-reference/frontend/revoke-session"}]},{"group":"Session Management","pages":[{"openapi":"get /v1/session/me/list","title":"List sessions","href":"/auth/api-reference/frontend/list-sessions"},{"openapi":"get /v1/session/me/identifiers","title":"List identifiers","href":"/auth/api-reference/frontend/list-identifiers"},{"openapi":"post /v1/session/me/revoke","title":"Revoke sessions","href":"/auth/api-reference/frontend/revoke-sessions"},{"openapi":"post /v1/session/me/password/reset","title":"Change password","href":"/auth/api-reference/frontend/reset-password"}]},{"group":"Step-Up","pages":[{"openapi":"post /v1/session/stepup/request","title":"Request step-up scope","href":"/auth/api-reference/frontend/stepup-request"},{"openapi":"post /v1/session/stepup/continue","title":"Continue step-up challenge","href":"/auth/api-reference/frontend/stepup-continue"}]},{"group":"Well-Known","pages":[{"openapi":"get /.well-known/jwks.json","title":"Get JWKS","href":"/auth/api-reference/frontend/jwks"},{"openapi":"get /.well-known/step-up-jwks.json","title":"Get step-up JWKS","href":"/auth/api-reference/frontend/stepup-jwks"},{"openapi":"get /.well-known/oauth-authorization-server","title":"Get authorization server metadata","href":"/auth/api-reference/frontend/oauth-server-metadata"}]},{"group":"OAuth Server","pages":[{"openapi":"get /v1/session/oauth/authorize","title":"Authorization request","href":"/auth/api-reference/frontend/oauth-server-authorize"},{"openapi":"post /v1/session/oauth/register","title":"Dynamic client registration","href":"/auth/api-reference/frontend/oauth-server-register"},{"openapi":"post /v1/session/oauth/token","title":"Token request","href":"/auth/api-reference/frontend/oauth-server-token"},{"openapi":"post /v1/session/oauth/continue","title":"Continue authorization after login","href":"/auth/api-reference/frontend/oauth-server-continue"},{"openapi":"get /v1/session/oauth/pending","title":"Get pending consent details","href":"/auth/api-reference/frontend/oauth-server-pending"},{"openapi":"post /v1/session/oauth/decision","title":"Submit consent decision","href":"/auth/api-reference/frontend/oauth-server-decision"}]}]},{"group":"Management","icon":"wrench","pages":[{"group":"Mode API","pages":[{"openapi":"get /v2/session/apps/{appID}/mode","title":"Get application mode","href":"/auth/api-reference/management/mode/get-mode"},{"openapi":"put /v2/session/apps/{appID}/mode","title":"Update application mode","href":"/auth/api-reference/management/mode/update-mode"}]},{"group":"Tokens API","pages":[{"openapi":"post /v2/session/apps/{appID}/tokens","title":"Mint a token","href":"/auth/api-reference/management/tokens/mint-token"}]},{"group":"Users API","pages":[{"openapi":"get /v2/session/apps/{appID}/users","title":"List users","href":"/auth/api-reference/management/users/list-users"},{"openapi":"post /v2/session/apps/{appID}/users/batch_lookup","title":"Batch lookup users","href":"/auth/api-reference/management/users/batch-lookup"},{"openapi":"post /v2/session/apps/{appID}/users","title":"Create user","href":"/auth/api-reference/management/users/create-user"},{"openapi":"get /v2/session/apps/{appID}/users/{userID}","title":"Get user","href":"/auth/api-reference/management/users/get-user"},{"openapi":"delete /v2/session/apps/{appID}/users/{userID}","title":"Delete user","href":"/auth/api-reference/management/users/delete-user"},{"openapi":"put /v2/session/apps/{appID}/users/{userID}/status","title":"Update user status","href":"/auth/api-reference/management/users/update-status"},{"openapi":"patch /v2/session/apps/{appID}/users/{userID}/profile","title":"Update user profile","href":"/auth/api-reference/management/users/update-user-profile"},{"openapi":"put /v2/session/apps/{appID}/users/{userID}/external_id","title":"Update user external ID","href":"/auth/api-reference/management/users/update-external-id"},{"openapi":"put /v2/session/apps/{appID}/users/{userID}/password","title":"Set user password","href":"/auth/api-reference/management/users/set-user-password"},{"openapi":"post /v2/session/apps/{appID}/users/{userID}/scopes","title":"Add scope to user","href":"/auth/api-reference/management/users/add-user-scope"},{"openapi":"post /v2/session/apps/{appID}/users/{userID}/groups","title":"Add user to group","href":"/auth/api-reference/management/users/add-user-to-group"},{"openapi":"delete /v2/session/apps/{appID}/users/{userID}/groups/{groupName}","title":"Remove user from group","href":"/auth/api-reference/management/users/remove-user-from-group"},{"openapi":"post /v2/session/apps/{appID}/users/{userID}/identifiers","title":"Create identifier","href":"/auth/api-reference/management/users/create-identifier"},{"openapi":"delete /v2/session/apps/{appID}/users/{userID}/identifiers","title":"Delete identifier","href":"/auth/api-reference/management/users/delete-identifier"},{"openapi":"get /v2/session/apps/{appID}/users/{userID}/sessions","title":"List user sessions","href":"/auth/api-reference/management/users/list-user-sessions"},{"openapi":"post /v2/session/apps/{appID}/users/{userID}/sessions/invalidate","title":"Invalidate user sessions","href":"/auth/api-reference/management/users/invalidate-user-sessions"},{"openapi":"delete /v2/session/apps/{appID}/users/{userID}/sessions/{sessionID}","title":"Invalidate user session","href":"/auth/api-reference/management/users/invalidate-user-session"}]},{"group":"Webhooks API","pages":[{"openapi":"get /v2/session/apps/{appID}/webhooks","title":"List webhooks","href":"/auth/api-reference/management/webhooks/list-webhooks"},{"openapi":"post /v2/session/apps/{appID}/webhooks","title":"Create webhook","href":"/auth/api-reference/management/webhooks/create-webhook"},{"openapi":"get /v2/session/apps/{appID}/webhooks/{webhookID}","title":"Get webhook","href":"/auth/api-reference/management/webhooks/get-webhook"},{"openapi":"delete /v2/session/apps/{appID}/webhooks/{webhookID}","title":"Delete webhook","href":"/auth/api-reference/management/webhooks/delete-webhook"},{"openapi":"post /v2/session/apps/{appID}/webhooks/{webhookID}/events","title":"Add webhook event","href":"/auth/api-reference/management/webhooks/add-webhook-event"},{"openapi":"delete /v2/session/apps/{appID}/webhooks/{webhookID}/events","title":"Delete webhook event","href":"/auth/api-reference/management/webhooks/delete-webhook-event"},{"openapi":"post /v2/session/apps/{appID}/webhooks/{webhookID}/activate","title":"Activate webhook","href":"/auth/api-reference/management/webhooks/activate-webhook"},{"openapi":"post /v2/session/apps/{appID}/webhooks/{webhookID}/deactivate","title":"Deactivate webhook","href":"/auth/api-reference/management/webhooks/deactivate-webhook"}]},{"group":"Domains API","pages":[{"openapi":"get /v2/session/apps/{appID}/domains","title":"List domains","href":"/auth/api-reference/management/domains/list-domains"},{"openapi":"post /v2/session/apps/{appID}/domains","title":"Create domain","href":"/auth/api-reference/management/domains/create-domain"},{"openapi":"get /v2/session/apps/{appID}/domains/{domainID}","title":"Get domain","href":"/auth/api-reference/management/domains/get-domain"},{"openapi":"delete /v2/session/apps/{appID}/domains/{domainID}","title":"Delete domain","href":"/auth/api-reference/management/domains/delete-domain"},{"openapi":"post /v2/session/apps/{appID}/domains/{domainID}/validate","title":"Validate domain","href":"/auth/api-reference/management/domains/verify-domain"}]},{"group":"Tokens Config API","pages":[{"openapi":"get /v2/session/apps/{appID}/config/tokens","title":"Get token config","href":"/auth/api-reference/management/config/tokens/get-token-config"},{"openapi":"put /v2/session/apps/{appID}/config/tokens","title":"Update token config","href":"/auth/api-reference/management/config/tokens/update-token-config"}]},{"group":"Scopes Config API","pages":[{"openapi":"get /v2/session/apps/{appID}/config/scopes","title":"List scopes","href":"/auth/api-reference/management/config/scopes/list-scopes"},{"openapi":"post /v2/session/apps/{appID}/config/scopes","title":"Create scope","href":"/auth/api-reference/management/config/scopes/create-scope"},{"openapi":"delete /v2/session/apps/{appID}/config/scopes","title":"Delete scope","href":"/auth/api-reference/management/config/scopes/delete-scope"}]},{"group":"Groups Config API","pages":[{"openapi":"get /v2/session/apps/{appID}/config/groups","title":"List groups","href":"/auth/api-reference/management/config/groups/list-groups"},{"openapi":"post /v2/session/apps/{appID}/config/groups","title":"Create group","href":"/auth/api-reference/management/config/groups/create-group"},{"openapi":"get /v2/session/apps/{appID}/config/groups/{groupName}","title":"Get group","href":"/auth/api-reference/management/config/groups/get-group"},{"openapi":"put /v2/session/apps/{appID}/config/groups/{groupName}","title":"Set group scopes","href":"/auth/api-reference/management/config/groups/set-group-scopes"},{"openapi":"delete /v2/session/apps/{appID}/config/groups/{groupName}","title":"Delete group","href":"/auth/api-reference/management/config/groups/delete-group"}]},{"group":"Claims Mapping Config API","pages":[{"openapi":"get /v2/session/apps/{appID}/config/claims","title":"Get claims mapping config","href":"/auth/api-reference/management/config/claims/get-claims-mapping"},{"openapi":"post /v2/session/apps/{appID}/config/claims","title":"Create claims mapping config","href":"/auth/api-reference/management/config/claims/create-claims-mapping"},{"openapi":"put /v2/session/apps/{appID}/config/claims","title":"Update claims mapping config","href":"/auth/api-reference/management/config/claims/update-claims-mapping"},{"openapi":"delete /v2/session/apps/{appID}/config/claims","title":"Delete claims mapping config","href":"/auth/api-reference/management/config/claims/delete-claims-mapping"}]},{"group":"Step-Up Config API","pages":[{"openapi":"get /v2/session/apps/{appID}/config/stepup","title":"Get step-up config","description":"Get the step-up authentication configuration for the application.","href":"/auth/api-reference/management/config/stepup/get-stepup-config"},{"openapi":"post /v2/session/apps/{appID}/config/stepup","title":"Create step-up config","href":"/auth/api-reference/management/config/stepup/create-stepup-config"},{"openapi":"put /v2/session/apps/{appID}/config/stepup","title":"Update step-up config","description":"Update the step-up authentication configuration for the application.","href":"/auth/api-reference/management/config/stepup/update-stepup-config"},{"openapi":"delete /v2/session/apps/{appID}/config/stepup","title":"Delete step-up config","href":"/auth/api-reference/management/config/stepup/delete-stepup-config"}]},{"group":"Migration Config API","pages":[{"openapi":"get /v2/session/apps/{appID}/config/migration","title":"Get migration config","href":"/auth/api-reference/management/config/migration/get-migration-config"},{"openapi":"post /v2/session/apps/{appID}/config/migration","title":"Create migration config","href":"/auth/api-reference/management/config/migration/create-migration-config"},{"openapi":"put /v2/session/apps/{appID}/config/migration","title":"Update migration config","href":"/auth/api-reference/management/config/migration/update-migration-config"},{"openapi":"delete /v2/session/apps/{appID}/config/migration","title":"Delete migration config","href":"/auth/api-reference/management/config/migration/delete-migration-config"}]},{"group":"Login OTP Config API","pages":[{"openapi":"get /v2/session/apps/{appID}/config/login/otp","title":"List OTP login configs","href":"/auth/api-reference/management/config/login-otp/list-login-otp-configs"},{"openapi":"post /v2/session/apps/{appID}/config/login/otp","title":"Create OTP login config","href":"/auth/api-reference/management/config/login-otp/create-login-otp-config"},{"openapi":"put /v2/session/apps/{appID}/config/login/otp/{loginConfigID}","title":"Update OTP login config","href":"/auth/api-reference/management/config/login-otp/update-login-otp-config"},{"openapi":"delete /v2/session/apps/{appID}/config/login/otp/{loginConfigID}","title":"Delete OTP login config","href":"/auth/api-reference/management/config/login-otp/delete-login-otp-config"}]},{"group":"Login OAuth Config API","pages":[{"openapi":"get /v2/session/apps/{appID}/config/login/oauth","title":"List OAuth login configs","href":"/auth/api-reference/management/config/login-oauth/list-login-oauth-configs"},{"openapi":"post /v2/session/apps/{appID}/config/login/oauth/{provider}","title":"Create OAuth login config","href":"/auth/api-reference/management/config/login-oauth/create-login-oauth-config"},{"openapi":"put /v2/session/apps/{appID}/config/login/oauth/{provider}","title":"Update personal OAuth login config","href":"/auth/api-reference/management/config/login-oauth/update-login-oauth-config"},{"openapi":"delete /v2/session/apps/{appID}/config/login/oauth/{provider}","title":"Delete personal OAuth login config","href":"/auth/api-reference/management/config/login-oauth/delete-login-oauth-config"},{"openapi":"put /v2/session/apps/{appID}/config/login/oauth/{provider}/{connectionID}","title":"Update enterprise OAuth connection","href":"/auth/api-reference/management/config/login-oauth/update-enterprise-oauth-connection"},{"openapi":"delete /v2/session/apps/{appID}/config/login/oauth/{provider}/{connectionID}","title":"Delete enterprise OAuth connection","href":"/auth/api-reference/management/config/login-oauth/delete-enterprise-oauth-connection"}]},{"group":"Login SAML Config API","pages":[{"openapi":"get /v2/session/apps/{appID}/config/login/saml","title":"List SAML connections","href":"/auth/api-reference/management/config/login-saml/list-saml-connections"},{"openapi":"post /v2/session/apps/{appID}/config/login/saml/{providerID}","title":"Create SAML connection","href":"/auth/api-reference/management/config/login-saml/create-saml-connection"},{"openapi":"get /v2/session/apps/{appID}/config/login/saml/{providerID}/{connectionID}","title":"Get SAML connection","href":"/auth/api-reference/management/config/login-saml/get-saml-connection"},{"openapi":"put /v2/session/apps/{appID}/config/login/saml/{providerID}/{connectionID}","title":"Update SAML connection","href":"/auth/api-reference/management/config/login-saml/update-saml-connection"},{"openapi":"delete /v2/session/apps/{appID}/config/login/saml/{providerID}/{connectionID}","title":"Delete SAML connection","href":"/auth/api-reference/management/config/login-saml/delete-saml-connection"},{"openapi":"get /v2/session/apps/{appID}/config/login/saml/{providerID}/{connectionID}/metadata","title":"Get SAML SP metadata","href":"/auth/api-reference/management/config/login-saml/get-saml-sp-metadata"}]},{"group":"Login Password Config API","pages":[{"openapi":"get /v2/session/apps/{appID}/config/login/password","title":"Get password login config","href":"/auth/api-reference/management/config/login-password/get-login-password-config"},{"openapi":"post /v2/session/apps/{appID}/config/login/password","title":"Create password login config","href":"/auth/api-reference/management/config/login-password/create-login-password-config"},{"openapi":"put /v2/session/apps/{appID}/config/login/password","title":"Update password login config","href":"/auth/api-reference/management/config/login-password/update-login-password-config"},{"openapi":"delete /v2/session/apps/{appID}/config/login/password","title":"Delete password login config","href":"/auth/api-reference/management/config/login-password/delete-login-password-config"}]},{"group":"OAuth Server Config API","pages":[{"openapi":"get /v2/session/apps/{appID}/oauth","title":"Get OAuth server config","href":"/auth/api-reference/management/config/oauth-server/get-oauth-server-config"},{"openapi":"put /v2/session/apps/{appID}/oauth","title":"Create or update OAuth server config","href":"/auth/api-reference/management/config/oauth-server/update-oauth-server-config"},{"openapi":"delete /v2/session/apps/{appID}/oauth","title":"Delete OAuth server config","href":"/auth/api-reference/management/config/oauth-server/delete-oauth-server-config"},{"openapi":"post /v2/session/apps/{appID}/oauth/clients","title":"Register OAuth client","href":"/auth/api-reference/management/config/oauth-server/register-oauth-client"},{"openapi":"get /v2/session/apps/{appID}/oauth/clients","title":"List OAuth clients","href":"/auth/api-reference/management/config/oauth-server/list-oauth-clients"},{"openapi":"delete /v2/session/apps/{appID}/oauth/clients/{clientID}","title":"Delete OAuth client","href":"/auth/api-reference/management/config/oauth-server/delete-oauth-client"}]}]}]}]},{"anchor":"Watch","icon":"radar","versions":[{"version":"v2","pages":[{"group":"Documentation","pages":[{"title":"Introduction to Watch","sidebarTitle":"Introduction","icon":"radar","href":"/watch/v2/documentation/introduction"},{"title":"Rules, recipes, and flows","sidebarTitle":"Rules, recipes \u0026 flows","icon":"sliders","tag":"BETA","href":"/watch/v2/documentation/rules-recipes-flows"}]},{"group":"API Reference","pages":[{"openapi":"post /v2/watch/predict","title":"Predict the outcome of a verification","sidebarTitle":"Predict outcome","href":"/watch/v2/api-reference/predict-outcome"},{"openapi":"post /v2/watch/eval","title":"Evaluate a flow against your rules","sidebarTitle":"Evaluate a flow","tag":"BETA","href":"/watch/v2/api-reference/evaluate-flow"},{"openapi":"post /v2/watch/feedback","title":"Send feedbacks about verifications","sidebarTitle":"Send feedbacks","href":"/watch/v2/api-reference/send-feedbacks"},{"openapi":"post /v2/watch/event","title":"Dispatch real-time events","sidebarTitle":"Dispatch events","href":"/watch/v2/api-reference/dispatch-events"}]},{"group":"Management API","pages":[{"group":"Rules","pages":[{"openapi":"get /v2/watch/management/rules","title":"List the rules you authored","sidebarTitle":"List rules","tag":"BETA","href":"/watch/v2/api-reference/management/rules/list-rules"},{"openapi":"post /v2/watch/management/rules","title":"Author a rule","sidebarTitle":"Create rule","tag":"BETA","href":"/watch/v2/api-reference/management/rules/create-rule"},{"openapi":"get /v2/watch/management/rules/{rule_id}","title":"Get one of your rules","sidebarTitle":"Get rule","tag":"BETA","href":"/watch/v2/api-reference/management/rules/get-rule"},{"openapi":"put /v2/watch/management/rules/{rule_id}","title":"Update a rule","sidebarTitle":"Update rule","tag":"BETA","href":"/watch/v2/api-reference/management/rules/update-rule"},{"openapi":"delete /v2/watch/management/rules/{rule_id}","title":"Delete a rule","sidebarTitle":"Delete rule","tag":"BETA","href":"/watch/v2/api-reference/management/rules/delete-rule"},{"openapi":"get /v2/watch/management/rules/managed","title":"List the rules Prelude maintains","sidebarTitle":"List managed rules","tag":"BETA","href":"/watch/v2/api-reference/management/rules/list-managed-rules"},{"openapi":"get /v2/watch/management/rules/catalog","title":"List the signals a rule can read","sidebarTitle":"List signals","tag":"BETA","href":"/watch/v2/api-reference/management/rules/list-signals"}]},{"group":"Recipes","pages":[{"openapi":"get /v2/watch/management/recipes","title":"List your recipes","sidebarTitle":"List recipes","tag":"BETA","href":"/watch/v2/api-reference/management/recipes/list-recipes"},{"openapi":"post /v2/watch/management/recipes","title":"Assemble rules into a scored decision","sidebarTitle":"Create recipe","tag":"BETA","href":"/watch/v2/api-reference/management/recipes/create-recipe"},{"openapi":"get /v2/watch/management/recipes/{recipe_id}","title":"Get a recipe","sidebarTitle":"Get recipe","tag":"BETA","href":"/watch/v2/api-reference/management/recipes/get-recipe"},{"openapi":"put /v2/watch/management/recipes/{recipe_id}","title":"Update a recipe","sidebarTitle":"Update recipe","tag":"BETA","href":"/watch/v2/api-reference/management/recipes/update-recipe"},{"openapi":"delete /v2/watch/management/recipes/{recipe_id}","title":"Delete a recipe","sidebarTitle":"Delete recipe","tag":"BETA","href":"/watch/v2/api-reference/management/recipes/delete-recipe"}]},{"group":"Flows","pages":[{"openapi":"get /v2/watch/management/flows","title":"List your flows","sidebarTitle":"List flows","tag":"BETA","href":"/watch/v2/api-reference/management/flows/list-flows"},{"openapi":"post /v2/watch/management/flows","title":"Define a moment to guard","sidebarTitle":"Create flow","tag":"BETA","href":"/watch/v2/api-reference/management/flows/create-flow"},{"openapi":"get /v2/watch/management/flows/{flow_id}","title":"Get a flow","sidebarTitle":"Get flow","tag":"BETA","href":"/watch/v2/api-reference/management/flows/get-flow"},{"openapi":"put /v2/watch/management/flows/{flow_id}","title":"Update a flow","sidebarTitle":"Update flow","tag":"BETA","href":"/watch/v2/api-reference/management/flows/update-flow"},{"openapi":"delete /v2/watch/management/flows/{flow_id}","title":"Delete a flow","sidebarTitle":"Delete flow","tag":"BETA","href":"/watch/v2/api-reference/management/flows/delete-flow"}]}]}]}]},{"anchor":"Intel","icon":"telescope","versions":[{"version":"v2","pages":[{"group":"Documentation","pages":[{"title":"Introduction to Intel","sidebarTitle":"Introduction","icon":"telescope","href":"/intel/v2/documentation/introduction"}]},{"group":"API Reference","pages":[{"openapi":"get /v2/lookup/{phone_number}","title":"Lookup a phone number","sidebarTitle":"Lookup a number","href":"/intel/v2/api-reference/lookup-a-number"},{"openapi":"post /v2/intel/kyc/match/{phone}","title":"KYC Match","sidebarTitle":"KYC Match","href":"/intel/v2/api-reference/kyc-match"}]}]},{"version":"v1 (Legacy)","pages":[{"title":"v1 (Legacy)","href":"/intel/v1/documentation/errors"}]}]},{"anchor":"Notify","icon":"comment-dots","versions":[{"version":"v2","pages":[{"group":"Documentation","pages":[{"title":"Introduction to Notify","sidebarTitle":"Introduction","icon":"comment-dots","href":"/notify/v2/documentation/introduction"},{"title":"2-Way Messaging with WhatsApp","sidebarTitle":"WhatsApp 2-Way","icon":"whatsapp","href":"/notify/v2/documentation/whatsapp"},{"title":"Send images, videos, and documents on WhatsApp","sidebarTitle":"WhatsApp Media","icon":"whatsapp","href":"/notify/v2/documentation/whatsapp-media"},{"title":"Webhook for the Notify API","sidebarTitle":"Webhook","icon":"webhook","href":"/notify/v2/documentation/webhook"},{"title":"Marketing Compliance Rules","sidebarTitle":"Marketing Compliance","icon":"shield-check","href":"/notify/v2/documentation/marketing-compliance"},{"title":"SMS Opt-in for the US and Canada","sidebarTitle":"US \u0026 Canada Opt-in","icon":"square-check","href":"/notify/v2/documentation/us-canada-opt-in"},{"title":"Subscription Management","sidebarTitle":"Subscription Management","icon":"user-group","href":"/notify/v2/documentation/subscription-management"},{"title":"Message Scheduling","sidebarTitle":"Scheduling","icon":"clock","href":"/notify/v2/documentation/scheduling"},{"title":"Supported Locales","sidebarTitle":"Supported Locales","icon":"language","href":"/notify/v2/documentation/supported-locales"}]},{"group":"API Reference","pages":[{"openapi":"post /v2/notify","title":"Send a message","href":"/notify/v2/api-reference/send-a-message"},{"openapi":"post /v2/notify/batch","title":"Send bulk messages","href":"/notify/v2/api-reference/send-bulk-messages"},{"openapi":"post /v2/notify/reply","title":"Reply to an inbound message","href":"/notify/v2/api-reference/send-a-reply"},{"group":"Management","icon":"wrench","pages":[{"group":"Templates","pages":[{"openapi":"get /v2/notify/management/templates","title":"List message templates","href":"/notify/v2/api-reference/management/templates/list-templates"},{"openapi":"post /v2/notify/management/templates","title":"Create a message template","href":"/notify/v2/api-reference/management/templates/create-template"},{"openapi":"get /v2/notify/management/templates/{template_id}","title":"Retrieve a message template","href":"/notify/v2/api-reference/management/templates/get-template"},{"openapi":"patch /v2/notify/management/templates/{template_id}","title":"Update a message template","href":"/notify/v2/api-reference/management/templates/update-template"},{"openapi":"delete /v2/notify/management/templates/{template_id}","title":"Delete a message template","href":"/notify/v2/api-reference/management/templates/delete-template"},{"openapi":"post /v2/notify/management/templates/{template_id}/submit","title":"Submit a message template for review","href":"/notify/v2/api-reference/management/templates/submit-template"}]},{"group":"Subscriptions","pages":[{"openapi":"get /v2/notify/management/subscriptions","title":"List subscription configurations","href":"/notify/v2/api-reference/management/subscriptions/list-subscription-configs"},{"openapi":"get /v2/notify/management/subscriptions/{config_id}/phone_numbers","title":"List subscription phone numbers","href":"/notify/v2/api-reference/management/subscriptions/list-subscription-phone-numbers"},{"openapi":"get /v2/notify/management/subscriptions/{config_id}/phone_numbers/{phone_number}","title":"Get subscription phone number status","href":"/notify/v2/api-reference/management/subscriptions/get-subscription-phone-number"},{"openapi":"get /v2/notify/management/subscriptions/{config_id}/phone_numbers/{phone_number}/events","title":"List subscription phone number events","href":"/notify/v2/api-reference/management/subscriptions/list-subscription-phone-number-events"}]}]}]}]}]}]},"title":"Create step-up config - Prelude Docs","buildId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","deploymentId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-DKJwRUt2.js","utils-CWD_VS3u.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-oFjciODD.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-C76WsxC3.js","snippetPresets-DvPMxpX_.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-7TwLLapg.js","ApiExamples-CuNQfndH.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BVFpVUoF.js","shallow-t59Jg5Kr.js","getApiPlaygroundDisplay-C_JZ4amX.js","CodeSnippet-CLRDnx_h.js","CodeSnippets-C2myU4kc.js","getPastedJson-B-JaVXw7.js","icon-BA-iDhH3.js","MethodPill-D4qZABFp.js","DuplicateIcon-THIDKO1O.js","createIcon-CYYJwgFd.js","DynamicMarkdown-UGQuxDKp.js","SectionHeading-jYELb23h.js","axios-vUo_bRtp.js","Markdown-DKsLa3wy.js","clsx-CefdjKz2.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BaREnp3o.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-sgx_0XzF.js"]}