How It Works
Endpoints
All OAuth endpoints are onpublic-api.sessionboard.com (US) or public-api-eu.sessionboard.com (EU).
| Endpoint | Method | Description |
|---|---|---|
/oauth/authorize | GET | Validate authorization request parameters |
/oauth/authorize/consent | POST | User approves — generates authorization code |
/oauth/eligible-orgs | GET | List orgs where user has AI Access permission |
/oauth/token | POST | Exchange code for tokens, refresh tokens |
/oauth/revoke | POST | Revoke access or refresh tokens |
/oauth/.well-known/oauth-authorization-server | GET | RFC 8414 server metadata |
Authorization Request
Redirect the user to the authorization endpoint with these parameters:| Parameter | Required | Description |
|---|---|---|
client_id | Yes | Your registered OAuth client ID |
redirect_uri | Yes | Must match a registered redirect URI |
response_type | Yes | Must be code |
scope | No | Space-separated scopes (defaults to client’s registered scopes) |
code_challenge | Yes | PKCE challenge (S256 method) |
code_challenge_method | Yes | Must be S256 |
state | Recommended | Opaque value for CSRF protection |
Token Exchange
Exchange the authorization code for tokens:Refresh Tokens
Access tokens expire after 1 hour. Use the refresh token to get a new one:Using the Token
Include the access token as a Bearer token on API requests:/v1/ endpoints alongside the existing x-access-token header authentication.
Token Revocation
Revoke a token when the user disconnects:Available Scopes
| Scope | Description |
|---|---|
read:events | View events and event details |
read:sessions | View session data including titles, times, tracks, and statuses |
read:contacts | View contact, participant, exhibitor, and sponsor information |
read:reports | View and run saved custom reports |
read:dashboards | View dashboards and widget data |
read:insights | Query data using natural language and SbQL |
OAuth tokens currently support read-only scopes. For write operations (creating sessions, updating contacts, managing agendas), use API tokens with the appropriate
write:* scopes.Permission Model
OAuth tokens inherit the authorizing user’s permissions:- Organization admin with AI Access → token can query all events in the org
- Event-only user with AI Access → token scoped to their permitted events
- AI Access revoked → token stops working immediately (checked on every request)
- AI features disabled for org → all OAuth tokens for that org are blocked

