Overview
As a content provider, you typically need to:- Read users from the LMS - automatically provision user profiles without manual signup
- List your courses inside the LMS - users see your catalog in their company’s LMS and get redirected to your platform
- Write completion data back - track which courses users have finished
Why integrate with customer LMS systems?
- Discovery & assignment - More users find and access your courses when they’re in the LMS, and administrators can assign content directly to their learners
- Analytics for stakeholders - HR and leadership can track training completion and correlate it with outcomes
- Sales checkbox - “LMS integration” is a requirement in many sales cycles. Most end customers demand the content to appear in their LMS
- ROI demonstration - Prove your platform’s value (e.g., “employees who complete 6+ hours of training score X higher on performance reviews”)
Implementation flow
The typical integration flow for content providers looks like this:API endpoints you’ll need
| Endpoint | Purpose |
|---|---|
| GET /lms/users | Sync employee profiles from the LMS |
| POST /lms/courses | Push your course listings with deep links |
| GET /lms/course-progressions | Check which users are assigned/enrolled |
| POST /lms/course-progressions | Enroll users in courses |
| POST /lms/course-progressions/:id/complete | Write back completion data |
Step 1: Read users from the LMS
First, sync the user base from your customer’s LMS. This allows you to:- Know which employees exist in the organization
- Match users when they access your platform
- Provision accounts automatically
Step 2: Push your course catalog
Create courses in the customer’s LMS with deep links that redirect users to your platform:The
course_url field should be a deep link to your platform. When users
click on the course in their LMS, they’ll be redirected to your platform where
they can consume the content.Step 3: Track assignments and enrollments
Check which users have been assigned or enrolled in your courses:user_ids query parameter:
Step 4: Write completions back to the LMS
When a user completes a course on your platform, mark it as complete in the LMS:completed_at field is optional and defaults to the current date if not provided.
This ensures that:
- The completion appears in the customer’s LMS reports
- L&D teams can track training progress
- Compliance requirements are documented
Compared to SCORM
Many content providers currently use SCORM exports (a standard package format that LMS systems accept). However, SCORM has limitations:- No user sync - You can’t read users from the LMS
- No dynamic completions - You can’t write back completions programmatically
- Worse UX - Users stay in the LMS instead of your optimized platform
Next steps
- Complete the setup guide to configure your Kombo account
- Set up the connection flow for your customers
- Explore the LMS API reference for detailed endpoint documentation