API Keys
All user-facing API requests use theX-API-Key header:
Hosted (Vexa Cloud)
Get your API key from vexa.ai/dashboard/api-keys.- Keys are active immediately
- Free-tier keys are valid for 1 hour after generation
- Paid plan keys do not expire
Self-hosted
Create users and mint API tokens via the Admin API:Two Auth Headers
Vexa has two authentication scopes:| Header | Scope | Used for |
|---|---|---|
X-API-Key | User API | Sending bots, fetching transcripts, recordings, webhooks |
X-Admin-API-Key | Admin API | Creating users, minting tokens, managing settings |
ADMIN_API_TOKEN environment variable at deployment time. User tokens are generated via the Admin API.
Token Scoping
API tokens can be scoped to limit access. See Token Scoping for details on creating restricted tokens.SSO / Enterprise Authentication
Status: In development. SSO support via OAuth 2.0 / OpenID Connect is planned, with Okta and Microsoft Entra ID (Azure AD) as the first providers. Track progress at #135.
Planned capabilities
- Okta — OIDC-based login for dashboard and API
- Microsoft Entra ID — For organizations using Microsoft 365 (e.g., enterprises running Teams)
- Self-hosted SSO — SSO will be available in both hosted and self-hosted deployments
Current workaround
For enterprise deployments that require SSO before it’s natively supported:- Place an OAuth2 proxy (e.g., oauth2-proxy) in front of the Vexa API gateway
- Map authenticated users to Vexa API tokens via the Admin API
- Use token scoping to restrict per-user access