Teachable
by Teachable
A popular creator course platform. REST API (API-key auth, Pro plan+), webhooks for enrollment/completion/signup events (note: webhooks are unsigned), and a native Zapier app.
Direct integrations
Native integrations you connect from inside the LMS — typically an OAuth "Connect" flow, with no external middleware.
Supported — Native integrations installed from the dashboard; many for marketing/analytics/payments.
| Integration | Category | Type | Notes |
|---|---|---|---|
| Stripe | Payments | oauth |
Card payments. |
| PayPal | Payments | oauth |
PayPal checkout. |
| Mailchimp | Email marketing | oauth |
Sync students to lists. |
| ConvertKit | Email marketing | oauth |
Creator email automation. |
| Google Analytics | Analytics | snippet |
Tracking. |
| Segment | Analytics / CDP | api-key |
Event streaming. |
Middleware support
Third-party automation platforms (iPaaS) that connect this LMS to thousands of other apps without code.
Supported — Native Zapier app (requires Teachable's Growth plan or higher). Make and Pabbly also offer Teachable apps.
| Platform | Supported | Details |
|---|---|---|
| Zapier | Yes | Native Zapier app; requires Teachable Growth plan+. · 5 triggers, 3 actions |
| Make | Yes | Native Make Teachable app. |
| Pabbly Connect | Yes | Native Pabbly Connect Teachable integration. |
| n8n | Yes | Via HTTP/webhooks. |
| Microsoft Power Automate | No | |
| Workato | No | |
| Tray.io | No |
Zapier ↗
Triggers
- New enrollment
- Course completed
- New user
- New sale
- New transaction
Actions
- Enroll user in course
- Unenroll user
- Find/create user
API
Programmatic access to the LMS. Endpoints below are a documented subset — always check the vendor's official reference for the complete, current list.
Supported — REST API focused on CRUD for users, courses, enrollments, and pricing plans. Paths below are representative.
| Type | REST |
|---|---|
| Version | v1 |
| Authentication | API key in the apiKey header (Settings → API; Pro plan or higher) |
| Base URL | https://developers.teachable.com/v1 |
| Format | JSON |
| Rate limit | Documented per-plan limits (e.g. requests/min); HTTP 429 on excess. |
| Docs | https://docs.teachable.com/ |
Endpoints
Courses
| Method | Endpoint | Description |
|---|---|---|
| GET | /courses |
List courses |
| GET | /courses/{id} |
Get a course |
Users
| Method | Endpoint | Description |
|---|---|---|
| GET | /users |
List/search users (e.g. by email) |
| GET | /users/{id} |
Get a user |
Enrollments
| Method | Endpoint | Description |
|---|---|---|
| POST | /courses/{course_id}/enrollments |
Enroll a user in a course |
| DELETE | /courses/{course_id}/enrollments |
Unenroll a user |
Pricing
| Method | Endpoint | Description |
|---|---|---|
| GET | /courses/{course_id}/pricing_plans |
List pricing plans |
Webhooks
Outbound HTTP callbacks the LMS sends to your endpoint when events occur, with their supported event types and security model.
Supported — Subscribe to events and Teachable POSTs JSON to your URL. Important: Teachable does NOT sign its webhook payloads (no HMAC signature) — validate by other means (e.g. confirm via an API call) before trusting the data.
Security: HTTPS endpoint (payloads are unsigned)
| Event | Description |
|---|---|
enrollment.created | A student was enrolled (new admission) |
course.completed | A student completed a course |
user.created | A new user signed up |
user.updated | A user profile was updated |
sale / transaction | A new sale or transaction occurred |