Skip to main content
Your application authenticates with an API key. Dashboard users sign in with a session. The two are separate: a key is for servers, and a session is for people.

API keys

Send your key as a Bearer token on every request:
The x-api-key header is also accepted:
Keys start with orv_. Create and revoke them with the API keys endpoints or in the dashboard. A key’s role decides what it can do. See API keys.
Keep keys on your server. Never put them in browser code or mobile apps. For the browser, use a customer portal session.

Sessions

Dashboard users sign in and receive an access token and a refresh token. Send the access token as a Bearer token too.

Register

Creates a user and a workspace.

Log in

Response:
The access token expires after expiresIn seconds (900 by default).

Refresh

Exchange a refresh token for a new access token:

Log out

Current user

Other sign-in methods

  • POST /v1/auth/magic-link with { "email": "…" } sends a sign-in link. POST /v1/auth/magic-link/verify completes it.
  • POST /v1/auth/forgot-password with { "email": "…" } sends a reset link. POST /v1/auth/reset-password sets the new password.
  • Single sign-on: POST /v1/auth/sso/start begins a sign-in, and POST /v1/auth/sso/exchange completes it. See Single sign-on.

Errors

A missing or invalid credential returns 401. A valid credential without the right role returns 403. See Errors.