Returns a single event with its occurrences, sessions and attendees.
Large events are capped: at most 50 occurrences, and at most 200 attendees per occurrence. The truncated object reports whether either cap was applied, and occurrenceCount / attendeeCount always report the true totals.
Archived events are returned here, reporting status: archived, so an event listed with ?status=archived can also be fetched.
An event with no sessions scheduled yet returns 200 with occurrenceCount: 0 and an empty occurrences array. 404 means the event id does not exist, or does not refer to an event.
HTTP Basic authentication using your Tenant ID and API secret.
- Username is the Tenant ID (i.e.
eu-west-2_AbcdEfghI) - Password is the API secret you would have received.
You can also authenticate using OAuth 2.0 client credentials (oauth2 security scheme) instead of Basic auth.
OAuth 2.0 client credentials authentication.
Use the following token endpoints (replace :tenantId with your Tenant ID):
Public API access tokens
- Staging:
https://public.api.learnstaging.link/oauth2/token/:tenantId - Production:
https://public.api.learn.link/oauth2/token/:tenantId - Staging MEA:
https://public.api.meastaging.learn.tech/oauth2/token/:tenantId - Production MEA:
https://public.api.mea.learn.tech/oauth2/token/:tenantId
- Staging:
Webhooks access tokens
- Staging:
https://user.api.learnstaging.link/oauth2/token/:tenantId - Production:
https://user.api.learn.link/oauth2/token/:tenantId - Staging MEA:
https://user.api.meastaging.learn.tech/oauth2/token/:tenantId - Production MEA:
https://user.api.mea.learn.tech/oauth2/token/:tenantId
- Staging:
All access tokens must be sent using the Authorization: Bearer <access_token> header.
Scopes
For API access (non-webhooks), the following scopes are available:
api/all– Full read and write access to the API.api/read– Read-only access to the API.api/write– Write access to the API.
For webhooks, the following scopes are available:
api/webhooks– Access to webhook functionality.api/all– Full read and write access to the API, including webhooks.
Tokens must include appropriate scopes for the endpoints you wish to call.
The event id
The event
The event's content lifecycle history
Capped at 50. Compare occurrenceCount to detect a capped list.
Where the session is held. For a webinar this is the join URL rather than a physical address — prefer meetingUrl, which normalises both cases.
True for a webinar, or when a meeting provider URL is set
The third-party provider URL when one is integrated, otherwise the webinar join URL. Null for an in-person session. Matches the meetingUrl on GET /events/user/ref/{ref}.
User ids marked as attended. Join these against the occurrence's attendees[].userId to recover each user's external ref.
User ids marked as not attended
Capped at 200 per occurrence, non-cancelled attendees first, so live registrations are never displaced by historic cancellations. Read truncated.attendees on the event to detect a capped list; attendeeCount excludes cancellations and so cannot be compared against this array's length. Use GET /events/{id}/occurrences/{occurrenceId}/attendees to page through the full list.
The user's external reference, or null when unset
Total non-cancelled attendees, ignoring the response cap
Reports whether the response hit either size cap.
Unauthorized
Unauthorized
Not Found
Not found