Events
The events API allows you to sync only data that has changed (deltas). Events are automatically generated when people, enrollments, terms, and organizations are created, updated, or deleted. Events are scoped to a single integration.
List Events
GET https://ed.link/api/v1/graph/events
Retrieve a list all available events. Events go back in time up to 30 days, in accordance with our data retention policy. Events should always be processed in the order in which they are returned. When paging through events, it is always recommended to page forward using $first and $after. While backward paging is supported, there is really no good reason to do so, and it may result in corrupted data (due to events being applied in reverse order).
Important Note regarding Data Retention: Events are retained for 30 days. If your application stores the ID of the last processed event to use as a cursor (e.g., via the
$afterparameter) and that event ID becomes older than 30 days, it will be deleted from our system. Attempting to use a deleted event ID as a cursor will result in an error, potentially breaking your sync process. If your stored cursor is older than 30 days or invalid, you must perform a full sync to ensure data consistency.
Request Parameters
This query allows for standard paging parameters.
Sample Request
axios.get('https://ed.link/api/v1/events', {
headers: {
authorization: `Bearer ${integration_access_token}`
}
});
Sample Response
{
"$data": [
{
"id": "1ddd5890-5d37-4bc9-88da-3f5980446ab8",
"created_date": "2020-06-19T21:27:45.349Z",
"type": "term.updated",
"data": {
"id": "1c26e644-b95f-4fbd-92b5-84cd65b0ab69",
"source": {
"id": "9aec5b81-fe3c-4629-a989-a75f02d9e947"
},
"name": "Spring Semester",
"end_date": "2020-06-30T00:00:00+00:00",
"sync_date": "2020-06-19T05:14:41.440089+00:00",
"start_date": "2020-01-01T00:00:00+00:00",
"created_date": "2020-03-02T07:36:30.86103+00:00",
"updated_date": "2020-03-02T07:36:30.86103+00:00"
}
},
{ ... }
]
}
Fetch A Single Event
GET https://ed.link/api/v1/graph/events/:event\_id
Retrieve information about a specific event. You may not be able to retrieve information about events that are greater than 30 days old.
Request Parameters
| Parameter | Type | Description |
|---|---|---|
event_id | UUID | The UUID of the desired event. |
Sample Request
axios.get('https://ed.link/api/v1/events/77a69705-41a7-49cb-0fe8-ffd425f9716f', {
headers: {
authorization: `Bearer ${integration_access_token}`
}
});
Sample Response
{
"$data": {
"id": "a2a8c9ff-b0c9-42d7-9a8b-c5d07c8dd5b4",
"created_date": "2020-06-19T22:35:04.144Z",
"type": "person.created",
"data": {
"id": "3497d140-06df-4425-ad04-83ec4665fbf3",
"source": {
"id": "9aec5b81-fe3c-4629-a989-a75f02d9e947"
},
"role": "teacher",
"email": "jordan@ed.link",
"phone": "",
"gender": null,
"locale": "",
"birthday": null,
"last_name": "Clark",
"sync_date": "2020-06-19T22:35:04.144928+00:00",
"time_zone": "America/Chicago",
"first_name": "Jordan",
"properties": {},
"middle_name": "",
"picture_url": "",
"created_date": "2020-06-19T22:35:04.144928+00:00",
"display_name": "Jordan Clark",
"updated_date": "2020-06-19T22:35:04.144928+00:00"
}
}
}