/api/health, /api/setup/*, and the OpenAPI schema — requires a JWT access token. Obtain the token by logging in with your credentials, then include it in the Authorization header of every subsequent request. Tokens expire after 24 hours by default; re-login to get a fresh one.
Log in and get a token
1
POST your credentials
Send your
username and password to the login endpoint:2
Extract the access token
The response body contains your JWT token along with your role and user details:
3
Pass the token in the Authorization header
Include the token as a Bearer credential on every subsequent request:
Login request fields
string
required
The account username you created during the setup wizard (or later via user management).
string
required
The account password you set during the setup wizard (or later via password reset).
Login response fields
string
A signed JWT token. Include this value as
Bearer <access_token> in the Authorization header.string
The account’s role. Either
"admin" or "user".object
Basic profile information for the authenticated account.
Token expiry
Tokens expire after 24 hours by default. Control this with theOCTOP_ACCESS_TOKEN_TTL environment variable (value in seconds). When a token expires, re-call POST /api/auth/login to obtain a fresh one.
Rotating the JWT secret via
octop admin rotate-jwt-secret immediately invalidates all outstanding tokens. Every user must re-login after a rotation.Get current user info
Retrieve the profile of the currently authenticated user:id, username, role, display_name, locale, and other profile fields.
Change password
Update your own password without admin involvement:204 No Content.
New passwords must be at least 8 characters, include a letter and a digit, differ from the current password, and must not be on a small denylist of common strings (for example password123 or admin123).
OpenID Connect
An administrator enables OIDC under Management → Users → Single sign-on. After at least one user exists, the login page can show Continue with {name}.
New SSO users get a regular user account. Grant settings access afterwards if they need it.
Redeem an invite
Anyone with an invite link can call these routes. Administrators create invites from Management → Users orPOST /api/users/invites. See Users & Admin.
Log out
Invalidate the current token server-side:204 No Content.

