Implement CIBA (Client-Initiated Backchannel Authentication) with Okta for call-center and out-of-band authentication

domain: developer.okta.com · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Create an Okta application with grant_type urn:openid:params:grant-type:ciba enabled and configure it with the client_notification_endpoint (for the ping mode) or use poll mode
  2. Configure the Custom Authenticator that the CIBA push notification will target; in Okta, this uses the Okta Devices SDK to deliver out-of-band push to the user's enrolled device
  3. From the consumption device (e.g. call center agent's app), POST to the Okta backchannel authentication endpoint with login_hint (user identifier), scope, and binding_message (a short code displayed to both the agent and user for correlation)
  4. The AS returns auth_req_id, expires_in, and interval; use these to poll the token endpoint with grant_type urn:openid:params:grant-type:ciba and the auth_req_id
  5. When the user approves on their device, the token endpoint returns id_token, access_token, and optionally refresh_token; when pending, it returns authorization_pending and you should continue polling
  6. For Rich Authorization Requests (RAR) integration, include authorization_details in the CIBA request to send transaction details to the user's device for review before approval

Known gotchas

Related routes

Enroll Okta FastPass (WebAuthn) as an authenticator factor via the Okta API and verify enrollment state
okta.com · 5 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans