API Endpoints
The API 2.0 consists of the following resources, listed as individual endpoints:
Account and user management
Endpoint | Function |
---|---|
GET /api/2/access/{for} |
Request organization login |
GET /api/2/organization/{organization_id}? |
Retrieve organization details |
GET /api/2/organization/{organization_id}/license |
Retrieve organization license details |
GET /api/2/organization/{organization_id}/staff |
Retrieve organization staff users |
PUT /api/2/organization/{organization_id}/staff/{user_id_or_email} |
Add organization staff user |
DELETE /api/2/organization/{organization_id}/staff/{user_id} |
Remove organization staff user |
GET /api/2/organizations |
Retrieve list of organizations |
GET /api/2/session |
Request session information |
POST /api/2/token |
Request a new OAuth token |
GET /api/2/user/{user_id}? |
Retrieve user details |
PUT /api/2/user |
Update own real name, locale or time zone |
DELETE /api/2/user/{user}/catalog/{catalog} |
Revoke user access to catalog |
PUT /api/2/user/{user}/catalog/{catalog} |
Grant user access to catalog |
GET /api/2/user/…/contract |
Retrieve user contract |
GET /api/2/user/…/email-address/ |
Retrieve user email address |
PUT /api/2/user/…/email-address/ |
Add user email address |
DELETE /api/2/user/…/email-address/ |
Remove user email address |
POST /api/2/user/…/email-address/…/request-verification |
Request verification of user email address |
PUT /api/2/user/…/email-address/…/verify/… |
Verify the authenticity of a user's email address |
GET /api/2/user/…/email-addresses |
Retrieve user email addresses |
PUT /api/2/user/…/email-addresses/…/set-primary |
Set one of the user’s email addresses as primary |
GET /api/2/user/…/permissions |
Retrieve user permissions |
PUT /api/2/user/…/permission |
Update user permissions |
DELETE /api/2/user/…/permission |
Remove user permissions |
POST /api/2/users |
Create user account |
Content
Endpoint | Function |
---|---|
PUT /api/2/course/{course_id}/{drill_id} |
Add a drill to a course |
DELETE /api/2/course/{course_id}/{drill_id} |
Remove a drill from a course |
POST /api/2/courses |
Create a course |
GET /api/2/drill |
Retrieve drill or course details |
PUT /api/2/drill/{drill_id} |
Update drill name, subject or description |
GET /api/2/drill/{drill_id}/tags |
Retrieve drill tags |
POST /api/2/drills |
Create a new drill |
Practice and test
Endpoint | Function |
---|---|
PUT /api/2/answer/{reference} |
Submit practice answer |
GET /api/2/objective |
Retrieve a specific objective including evaluation |
GET /api/2/objectives |
Retrieve list of objectives including evaluations |
GET /api/2/practice-preferences/{drill_id} |
Retrieve practice preferences |
PUT /api/2/practice-preferences/{drill_id} |
Store practice preferences |
GET /api/2/question/{drill_id}? |
Retrieve practice question |
GET /api/2/test/{test_id} |
Retrieve test details |
PUT /api/2/test/{test_id}/{type}/{id} |
Link a test definition |
POST /api/2/tests |
Define an individual or anonymous test |
PUT /api/2/test-answer/{reference} |
Submit test answer |
GET /api/2/test-question/{test_id}/{ticket}? |
Retrieve test question |
GET /api/2/test-result/{test_id}/{user_id_or_ticket}? |
Retrieve test results |
GET /api/2/repertoire |
Search in repertoire |
PUT /api/2/repertoire |
Add drill to repertoire |
DELETE /api/2/repertoire |
Remove a drill or course from the user's repertoire |
Drill store
Endpoint | Function |
---|---|
GET /api/2/store |
Search in Drill store |
GET /api/2/store/categories |
Retrieve Drill Store categories |
GET /api/2/store/highlights |
Request list of Drill Store highlights |
GET /api/2/store/popular |
Requests list of most practiced public drills |
GET /api/2/store/recent |
Requests list of recently published Drill Store entries |
GET /api/2/store/related/{drill_id} |
Requests list of public drills related to given drill |
Group management and analysis
Endpoint | Function |
---|---|
PUT /api/2/group/{group_id}/drills/{drill_id} |
Add drill or course to group |
PUT /api/2/group/{group_id}/members/{user_reference} |
Add member |
GET /api/2/group/{group_id}/members |
Retrieve or search list of members for group |
DELETE /api/2/group/{group_id}/members/{user_reference} |
Remove group member |
GET /api/2/group/{group_id}/drills |
Retrieve list of drills for group |
DELETE /api/2/group/{group_id}/drills/{drill_id} |
Remove drill from group |
GET /api/2/group/{group_id}/results |
Retrieve group drill results |
GET /api/2/group/{group_id}/objectives |
Retrieve group objectives |
DELETE /api/2/group/{group_id}/objectives/{objective_id} |
Remove objective from group |
GET /api/2/group/{group_id}/tests |
Retrieve group tests |
POST /api/2/group/{group_id}/tests |
Define group test |
DELETE /api/2/group/{group_id}/tests/{test_id} |
Remove test from group |
POST /api/2/group/{group_id}/objectives |
Define practice objective |
GET /api/2/group/{group_id}/staff |
Retrieve group staff permissions |
PUT /api/2/group/{group_id}/staff |
Update group staff permissions |
DELETE /api/2/group/{group_id}/staff |
Revoke group staff permissions |
GET /api/2/groups |
Retrieve list of groups |
POST /api/2/groups |
Create new group |
DELETE /api/2/groups |
Remove a group |
GET /api/2/group-invitations |
Retrieve pending group invitations |
GET /api/2/group-invitation/{token} |
Retrieve details of group invitation |
PUT /api/2/group-invitation/{token} |
Accept or decline group invitation |
Developer related
Endpoint | Function |
---|---|
GET /api/2/client-app |
Retrieve client app details |
PUT /api/2/client-app |
Update client app details |
DELETE /api/2/client-app |
Delete a client app |
GET /api/2/client-apps |
Retrieve all client apps |
POST /api/2/client-apps |
Create a new client app |
PUT /api/2/mobile-push-notification-subscription |
Register mobile device for push notifications |
DELETE /api/2/mobile-push-notification-subscription |
Deregister mobile device for push notifications |
GET /api/2/version |
Retrieve backend API version |
Please see the list of objects for the message content for these endpoints.