Get Courses Assigned to a User
Get a list of courses currently assigned to a User and the current status of each course.
Request URI
GET /users/{userid}/courses?
Response Body (XML)
<Courses> <Course> <Id>string [max length 50]</Id> <Code>string [max length 20]</Code> <Name>string [max length 255]</Name> <Active>true/false</Active> <Complete>true/false</Complete> <PercentageComplete>decimal</PercentageComplete> <AssignedDate>YYYY-MM-DDTHH:MM:SS.SSS</AssignedDate> <StartDate>YYYY-MM-DDTHH:MM:SS.SSS</StartDate> <DateCompleted>YYYY-MM-DDTHH:MM:SSS</DateCompleted> <UpToDate>true/false</UpToDate> <Overdue>true/false</Overdue> <CompliantTill>YYYY-MM-DDTHH:MM:SS.SSS</CompliantTill> <IsLearningPath>true/false</IsLearningPath> <CourseCreatedDate>YYYY-MM-DDTHH:MM:SS.SSS</CourseCreatedDate> <CourseCreator>string [max length 50]</CourseCreator> <OriginalId>integer</OriginalId> <ResultId>string [max length 50]</ResultId> <AccessTillDate>YYYY-MM-DDTHH:MM:SS.SSS</AccessTillDate> </Course> <Course> ... </Course> </Courses>
The results fields explained
- Complete Indicates if the user has completed this course.
- PercentageComplete The number of modules the user has completed expressed as percentage.
- AssignedDate The date the user was assigned the course.
- StartDate The date the user started the course.
- DateCompleted Indicates the date the user completed this course.
- UpToDate Indicates if the course has changed since the user completed it.
Get Learnings paths assigned to a User
Get a list of learning paths assigned to a user.
Request URI
GET /users/[userid]/learningpaths
Response Body (XML)
<LearningPaths> <LearningPath> <Id></Id> <Name></Name> <Active></Active> <OriginalId></OriginalId> <Complete></Complete> <PercentageComplete></PercentageComplete> <AssignedDate></AssignedDate> <StartDate></StartDate> <DateCompleted></DateCompleted> <ResultId></ResultId> <AccessTillDate></AccessTillDate> </LearningPath> <LearningPath> ... </LearningPath> </LearningPaths>
Get Courses Assigned for a List of Users
Get the course assignments for a specific list of users (no greater than a list of 25 users).
Request URI
POST /users/courses?
Request Body (XML)
<Users> <User> <Id></Id> </User> <User> <Id></Id> </User> <User> <Id></Id> </User> <User> <Id></Id> </User> </Users>
Response Body (XML)
<Users xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> <User> <Id></Id> <Courses> <Course> <Id></Id> <Code/> <Name></Name> <Active>true</Active> <Complete>false</Complete> <PercentageComplete>0.00</PercentageComplete> <AssignedDate>2020-12-12T09:18:00.647</AssignedDate> <StartDate i:nil="true"/> <DateCompleted i:nil="true"/> <UpToDate>true</UpToDate> <Overdue>false</Overdue> <CompliantTill i:nil="true"/> <IsLearningPath>false</IsLearningPath> <CourseCreatedDate>2020-10-15T11:04:33.297</CourseCreatedDate> <CourseCreator i:nil="true"/> <OriginalId></OriginalId> <ResultId></ResultId> <AccessTillDate i:nil="true"/> <UserId></UserId> </Course> </Courses> </User> <User> <Id></Id> <Courses> <Course> <Id></Id> <Code/> <Name></Name> <Active>true</Active> <Complete>false</Complete> <PercentageComplete>0.00</PercentageComplete> <AssignedDate>2020-04-07T11:22:40.327</AssignedDate> <StartDate i:nil="true"/> <DateCompleted i:nil="true"/> <UpToDate>true</UpToDate> <Overdue>false</Overdue> <CompliantTill i:nil="true"/> <IsLearningPath>false</IsLearningPath> <CourseCreatedDate>2020-04-07T11:04:33.297</CourseCreatedDate> <CourseCreator i:nil="true"/> <OriginalId></OriginalId> <ResultId></ResultId> <AccessTillDate i:nil="true"/> <UserId></UserId> </Course> <Course> <Id></Id> <Code></Code> <Name></Name> <Active></Active> <Complete></Complete> <PercentageComplete>0.00</PercentageComplete> <AssignedDate>2020-04-07T11:22:40.327</AssignedDate> <StartDate>2020-04-12T08:45:40.824</StartDate> <DateCompleted i:nil="true"/> <UpToDate></UpToDate> <Overdue></Overdue> <ComplaintTill i:nil="true"/> <IsLearningPath></IsLearningPath> <CourseCreateDate></CourseCreateDate> <CourseCreator i:nil="true"/> <OriginalId></OriginalId> <ResultId></ResultId> <ResultId></ResultId> <AccessTillDate i:nil="true"/> </Course> </Courses> </User> </Users>
Request Body (JSON)
[ { "Id": "" }, { "Id": "" }, { "Id": "" }, { "Id": "" } ]
Response Body (JSON)
[ { "Id": "AbC123eFg456HiJ789", "Courses": [ { "Id": "", "Code": "Code 123", "Name": "Example Course Name", "Active": true, "Complete": false, "PercentageComplete": 0.00, "AssignedDate": "/Date(1234567891011-0000)/", "StartDate": null, "DateCompleted": null, "UpToDate": true, "Overdue": false, "CompliantTill": null, "IsLearningPath": false, "CourseCreatedDate": "/Date(1234567891011-0000)/", "CourseCreator": null, "OriginalId": 1234567, "ResultId": 123456789, "AccessTillDate": null, "UserId": "AbCDeFg123456HiJ789" }, { "Id": "AbC123456eFgHiJ789", "Code": "Code 123", "Name": "Example LP Name", "Active": true, "Complete": false, "PercentageComplete": 0.00, "AssignedDate": "/Date(1234567891011-0000)/", "StartDate": null, "DateCompleted": null, "UpToDate": true, "Overdue": false, "CompliantTill": null, "IsLearningPath": true, "CourseCreatedDate": "/Date(1234567891011-0000)/", "CourseCreator": null, "OriginalId": 1234566, "ResultId": 123456788, "AccessTillDate": null, "UserId": "AbCDeFg123456789HiJ" } ] } ]
Get Course and Module Results for a User
Get course results and module results for a User.
Request URI
GET /users/{userid}/courses/{courseid}?
Response Body (XML)
<Courses> <Course> <Id>string [max length 50]</Id> <Code>string [max length 20]</Code> <Name>string [max length 255]</Name> <Active>true/false</Active> <Complete>true/false</Complete> <PercentageComplete>decimal</PercentageComplete> <AssignedDate>YYYY-MM-DDTHH:MM:SS.SSS</AssignedDate> <StartDate>YYYY-MM-DDTHH:MM:SS.SSS</StartDate> <DateCompleted>YYYY-MM-DDTHH:MM:SS.SSS</DateCompleted> <UpToDate>true/false</UpToDate> <Overdue>true/false</Overdue> <Modules> <Module> <Id>string [max length 50]</Id> <Code>string [max length 50]</Code> <Name>string [max length 255]</Name> <Passmark>integer</Passmark> <Score>integer</Score> <Completed>true/false</Completed> <LastUpdated>YYYY-MM-DDTHH:MM:SS.SSS</LastUpdated> <StartDate>YYYY-MM-DDTHH:MM:SS.SSS</StartDate> <DateCompleted>YYYY-MM-DDTHH:MM:SS.SSS</DateCompleted> <Attempt>integer</Attempt> <OriginalId>string [max length 50]</OriginalId> <ResultId>string [max length 50]</ResultId> </Module> <Module> ... </Module> </Modules> <CourseDueDate>YYYY-MM-DDTHH:MM:SS.SSS</CourseDueDate> <OriginalId>integer</OriginalId> <ResultId>string [max length 50]</ResultId> </Course> </Courses>
The Module fields explained
- Passmark Indicates the passmark set on the module if one is set (Assessments)
- Score The score achieved for the module (Assessments)
- Completed Indicates whether the module is completed or not
- LastUpdated Indicates the date that the course was last updated. Will return nil if it has not been updated
- Attempt Indicates the number of attempts that were made on the module
Reset Course Results for a User
If a course is already completed this will revert the course to incomplete and move it back into the learners To Do list. It will also reset the percentage complete to zero. The same rules apply even if the user has only partially completed the course.
Request URI
PUT /users/{userid}/courses/{courseid}/reset?
Response Header
200 OK
Assign Courses to a User
Add a list of courses to a User. If the courses already exist in the team or if the course ids are invalid they will be ignored. Emails will be sent notifying the user of the course assignment providing they have previously logged into their account. It is possible to disable sending course invitation emails by adding the following querystring parameter to the end of the uri : “&sendmessage”=false.
Request URI
POST /users/{userid}/courses?
Request Body (XML)
<Courses> <Course> <Id>string [max length 50]</Id> </Course> <Course> <Id>string [max length 50]</Id> </Course> </Courses>
Request Body (JSON)
[ { "Id": "bYWg1D67tgo1" } ]
Response Header
201 Success
Remove Courses from a User
Courses can only be removed from a User one per request.
Request URI
DELETE /users/{userid}/courses/{courseid}
Response Header
200 OK
Assign Learning Paths to a User.
Assign one or more learning paths to a user.
Request URI
POST /users/{userid}/learningpaths?
Request Body (XML)
<LearningPaths> <LearningPath> <Id>[LearningPathId]</Id> </LearningPath> <LearningPath> ... </LearningPath> </LearningPaths>
Response Header
201 Created
Remove a User from a Learning Path
Unassigns a user from a learning path
Request URI
DELETE /users/{userid}/learningpaths/{learningpathid}?
Response Header
201 Created