Course
Course List
Use this API to get the list of all courses created in the LMS.
GET /course/course-list
Query string parameters
Field | Type | Description |
---|---|---|
firstRecord required | integer | First record to return. Default: 1 |
count required | integer | Number of records to be returned starting from the first record. Default: 20, Max count limit: 100 |
filterData | JSON Array | Search all records using the following filters:
|
- filterData
{
"field": {
"courseId": [],
"categoryId": [32, 33],
"title": "string",
"courseCode": "string",
"eligibleForSale": 0,
"status": 1,
"courseType": 1
},
"generic": "string",
"sortByfield": "string",
"sortType": "string"
}
- Response
- Schema
- Error Codes
{
"success": true,
"data": {
"response": {
"acknowledgement": "Success",
"data": {
"courseList": [
{
"courseId": 12,
"title": "Product Training",
"courseType": "Single Subject",
"durationInDays": 30,
"courseCode": "WT001",
"description": "Test",
"trainer": "Mr. Rajesh",
"thumbnail": null,
"eligibleForSale": true,
"status": true,
"availableFrom": "01-01-2018",
"availableTill": "31-12-2025",
"avgRating": 0,
"currency": [
{
"currencyCode": "INR",
"price": 750,
"isDefault": true
}
]
}
],
"totalRecords": 1
},
"error": {
"code": "",
"internal_message": "",
"moreInfo": []
}
}
}
}
Field | Type | Description |
---|---|---|
courseId | number | ID of the course. |
title | string | Title of the course. |
courseType | string | Type of the course. |
durationInDays | number | Duration of the course in days. |
courseCode | string | Code associated with the course. |
description | string | Description of the course. |
trainer | string | Name of the course trainer. |
thumbnail | string | URL of the course thumbnail (if available). |
eligibleForSale | boolean | Indicates if the course is eligible for sale. |
status | boolean | Indicates the status of the course. |
availableFrom | string | Start date of course availability. |
availableTill | string | End date of course availability. |
avgRating | number | Average rating of the course. |
currency | array | Array of currency objects containing price information. |
currencyCode | string | |
price | string | |
isDefault | boolean | |
totalRecords | number | Total number of records. |
Code | Description |
---|---|
1003 | "Invalid firstRecord" |
1004 | "Invalid count" |
1005 | "Missing filterData" |
1006 | "Invalid filterData" |
1007 | "Missing filterData – field" |
1008 | "Invalid filterData – field" |
1009 | "Missing filterData – generic" |
1010 | "Invalid filterData – generic" |
1011 | "Missing filterData – sortByfield" |
1012 | "Invalid filterData – sortByfield" |
1013 | "Missing filterData – sortType" |
1014 | "Invalid filterData – sortType" |
For general error details, click here.
Course Details
Use this API to get details of a specific course.
GET /course/{courseId}/detail
Path parameter
Field | Type | Description |
---|---|---|
courseId required | integer | Course ID of the course |
- Response
- Schema
- Error Codes
{
"success": true,
"data": {
"response": {
"acknowledgement": "Success",
"data": {
"courseDetail": {
"courseId": 3,
"title": "Human Resource Management",
"courseCode": "101",
"description": "Human Resource Management (HRM, or simply HR).",
"durationInDays": "180",
"startDate": "2017-09-20",
"endDate": "2022-12-31",
"thumbnail": null,
"department": [
{
"departmentId": 38,
"name": "Information Technology",
"status": true
}
],
"designation": [
{
"designationId": 6,
"name": "Senior Manager",
"status": true
}
],
"faq": "",
"demovideo": "",
"features": "",
"trainerName": "Rajesh Kumar",
"certificateIssue": null,
"tags": "HRM",
"seoTitle": "",
"seoDescription": "",
"keywords": "",
"proficiency": [
{
"proficiencyId": 1,
"name": "Level 1",
"status": true
}
],
"competency": [
{
"competencyId": 1,
"name": "Communication",
"status": true
}
],
"subject": [
{
"subjectId": 1,
"name": "Test"
}
],
"currency": [
{
"currencyCode": "INR",
"price": "500",
"isDefault": 1
}
]
}
},
"error": {
"code": "",
"internal_message": "",
"moreInfo": []
}
}
}
}
Field | Type | Description | |
---|---|---|---|
courseId | number | ID of the course. | |
title | string | Title of the course. | |
courseCode | string | Code of the course. | |
description | string | Description of the course. | |
durationInDays | string | Duration of the course in days. | |
startDate | string | Enrollment available from date. | |
endDate | string | Enrollment available till date. | |
thumbnail | string | URL of the course thumbnail. | |
department | array | Array of department objects. | |
departmentId | number | ID of the Department | |
name | string | Name of the Department | |
status | boolean | Status of the Department | |
designation | array | Array of designation objects. | |
designationId | number | ID of the Designation | |
name | string | Name of the Designation | |
status | boolean | Status of the Designation | |
faq | string | FAQ for the course. | |
demovideo | string | Demo video URL. | |
features | string | Features of the course. | |
trainerName | string | Name of the trainer. | |
tags | string | Tags associated with the course. | |
seoTitle | string | SEO title for the course. | |
seoDescription | string | SEO description for the course. | |
keywords | string | Keywords for the course. | |
proficiency | array | Array of proficiency objects. | |
proficiencyId | number | ID of the Proficiency | |
name | string | Name of the Proficiency | |
status | boolean | Status of the Proficiency | |
competency | array | Array of competency objects. | |
competencyId | number | ID of the Competency | |
name | string | Name of the Competency | |
status | boolean | Status of the Competency | |
subject | array | Array of subject objects. | |
subjectId | number | ID of the Subject | |
name | string | Name of the Subject | |
currency | array | Array of currency objects. | |
currencyCode | string | Currency code. | |
price | string | Price of the course in the specified | |
isDefault | number | Indicates if the currency is the default. |
Code | Description |
---|---|
1001 | "Missing courseId" |
1002 | "Invalid courseId" |
For general error details, click here.
Trainee - Course Library
Use this API to get the list of all courses added to the library in which the Trainee is eligible for enrollment.
GET /course/trainee-course-library
Query string parameters
Field | Type | Description |
---|---|---|
firstRecord required | integer | First record to return. Default: 1 |
count required | integer | Number of records to be returned starting from the first record. Default: 20, Max count limit: 100 |
filterData required | JSON Array | Search all records using the following filters:
|
- filterData
{
"field": {
"courseId": [],
"title": "string",
"courseCode": "string",
"status": 1
},
"generic": "string",
"sortByfield": "string",
"sortType": "string"
}
- Response
- Schema
- Error Codes
{
"success": true,
"data": {
"response": {
"acknowledgement": "Success",
"data": {
"courseList": [
{
"courseId": 1490,
"title": "Principles of an Effective ",
"courseType": "Single Subject",
"durationInDays": 15,
"courseCode": "10118",
"description": "<p>Principles of Effective Managers talks about what it takes to be an effective manager. It tells you what are the characteristics and behaviours demonstrated by effective managers.</p>",
"thumbnail": "https://example.com/thumbnail.png",
"eligibleForSale": true,
"avgRating": 0,
"trainerName": "Rajesh Kumar",
"inLibrary": true,
"inLibraryApprovedBy": "Self",
"status": true,
"availableFrom": "04-10-2017",
"availableTill": "31-03-2025"
},
],
"totalRecords": 1
},
"error": {
"code": "",
"internal_message": "",
"moreInfo": []
}
}
}
}
Field | Type | Description |
---|---|---|
courseId | number | ID of the course. |
title | string | Title of the course. |
courseType | string | Type of the course. |
durationInDays | number | Duration of the course in days. |
courseCode | string | Code of the course. |
description | string | Description of the course. |
thumbnail | string | URL of the course thumbnail. |
eligibleForSale | boolean | Indicates if the course is eligible for sale. |
avgRating | number | Average rating of the course. |
trainerName | string | Name of the trainer. |
inLibrary | boolean | Indicates if the course is in the library. |
inLibraryApprovedBy | string | Approved by (if applicable). |
status | boolean | Status of the course. |
availableFrom | string | Start date of course availability. |
availableTill | string | End date of course availability. |
totalRecords | number | Total number of users. |
Code | Description |
---|---|
1001 | "Missing courseId" |
1002 | "Invalid courseId" |
For general error details, click here.
Trainee - Enroll to a course in Course Library
Use this API to enroll a Trainee to a course that is added to the course library.
GET /course/{courseId}/trainee-course-library-request
Path parameter
Field | Type | Description |
---|---|---|
courseId required | integer | A single course ID |
- Response
- Schema
- Error Codes
{
"success": true,
"data": {
"response": {
"acknowledgement": "Success",
"data": {
"enrollmentId": 22084
},
"error": {
"code": "",
"internal_message": "",
"moreInfo": []
}
}
}
}
Field | Type | Description |
---|---|---|
enrollmentId | int | Enrollment ID of the user |
Code | Description |
---|---|
1001 | "Missing courseId" |
1002 | "Invalid courseId" |
1015 | "Not eligible for request" |
1016 | "Request status - Pending" |
1017 | "Request status - Rejected" |
For general error details, click here.
Trainee - Recommended Courses
Use this API to get the list of recommended courses for a Trainee.
GET /course/trainee-course-recommended
Query string parameters
Field | Type | Description |
---|---|---|
firstRecord required | integer | First record to return. Default: 1 |
count required | integer | Number of records to be returned starting from the first record. Default: 20, Max count limit: 100 |
filterData required | JSON Array | Search record with following filters:
|
- filterData
{
"field": {
"courseId": [],
"title": "string",
"courseCode": "string",
"status": 1
},
"generic": "string",
"sortByfield": "string",
"sortType": "string"
}
- Response
- Schema
- Error Codes
{
"success": true,
"data": {
"response": {
"acknowledgement": "Success",
"data": {
"courseList": [
{
"courseId": 1352,
"title": "Communications Skills",
"courseType": "Single Subject",
"durationInDays": 90,
"courseCode": "m23",
"description": "<p><strong>Lorem Ipsum</strong> is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum</p>",
"thumbnail": "https://example.com/thumbnail.png",
"eligibleForSale": true,
"avgRating": 4,
"trainerName": "Rajesh Kumar",
"status": true,
"availableFrom": "27-04-2020",
"availableTill": "20-11-2025",
"currency": []
}
],
"totalRecords": 1
},
"error": {
"code": "",
"internal_message": "",
"moreInfo": []
}
}
}
}
Field | Type | Description |
---|---|---|
courseId | number | ID of the course. |
title | string | Title of the course. |
courseType | string | Type of the course. |
durationInDays | number | Duration of the course in days. |
courseCode | string | Code associated with the course. |
description | string | Description of the course. |
trainer | string | Name of the course trainer. |
thumbnail | string | URL of the course thumbnail (if available). |
eligibleForSale | boolean | Indicates if the course is eligible for sale. |
status | boolean | Indicates the status of the course. |
availableFrom | string | Start date of course availability. |
availableTill | string | End date of course availability. |
avgRating | number | Average rating of the course. |
currency | array | Array of currency objects containing price information. |
currencyCode | string | |
price | string | |
isDefault | boolean | |
totalRecords | number | Total number of users. |
Code | Description |
---|---|
1003 | "Invalid firstRecord" |
1004 | "Invalid count" |
1005 | "Missing filterData" |
1006 | "Invalid filterData" |
1007 | "Missing filterData – field" |
1008 | "Invalid filterData – field" |
1009 | "Missing filterData – generic" |
1010 | "Invalid filterData – generic" |
1011 | "Missing filterData – sortByfield" |
1012 | "Invalid filterData – sortByfield" |
1013 | "Missing filterData – sortType" |
1014 | "Invalid filterData – sortType" |
For general error details, click here.
Trainee - Action for Recommended Course
Use this API to enroll a Trainee to a recommended course or dismiss it from the list.
GET /course/trainee-course-recommended-action
Query string parameters
Field | Type | Description |
---|---|---|
actionType required | integer | 1-dismiss, 2-enrollment |
courseId required | integer | Course ID of the Course |
- Response
- Schema
- Error Codes
{
"success": true,
"data": {
"response": {
"acknowledgement": "Success",
"data": true,
"error": {
"code": "",
"internal_message": "",
"moreInfo": []
}
}
}
}
Field | Type | Description |
---|---|---|
acknowledgement | string | Confirmation |
Code | Description |
---|---|
1001 | "Missing courseId" |
1002 | "Invalid courseId" |
1018 | "Invalid actionType" |
1019 | "Missing actionType" |
For general error details, click here.
Trainee - Assignment List
Use this API to get the list of Assignments available to a Trainee.
GET /course/{userId}/trainee-assignment-list
Path parameters
Field | Type | Description |
---|---|---|
userId required | integer | User ID |
Query string parameters
Field | Type | Description |
---|---|---|
subjectId | integer | Subject ID |
q | string | Filter based on courseTitle, documentName, etc. |
- Response
- Schema
- Error Codes
{
"success": true,
"data": {
"response": {
"acknowledgement": "Success",
"data": [
{
"enrollmentId": 21783,
"documentId": 21730,
"courseId": 1422,
"subjectId": null,
"dueDate": "2023-08-06",
"courseTitle": "Communication Skills",
"documentName": "Assignment 1",
"submitedDate": "2023-08-04",
"message": null,
"status": "Submited",
"statusColor": "#DEFFEC",
"scored": "100%"
},
],
"error": {
"code": "",
"internal_message": "",
"moreInfo": []
}
}
}
}
Field | Type | Description |
---|---|---|
enrollmentId | number | ID of the enrollment. |
documentId | number | ID of the document. |
courseId | number | ID of the course. |
subjectId | number | ID of the subject (if applicable). |
dueDate | string | Due date of the document. |
courseTitle | string | Title of the course. |
documentName | string | Name of the document. |
submitedDate | string | Submission date of the document. |
message | string | Additional message (if applicable). |
status | string | Status of the document. |
statusColor | string | Color code for the status. |
scored | string | Score or percentage achieved. |
Code | Description |
---|---|
1023 | "Missing subjectId" |
1024 | "Invalid subjectId" |
For general error details, click here.
Trainee - List of Modules and Documents in a Course
Use this API to get the list of course modules and documents for a specific enrollment.
GET /course/{enrollmentId}/trainee-module-document-list
Path parameters
Field | Type | Description |
---|---|---|
enrollmentId required | integer | Enrollment ID |
Query string parameters
Field | Type | Description |
---|---|---|
subjectId | integer | Subject ID |
- Response
- Schema
- Error Codes
{
"success": true,
"data": {
"response": {
"acknowledgement": "Success",
"data": {
"onModuleCompletion": null,
"enrollmentId": 22084,
"avgPassingPercentage": "10",
"enrollmentStart": "2023-08-11",
"enrollmentEnd": "2023-08-26",
"progress": 0,
"accessCourseMaterialInSequence": false,
"hasAutoAssignment": false,
"completionCriteria": "ASSIGNMENT_EXAM",
"certificateIssue": null,
"trainerId": 2,
"chapterDetail": [
{
"chapter": {
"chapterId": 5337,
"chapterName": "Managerial Effectiveness in the Workplace",
"chapterDescription": null,
"chapterStartOn": null
},
"docuemnts": [
{
"chapterId": 5337,
"documentId": 22315,
"documentName": "Summary",
"documentDescription": "PDF",
"documentTypeId": 2,
"isCompleted": false,
"information": null,
"canView": true
},
{
"chapterId": 5337,
"documentId": 20698,
"documentName": "Survey",
"documentDescription": "Survey",
"documentTypeId": 15,
"isCompleted": false,
"information": null,
"canView": true
}
]
},
]
},
"error": {
"code": "",
"internal_message": "",
"moreInfo": []
}
}
}
}
Field | Type | Description |
---|---|---|
enrollmentId | number | ID of the enrollment. |
avgPassingPercentage | string | Average passing percentage. |
enrollmentStart | string | Start date of the enrollment. |
enrollmentEnd | string | End date of the enrollment. |
progress | number | Progress of the enrollment. |
accessCourseMaterialInSequence | boolean | Indicates if course material is accessed in sequence. |
hasAutoAssignment | boolean | Indicates if auto assignments are available. |
completionCriteria | string | Completion criteria for the enrollment. |
trainerId | number | ID of the trainer. |
chapterDetail | array | Array of chapter detail objects. |
chapter.chapterId | number | |
chapter.chapterName | string | |
chapter.chapterDescription | string | |
chapter.chapterStartOn | string | |
docuemnts | array | |
chapterId | number | |
documentId | number | |
documentName | string | |
documentDescription | string | |
documentTypeId | number | |
isCompleted | boolean | |
information | string | |
canView | boolean |
Code | Description |
---|---|
1022 | "Not eligible to view course" |
1023 | "Missing subjectId" |
1024 | "Invalid subjectId" |
For general error details, click here.
Trainee - Course Content View
Use this API to get details of a individual course content (e.g.: HTML, PDF, PPT, Videos, Assessments, etc.). Mark content as Completed. Submit answers for Assignment, Assessment, Practice test, Survey, Poll questions.
GET /course/{enrollmentId}/trainee-document-view
Path parameters
Field | Type | Description |
---|---|---|
enrollmentId required | integer | Enrollment ID |
Query string parameters
Field | Type | Description |
---|---|---|
documentId required | integer | Document ID |
subjectId | integer | Subject ID |
startAssignment | integer | value = 1 to start time barred assignment |
requestForExtention | integer | value = 1 |
traineeResponse | jsonArray |
|
- traineeResponse
{
"questionId":23516,
"optionId":"1",
"markComplete":1,
"clearAnswer":0,
"reAttempt":0
}
- Response
- Schema
- Error Codes
{
"success": true,
"data": {
"response": {
"acknowledgement": "Success",
"data": {
"progress": 0,
"documentId": 22338,
"documentName": "Assessment - One question at a time",
"documentDescription": "<h2>Why do we use it?</h2>\n\n<p>It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using 'Content here, content here', making it look like readable English. Many desktop publishing packages and web page editors now use Lorem Ipsum as their default model text, and a search for 'lorem ipsum' will uncover many web sites still in their infancy. Various versions have evolved over the years, sometimes by accident, sometimes on purpose (injected humour and the like).</p>\n",
"multiAttemptTillCorrectAnswer": false,
"displayAllQuestion": true,
"passingPercentage": 60,
"isCompleted": false,
"eligibleToMarkComplete": false,
"totalQuestion": 3,
"attempted": 1,
"totalCorrect": 0,
"correctPercentage": 0,
"canReattempt": false,
"displayCorrectAns": true,
"mcqData": [
{
"questionId": 23516,
"questionMarks": 1,
"obtainMarks": 0,
"singleOrMultiple": "SINGLE",
"correctAns": "3",
"userAnswer": "1",
"questionBody": "<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\" \"http://www.w3.org/TR/REC-html40/loose.dtd\">\n<?xml encoding=\"UTF-8\"><html><body><!--?xml encoding=\"UTF-8\"--><!--?xml encoding=\"UTF-8\"--></p><pre>Alphalearn is a Cloud based _____<br><br><a href=\"https://s3.ap-south-1.amazonaws.com/test.alphalearn.com/cElGbkQyUENEVk09/TXUzSG5GeFF6c289/M1pMWnE1c0ZCRmM9/a1ErSDBSNkY2SlU9/1688538929_alphalearn_sample.pdf\">1688538929_alphalearn_sample.pdf</a><br></body></html>\n",
"options": [
{
"optionId": 1,
"option": "CRM"
},
{
"optionId": 2,
"option": "ERP"
},
{
"optionId": 3,
"option": "LMS"
},
{
"optionId": 4,
"option": "All of the above"
}
]
}
]
},
"error": {
"code": "",
"internal_message": "",
"moreInfo": []
}
}
}
}
Field | Type | Description | |
---|---|---|---|
documentId | number | ID of the document. | |
documentName | string | Name of the document. | |
documentDescription | string | Description of the document. | |
multiAttemptTillCorrectAnswer | boolean | Indicates whether multiple attempts are allowed until the correct answer is achieved. | |
displayAllQuestion | boolean | Indicates whether all questions should be displayed at once. | |
passingPercentage | number | The passing percentage for the document. | |
isCompleted | boolean | Indicates whether the document is completed. | |
eligibleToMarkComplete | boolean | Indicates whether the trainee is eligible to mark the document as complete. | |
totalQuestion | number | Total number of questions in the document. | |
attempted | number | Number of questions attempted by the trainee. | |
totalCorrect | number | Total number of questions answered correctly. | |
correctPercentage | number | Percentage of questions answered correctly. | |
canReattempt | boolean | Indicates whether the trainee can reattempt the questions. | |
displayCorrectAns | boolean | Indicates whether the correct answers should be displayed. | |
mcqData | array | ||
questionId | number | ID of the multiple-choice question. | |
questionMarks | number | Marks assigned to the question. | |
obtainMarks | number | Marks obtained by the trainee for the question. | |
singleOrMultiple | string | Type of question: "SINGLE" or "MULTIPLE". | |
correctAns | string | Correct answer option(s) for the question. | |
userAnswer | string | Answer chosen by the trainee for the question. | |
questionBody | string | HTML body of the question. | |
options | array | Array of options for the multiple-choice question. Each option has an "optionId" and "option". | |
optionId | integer | ||
option | string |
Code | Description |
---|---|
1023 | "Missing subjectId" |
1024 | "Invalid subjectId" |
1022 | "Not eligible to view course" |
For general error details, click here.