Skip to content
Practical applications of the API

Practical applications of the API

Seven things you can automate with the Linqur API, and the endpoints you need for each.

The Linqur API has 40 endpoints in ten groups. This page groups them by task instead: what you want to get done, and which calls do it. Every call needs an API key in the Access-Token header; API documentation explains authentication, the test version v0 and the limits.

Create and update courses and SCORM packages

When you publish a new course or a new version of a package in your authoring tool, your build pipeline can put it in Linqur without anyone logging in. Create the course with GET /course/add, upload the package with POST /course/learningobject/scorm/add, and send a new version later with POST /course/learningobject/scorm/update. GET /course/learningobject/list tells you which learning object id to update. The grading and display fields in the upload are the same as the SCORM settings in the interface.

Endpoints: API: courses and API: learning objects.

Create an LTI tool per client

If every client gets their own LTI tool for the same course, for example to count registrations per client or to set a different enrolment period, you can create those tools from your CRM or order system. GET /course/tool/add creates the tool with the LTI version, publish mode, maximum number of users and synchronisation settings. GET /course/tool/list returns the launch URL, the registration URL and the secret you send to the client; treat that output as confidential. Change a tool with GET /course/tool/update and remove it with GET /course/tool/delete.

Endpoints: API: LTI tools.

Read users and registrations for reports

For your own dashboards or a monthly report you can pull the numbers instead of exporting them by hand. GET /course/list gives every course with its registration counts per channel (LTI, sign-up URL, SCORM Proxy). GET /course/lti/registrations_by_day and GET /course/lti/registrations_sum_by_course give LTI registrations per day and per course for a date range. GET /user/list lists the users of an LTI tool with their last grade and last access, GET /member/list lists every unique LTI member on the platform, and GET /magic/user/list the users that signed up through a sign-up URL, with their course grade.

Endpoints: API: analytics, API: users, API: members and API: sign-up URLs (magic).

Sign-up URLs and enrolments from a webshop or CRM

A customer buys a course in your webshop and gets access right away. Create a sign-up URL for the course once with POST /magic/url/add; it returns the course hash. After a purchase, POST /magic/user/enrol creates the user if needed and enrols them with that hash, and POST /magic/login returns a login link, or emails it when mail is true. To end access, POST /user/unenrol takes the user out of the course and can reset their progress. POST /course/grade sets or resets a manual course grade, for example after an exam outside Linqur. For a WooCommerce shop there is a ready-made plug-in; read WooCommerce LMS integration.

Endpoints: API: sign-up URLs (magic), API: users and API: courses.

Keep files in the file repository up to date

The file repository holds files you reuse in several activities, such as a SCORM package linked to more than one course. POST /file/add uploads a file as base64 content with a title, reference and version, POST /file/update replaces its content and metadata, GET /file/list returns every tracked file with its revision, and POST /file/delete removes one. How activities use a new version of a linked file is described in Manage files in the file repository.

Endpoints: API: files.

SCORM Proxy

A SCORM Proxy wrapper is a small SCORM package that runs in a client’s LMS and plays the content from your platform. POST /scormproxy/add creates a wrapper for a course or activity, with an enrolment period, a maximum number of users and allowed domains, and returns the download links per SCORM version. GET /scormproxy/list shows the wrappers with their registrations, POST /scormproxy/update changes one, and POST /scormproxy/delete deactivates it. GET /scormproxy/results returns the CMI data per registration, so you can check completion and scores from your own system.

Endpoints: API: SCORM Proxy.

Manage tokens

If several systems talk to your platform, give each one its own token so you can revoke one without touching the others. GET /token/list shows the tokens with their last access, GET /token/add creates one, and GET /token/delete removes one. Deleting a token stops every integration that uses it.

Endpoints: API: tokens.

The other way round: webhooks

The API is for calls from your system to Linqur. When Linqur should notify your system instead, for example when a learner completes a course, use webhooks. For automations without code, read how to automate e-learning with Linqur and n8n or build e-learning automations with Linqur and Make.

Last updated on