Skip to main content

Integrate VoxKey

VoxKey is a standard OIDC provider. Any library or framework that supports OpenID Connect can integrate with it.

OIDC Discovery

Every realm exposes a discovery endpoint:

GET /oauth2/{realmUUID}/.well-known/openid-configuration

This returns all endpoints, supported grant types, and signing algorithms. Most OIDC client libraries can auto-configure from this URL.

Key endpoints

EndpointPathDescription
AuthorizationPOST /oauth2/{realmUUID}/codeStart the login flow
TokenPOST /oauth2/{realmUUID}/tokenExchange code for tokens
UserInfoGET /oauth2/{realmUUID}/userinfoGet authenticated user info
JWKSGET /oauth2/{realmUUID}/oidc/jwksPublic keys for JWT verification
IntrospectionPOST /oauth2/{realmUUID}/introspectCheck token validity (RFC 7662)
RevocationPOST /oauth2/{realmUUID}/revokeRevoke tokens (RFC 7009)

Integration flow

  1. Register an application in the admin panel (Traditional Web, SPA, or M2M)
  2. Configure your OIDC client with the discovery URL and your client credentials
  3. Redirect users to the authorization endpoint for login
  4. Exchange the authorization code for tokens at the token endpoint
  5. Validate tokens in your API using JWKS or introspection

Grant types

GrantUse caseClient type
Authorization Code + PKCEUser login from SPAsPublic
Authorization CodeUser login from server appsConfidential
Client CredentialsM2M / backend servicesConfidential
Refresh TokenRenew expired access tokensBoth

Resource indicators

To get tokens scoped to a specific API, pass the resource parameter in the token request:

curl -X POST https://your-domain.com/oauth2/{realmUUID}/token \
-d grant_type=authorization_code \
-d code=AUTH_CODE \
-d resource=https://api.example.com

The resource value must match the indicator of an API Resource configured in the realm.

Next steps