Overview
The Coursebox API allows enterprise clients and training organisations to automate learner management, integrate course data into other platforms (like CRMs, HR systems, or ERPs), and build custom user experiences. This guide explains how to use the accompanying Postman collection to explore and use Coursebox APIs.
Before You Start
✅ Requirements:
API add-on purchased from Coursebox
Postman installed or Postman web app account
Getting Started
1. Import the Collection
Open Postman.
Click "Import" and paste the provided file.
The collection will appear under "Coursebox API"
Endpoints
Authentication
Login
Authenticate users with their email and password to receive an access token.
Endpoint: POST /auth/login
Headers:
Content-Type: application/json
Request Body:
{
"email": "<email>",
"password": "<password>"
}
Response: Returns an access token for authenticated requests in token:id parameter.
User Management
Register a New User
Create a new Coursebox user.
Endpoint: POST /api/wineusers/createAccount
Headers:
X-Access-Token: <access_token>
Request Body:
{
"data": {
"user": {
"firstName": "<firstname>",
"lastName": "<lastname>",
"email": "<email>",
"password": "<password>"
},
"offerCode": "",
"marketingEmails": true,
"is18Plus": true
}
}
Retrieve User Details
Fetch user information by their ID.
Endpoint: GET /api/WineUsers/<userid>
Headers:
X-Access-Token: <access_token>
Edit User Details
Edit a Coursebox user.
Endpoint: POST /api/WineUsers/updateMainAttributes?id=<userid>
Headers:
X-Access-Token: <access_token>
Request Body:
{
"id": <userid>,
"attributes": {
"realm": <realm>,
"email": <email>,
"emailVerified": <emailVerified>,
"fullName": <fullName>,
"firstName": <firstName>,
"lastName": <lastName>,
"title": <title>,
"contactNumber": <contactNumber>,
"dateOfBirth": <dateOfBirth>,
"headline": <headline>,
"avatarUrl": <avatarUrl>,
"profile": {
"background": <background>
},
"country": <country>,
"city": <city>,
"location": <location>,
"region": <region>,
"state": <state>,
"zipCode": <zipCode>,
"status": [<status>],
"rate": <rate>,
"rateAdditionalTax": <rateAdditionalTax>,
"price": <price>,
"currency": <currency>,
"additionalTax": <additionalTax>,
"isDiscountCodeUsed": <isDiscountCodeUsed>,
"calendlyLink": <calendlyLink>,
"personalSite": <personalSite>,
"companySite": <companySite>,
"linkedIn": <linkedIn>,
"twitter": <twitter>,
"facebookLink": <facebookLink>,
"instagramLink": <instagramLink>,
"facebookId": <facebookId>,
"googleId": <googleId>,
"linkedinId": <linkedinId>,
"appleId": <appleId>,
"customerId": <customerId>,
"stripeId": <stripeId>,
"isDeleted": <isDeleted>,
"isPlatformUpdates": <isPlatformUpdates>,
"isAdmin": <isAdmin>,
"isExpertRequested": <isExpertRequested>,
"isExpertApproved": <isExpertApproved>,
"organisationCode": <organisationCode>,
"isVIPRequested": <isVIPRequested>,
"isVIPApproved": <isVIPApproved>,
"isChannelPublished": <isChannelPublished>,
"isCoursePublished": <isCoursePublished>,
"newEmail": <newEmail>,
"isSideBarVisible": <isSideBarVisible>,
"isTopBarVisible": <isTopBarVisible>,
"channelsPageTabs": <channelsPageTabs>,
"peoplePageTabs": <peoplePageTabs>,
"elibraryPageTabs": <elibraryPageTabs>,
"resourcesPageTabs": <resourcesPageTabs>,
"lastActiveAt": <lastActiveAt>,
"isInActive": <isInActive>,
"isTrial": <isTrial>,
"inIframe": <inIframe>,
"referer": <referer>,
"username": <username>,
"credentials": <credentials>,
"challenges": <challenges>,
"created": <created>,
"lastUpdated": <lastUpdated>,
"id": <id>,
"createdAt": <createdAt>,
"updatedAt": <updatedAt>,
"isUserAdmin": <isUserAdmin>,
"isVIP": <isVIP>,
"isBoxer": <isBoxer>,
"isPro": <isPro>,
"isApprovedExpert": <isApprovedExpert>,
"isExpert": <isExpert>,
"isLearner": <isLearner>,
"isFollowed": <isFollowed>
}
}
Course Management
Invite User to a Course
Send an invitation for a user to join a course.
Endpoint: POST /api/Courses/inviteUserForCourse
Headers:
X-Access-Token: <access_token>
Request Body:
{
"data": {
"firstName": "<firstname>",
"lastName": "<lastname>",
"courseid": <courseid>,
"email": "<email>"
},
"courseId": <courseid>,
"title": "",
"body": ""
}
Enroll User in a Course
Add a user to a specific course.
Endpoint: POST /api/Courses/<courseid>/enrolUser
Headers:
X-Access-Token: <access_token>
Request Body:
{
"id": <courseid>,
"userId": <userid>
}
Remove User from a Course
Unenroll a user from a course.
Endpoint: DELETE /api/Courses/<courseid>/users?userid=<userid>
Headers:
X-Access-Token: <access_token>
Retrieve Available Courses
Fetch a list of available courses.
Endpoint: GET /api/Courses/findCourses?pageOptions={"my":true}
Headers:
X-Access-Token: <access_token>
Retrieve Course Details
Fetch details of a specific course.
Endpoint: GET /api/Courses/findCourse?id=<courseid>
Headers:
X-Access-Token: <access_token>
Get Course Content
Retrieve content for a specific course page.
Endpoint: GET /api/Activities/<activityId>
Headers:
X-Access-Token: <access_token>
Get Course Learners
Retrieve a list of learners enrolled in a course.
Endpoint: GET /api/Courses/<courseid>/allLearners
Headers:
X-Access-Token: <access_token>
Get Course Administrators
Retrieve a list of course administrators.
Endpoint: GET /api/WineUsers/getUserForMentio?params={"all":true,"ids":"<courseid>"}
Headers:
X-Access-Token: <access_token>
Error Handling
The Coursebox API returns standard HTTP status codes:
200 OK – Request successful
400 Bad Request – Invalid request
401 Unauthorized – Invalid authentication token
404 Not Found – Resource not found
500 Internal Server Error – Issue on the server side
Best Practices
Always use HTTPS and manage secrets securely.
Limit token lifespan for security.
Add rate limiting logic on your system if building public interfaces.
FAQs
Q: Can I use this API to push results or assessments?
A: Not in this version. Please contact your Coursebox rep for advanced LTI or webhook support.
Q: Can I access this via Zapier?
A: Yes, a Zapier integration is available here: https://zapier.com/apps/coursebox-lms/integrations
Need Help?
For any questions or custom endpoints requests, contact:
? Coursebox Support
support@coursebox.ai
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article