Raha Account API Documentation

Raha Account is the identity provider and account platform for Raha applications. It supports browser sign-in with OpenID Connect, OAuth token lifecycles, device authorization, account self-service, machine directory access, and administrative authorization.

Start here

  1. Register a developer application and its exact redirect URIs.
  2. Load /.well-known/openid-configuration from the issuer.
  3. Use Authorization Code with S256 PKCE for interactive sign-in.
  4. Validate issuer, audience, signature, expiry, state, and nonce.
  5. Send access tokens as Authorization: Bearer {token} only to their intended audience.

API conventions

  • Normal application APIs use /api/v1; protocol endpoints use /api/oauth2 without a version segment.
  • JSON request and response fields use snake_case on the HTTP wire.
  • Authentication and account responses are non-cacheable unless an endpoint explicitly says otherwise.
  • x-request-id may be supplied by callers. Error responses expose x-reference-id for support correlation.
  • Discover issuer endpoints instead of copying endpoint URLs between environments.

Guides

Authentication

Use hosted OIDC sign-in, sessions, consent, and MFA.

Read more

Authorization UI

Carry client locale and theme into Raha Account.

Read more

Device authorization

Authenticate TVs, CLIs, and input-constrained devices.

Read more

Machine directory

Read application-assigned users with client credentials.

Read more

Resources

OAuth and OIDC

Protocol endpoints, grants, client authentication, UserInfo, and logout.

Account portal

Profile, session, MFA, connected-app, and account self-service APIs.

Account directory

Machine access to users assigned to an OAuth application.

Management and RBAC

Admin users, clients, relationships, grants, audit, sessions, and keys.

Was this page helpful?