Skip to main content

General information

Authentication

We recommend authenticating your API-calls using a Bearer token. You can create one of these tokens by going to your profile and adding a Key there. The key should at the very least have the ability to: read Relations read All Courses read Orders

You can use the key by passing it in the requests Authorization headers like:

Authorization: Bearer <token>

Note: This key is bound to the user that created it. If the user’s permissions get revoked, this key will also no longer be authorized.

Pagination

Eduframe’s web-API returns paginated results. The size of the page and the page number can be set with query params:

  • per_page
  • page

e.g.: https://api.eduframe.nl/api/v1/planned_courses?page=2&per_page=100

Info about the total number of records, the previous page, the next page, the last page and the first page can be found in the response headers <Link> and <Total>, e.g.:

Link:

<https://drieam-test.edufra.me/api/v1/planned_courses?page=1&per_page=25>; rel="first",

<https://drieam-test.edufra.me/api/v1/planned_courses?page=1&per_page=25>; rel="prev",

<https://drieam-test.edufra.me/api/v1/planned_courses?page=1&per_page=25>; rel="last"

Total: 66

Rate limiting

To prevent numerous API calls overloading Eduframe, rate limiting is implemented. The limit is currently set to 500 requests per 5 minutes. When you hit this limit the application will return an error with HTTP code 429 and message Too many requests were made. Webhook registration and format

Registration

It is possible to let Eduframe POST a webhook notification to a specified URL. You can add a webhook-URL via Settings → Webhooks → Add Webhook. The relevant subscribable events are noted later in this document.

Object

notification: {
{
event: "planned_course.updated",
educator: "drieam-test",
entity_id: 142716,
tenant_id: "29e40df7-4b7c-4a8b-a382-858224237ecc",
entity_type: "PlannedCourse"
}
}