Retrieves outbound webhook events dispatched for the tenant so subscribers can recover events they may have missed (for example while their endpoint was unavailable). Events are retained for 7 days. The time filters (createdFrom / createdTo) apply to when the event was ingested/dispatched, not the event's own timestamp. When no createdFrom is supplied, the last 24 hours are returned.
The set of available event types and subscription keys is documented at https://docs.thrivelearning.com/apidocs/webhooks — new event types may be added over time, so treat eventType as an open set.
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.
Page number for pagination
Number of records per page
Filter by mapped webhook event type (e.g. content.completed, post.posted). See the full list at https://docs.thrivelearning.com/apidocs/webhooks
Filter by tenant subscription config key. See the available subscriptions at https://docs.thrivelearning.com/apidocs/webhooks
Filter by webhook delivery outcome
Return events ingested at or after this ISO 8601 timestamp. Defaults to 24 hours ago when omitted.
Return events ingested at or before this ISO 8601 timestamp.
Successful response
{
"pagination": {
"totalResults": 42,
"totalPages": 1,
"pageNumber": 1,
"perPage": 100
},
"results": [
{
"id": "64b6f4a8c2e4a1b9d3f2c4a1",
"messageId": "a1b2c3d4-0000-0000-0000-000000000001",
"eventType": "content.completed",
"subscriptionKey": "completion_subscription",
"deliveryStatus": "delivered",
"payload": {
"eventType": "content.completed",
"tenantId": "eu-west-2_ABC",
"user": {
"id": "64020a781a211b0011216214"
},
"content": {
"id": "64020a781a211b0011216213"
}
},
"timestamp": "2026-07-14T14:58:23.621Z",
"createdAt": "2026-07-14T14:58:23.700Z"
}
]
}Unauthorized
Unauthorized
Unprocessable Content
Unprocessable Content