Events
Poll what happened in your team: submissions, marking, results, enrolments and more.
- Scope
events:read
Data requests act inside the key’s centre as the person who created the key: each needs the scope and that person’s current EduMark permission. See auth and pagination.
List events
GET/v1/events
Events from the last 30 days in this key's team, newest first by default. To poll, remember the created_at of the last event you handled and ask for since that time with order=asc, then follow next_cursor until has_more is false. Events can arrive a moment after the change they describe; deduplicate by id. Only event types the key's creator may see in EduMark are returned.
Scope events:read
Parameters
| Field | Details |
|---|---|
type | string, optionalOnly these event types, separated by commas, for example submission.received,results.released.Up to 1,400 characters |
since | string, optionalOnly events after this ISO-8601 time.Up to 40 characters |
order | enumdesc (newest first) or asc (oldest first, best for polling).One of desc, ascDefault "desc" |
limit | integerItems per page, 1 to 100.1 to 100Default 25 |
cursor | string, optionalThe next_cursor from the previous page.Up to 512 characters |
Headers
| Field | Details |
|---|---|
EduMark-Version | enumAPI version. Defaults to the latest.One of 2026-10-21 |
Responses
| Status | Meaning |
|---|---|
| 200 | Successful Response |
| 400 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 401 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 403 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 404 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 409 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 410 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 413 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 415 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 422 | Validation Error |
| 429 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 503 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
Get an event
GET/v1/events/{event_id}
One event by id, for example to re-read a webhook delivery you missed.
Scope events:read
Parameters
| Field | Details |
|---|---|
event_id | stringRequiredUp to 80 characters |
Headers
| Field | Details |
|---|---|
EduMark-Version | enumAPI version. Defaults to the latest.One of 2026-10-21 |
Responses
| Status | Meaning |
|---|---|
| 200 | Successful Response |
| 400 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 401 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 403 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 404 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 409 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 410 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 413 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 415 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 422 | Validation Error |
| 429 | Request rejected. Inspect error.code and request_id; failed work is not billed. |
| 503 | Request rejected. Inspect error.code and request_id; failed work is not billed. |