Retrieves multiple (up to 1,000 per page) content records with pagination and filtering options.
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
Only return content whose type is in this list (comma-separated, case-insensitive).
Allowed values: article, assessment, broadcast, cmi5, elearning, event, file, pathway,
question, quiz, scorm, url, video, mixed.
If both types and omitTypes are provided, only types is applied; omitTypes is ignored.
Exclude content whose type is in this list (comma-separated, case-insensitive).
Allowed values: article, assessment, broadcast, cmi5, elearning, event, file, pathway,
question, quiz, scorm, url, video, mixed.
Ignored when types is also provided.
Only return content whose state is in this list (comma-separated, case-insensitive).
Allowed values: created, published, archived, deleted.
When used with omitStatuses, results must match an included status and must not match any omitted status.
Exclude content whose state is in this list (comma-separated, case-insensitive).
Allowed values: created, published, archived, deleted.
When statuses is not provided, non-omitted lifecycle states keep the default catalogue behaviour
(non-archived and non-deleted), unless archived or deleted is listed here.
Return only items updated on or after this date/time (ISO 8601).
Successful response
{
"pagination": {
"totalResults": 745,
"totalPages": 38,
"page": 1,
"perPage": 20
},
"results": [
{
"id": "507f1f77bcf86cd799439011",
"title": "Thrive Customer Journey",
"description": "This diagram highlights the key things you may experience on your journey as a customer of Thrive's LXP
",
"tags": [
"customer journey",
"faq",
"customer success",
"lxp"
],
"type": "file",
"createdAt": "2019-02-18T17:42:11.708Z",
"updatedAt": "2020-02-19T21:06:02.574Z",
"author": "5c69be0e3a38412f022b4719",
"isOfficial": true,
"duration": {
"value": 15,
"unit": "minutes"
},
"contentHistory": [
{
"action": "published",
"timestamp": "2020-02-19T21:00:00Z",
"performedBy": {
"type": "user",
"value": "5c69be0e3a38412f022b4719"
}
}
],
"lastUpdatedBy": {
"id": "5c69be0e3a38412f022b4719",
"email": "author@example.com",
"reference": null
},
"provider": {
"id": "thrive",
"name": "Thrive"
}
},
{
"id": "507f1f77bcf86cd799439012",
"title": "Thrive on-boarding journey",
"description": "This infographic will talk you through the key things you will experience during the Thrive on boarding process
",
"tags": [
"customer journey",
"faq",
"customer success",
"lxp"
],
"type": "file",
"createdAt": "2019-02-19T16:19:24.399Z",
"updatedAt": "2020-02-19T21:06:35.384Z",
"author": "5c69be0e3a38412f022b4719",
"isOfficial": true,
"duration": {
"value": 15,
"unit": "minutes"
},
"provider": {
"id": "linkedin",
"name": "LinkedIn Learning"
}
}
]
}Details of the pagination
Total number of results matching the query
Total number of pages available
Current page number
Number of results per page
Unique identifier for the content
Title of the content
Detailed description of the content, may contain HTML
List of tags associated with this content
The kind of artifact associated with this content record
Timestamp when the content was created
Timestamp when the content was last updated
User ID who authored this content. Nullable for auto-curated content.
Whether the content has been recognized for its importance or validity by the customer organization
The expected time to complete the content. Null for Event content types. For SAP-imported content, this value may reflect a system default rather than a precise measured duration.
Duration in the specified unit. Null when no duration is available (e.g. pathways).
The unit of the duration value. Always 'minutes'.
Chronological history of actions on this content (from content-service). May be empty when there is no recorded history.
Type of change or event recorded for the content.
When the action occurred.
Kind of actor (for example user or system).
Identifier or value associated with the actor.
Last actor who updated the content, derived from history (or author fallback). Null when neither history nor author resolves.
User ID or service identifier.
Email from the user view when available.
External reference (e.g. HR id) when stored on the user view.
The content provider. Defaults to Thrive for natively created content.
Provider identifier key.
Human-readable provider display name.
Unauthorized
Unauthorized
Not Found
Not found