Analytics
Query participation results and aggregate progress statistics.
Returns a paginated list of user participation results (content progress) for the customer. The request supports filtering by content name, content IDs, group IDs, user IDs, progress state, enrollment type, custom attribute filters, and date ranges (expiry, updated at). Use the options field to control pagination (skip, limit) and sorting (orderBy, order).
Authorization
Bearer A JSON Web Token
In: header
Request Body
application/json
Optional filters and pagination options; all fields are optional.
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/analyse/results" \ -H "Content-Type: application/json" \ -d '{ "groupIds": [ "4f5203c8-eff8-4168-9b6e-ec694da5878a" ], "userIds": [ "5df9aa85-d5fb-43f1-add5-b4f5f315ad3b" ], "contentIds": [ "d69c7cd1-9943-4f7f-b95f-0572b3458e9c" ], "progress": [ "APPROVED", "IN_PROGRESS", "NOT_STARTED", "EXPIRED", "FAILED" ], "enrollment": [ "MANDATORY", "OPTIONAL", "NOT_ENROLLED" ], "attributes": [ { "customFieldId": "22576317-111e-4373-9d27-b04469f360d3", "choices": [ "8a9064d1-2226-41e1-b203-33a42063c251" ] }, { "customFieldId": "b4abfb3d-2e42-46d4-bae8-7dd67e0e6d5e", "choices": [ "39d70428-287e-40ec-b232-9405ab633f57", "a92b386e-fe6f-460e-80cd-7cd478444a31" ] } ], "expiryDateRange": { "start": "2026-03-02T22:00:00.000Z", "end": "2026-03-28T21:59:59.999Z" }, "updatedAtDateRange": { "start": "2026-02-03T22:00:00.000Z", "end": "2026-03-03T21:59:59.999Z" }, "options": { "limit": 25, "skip": 0, "orderBy": "updatedAt", "order": "DESC" } }'{ "list": [ { "contentId": "string", "contentType": "string", "contentName": "string", "userId": "string", "userName": "string", "userDisplayName": "string", "userAvatarUrl": "string", "userEmail": "string", "state": "string", "occuredAt": 0, "enrolledAt": 0, "certificateExpiresAt": 0, "certificateIssuedAt": 0, "contentRevision": 0, "percentageProgress": 0, "mandatory": true } ]}Returns an overview of participation statistics (counts by state: not started, in progress, approved, failed, expired) for the customer. The request supports the same filters as the results endpoint (content, groups, users, progress, enrollment, attributes, date ranges) but does not include pagination options.
Authorization
Bearer A JSON Web Token
In: header
Request Body
application/json
Optional filters; all fields are optional.
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/analyse/statistics" \ -H "Content-Type: application/json" \ -d '{ "groupIds": [ "4f5203c8-eff8-4168-9b6e-ec694da5878a" ], "userIds": [ "5df9aa85-d5fb-43f1-add5-b4f5f315ad3b" ], "contentIds": [ "d69c7cd1-9943-4f7f-b95f-0572b3458e9c" ], "progress": [ "APPROVED", "IN_PROGRESS", "NOT_STARTED", "EXPIRED", "FAILED" ], "enrollment": [ "MANDATORY", "OPTIONAL", "NOT_ENROLLED" ], "attributes": [ { "customFieldId": "22576317-111e-4373-9d27-b04469f360d3", "choices": [ "8a9064d1-2226-41e1-b203-33a42063c251" ] }, { "customFieldId": "b4abfb3d-2e42-46d4-bae8-7dd67e0e6d5e", "choices": [ "39d70428-287e-40ec-b232-9405ab633f57", "a92b386e-fe6f-460e-80cd-7cd478444a31" ] } ], "expiryDateRange": { "start": "2026-03-02T22:00:00.000Z", "end": "2026-03-28T21:59:59.999Z" }, "updatedAtDateRange": { "start": "2026-02-03T22:00:00.000Z", "end": "2026-03-03T21:59:59.999Z" } }'{ "statistics": { "notStartedCount": 0, "inProgressCount": 0, "approvedCount": 0, "failedCount": 0, "expiredCount": 0 }}Returns the progress history (event log) for a specific user and content. Entries are ordered by timestamp descending so the most recent event appears first. Each entry includes the event id, status, timestamp, participation id, and related fields.
Authorization
Bearer A JSON Web Token
In: header
Path Parameters
Content id whose progress history should be returned.
User id whose progress history should be returned.
Response Body
application/json
curl -X GET "https://example.com/analyse/event-logs/content/d69c7cd1-9943-4f7f-b95f-0572b3458e9c/user/5df9aa85-d5fb-43f1-add5-b4f5f315ad3b"[ { "id": "507f1f77bcf86cd799439011", "contentId": "d69c7cd1-9943-4f7f-b95f-0572b3458e9c", "userId": "5df9aa85-d5fb-43f1-add5-b4f5f315ad3b", "participationId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "status": "APPROVED", "revisionNumber": 1, "timestamp": "2024-02-01T12:00:00Z", "mandatory": true, "manually": true }]