Does LearnWorlds Have an API Good Enough for Migration?
LearnWorlds provides a REST v2 API with OAuth2 covering courses, users, enrollments, progress, assessments, and certifications across 15+ endpoint categories — comparable to Thinkific's API depth.
API authentication and access
LearnWorlds uses OAuth2 client credentials flow. You register an API client in your school settings, receive a client_id and client_secret, and exchange them for a time-limited access token. Tokens expire, so your migration tool needs to handle token refresh — something Thinkific's simpler API key approach doesn't require. Full API docs are available at learnworlds.dev (opens in new tab).
Endpoint coverage for migration
The API covers: courses (list, get by ID, content structure), users (list, get, enrollments per user), enrollments (create, list, manage), user progress (mark complete, track status), assessments (responses and scores), certifications, bundles, subscriptions, and notifications. That's 15+ endpoint categories — comparable to or better than Thinkific's combined GraphQL and REST surface area.
What's missing versus Thinkific
LearnWorlds doesn't expose direct video file URLs the way Thinkific's GraphQL VideoContent type does. LearnWorlds hosts video through their own infrastructure and the API returns course content structure but not raw media URLs. This means video migration from LearnWorlds requires a different approach — potentially using their video export tools or coordinating with their support for media access. This is the primary technical difference that makes a LearnWorlds exporter harder to build than the Thinkific one.
Our verdict
LearnWorlds is the only hosted LMS platform besides Thinkific with API depth sufficient for reliable, complete migration. Teachable's API doesn't expose lesson content. Kajabi has no public API. LearnWorlds is the clear second platform to support.