Description
@keibux/n8n-nodes-kajabi
n8n community node package for Kajabi — the all-in-one platform for online courses, memberships, and digital products.
n8n is a fair-code licensed workflow automation platform.
- Installation
- Nodes
- Resources & Operations
- Webhook Trigger Events
- Credentials
- Pagination, Sort, Sparse Fields, Includes
- Compatibility
- Resources
Installation
In n8n: Settings → Community Nodes → Install and enter:
@keibux/n8n-nodes-kajabi
Or via npm:
npm install @keibux/n8n-nodes-kajabi
Nodes
This package ships 3 nodes:
| Node | Type | Purpose |
|—|—|—|
| Kajabi | Action | Main CRUD/query node — 19 resources, 60+ operations |
| Kajabi Trigger | Webhook trigger | Auto-registers Kajabi webhooks via /v1/hooks for 6 event types |
| Kajabi Contact Trigger | Polling trigger | Polls /v1/contacts for created/updated contacts |
Resources & Operations
Contact (full CRUD + relationships)
Create · Get · Get Many · Update · Delete · Add Tags · Remove Tags · Replace Tags · List Tags · Grant Offers · List Offers · Replace Offers · Revoke Offers
Contact Note (full CRUD)
Create · Get · Get Many · Update · Delete
Contact Tag
Get Many
Customer
Get · Get Many · Grant Offers · List Offers · Replace Offers · Revoke Offers
Offer
Get · Get Many · List Products
Product
Get · Get Many
Course
Get · Get Many
Form
Get · Get Many · Submit (POST /v1/forms/{id}/submit)
Form Submission
Get · Get Many
Blog Post
Get · Get Many
Landing Page
Get · Get Many
Payout (Kajabi Payments)
Get · Get Many — Site ID is required by Kajabi; the node enforces it as top-level.
Site
Get · Get Many
Purchase
Get · Get Many · Cancel Subscription · Deactivate · Reactivate
Order
Get · Get Many
Order Item
Get · Get Many
Transaction
Get · Get Many
Webhook (CRUD on /v1/hooks)
Create · Get · Get Many · Delete
Custom Field
Get · Get Many
User
Get Current (/v1/me) · Get API Version (/v1/version)
Webhook Trigger Events
The Kajabi Trigger node auto-registers webhooks via POST /v1/hooks for these events (the credential’s Site ID must be set):
| Event | Description | Optional filter |
|—|—|—|
| tagAdded | Fires when a tag is added to a contact | Tag ID |
| tagRemoved | Fires when a tag is removed | Tag ID |
| formSubmission | Fires on every form submission | Form ID |
| purchase | New purchase (single or first recurring) | Offer ID |
| paymentSucceeded | Every successful charge (incl. recurring renewals) | — |
| orderCreated | Multi-item commerce orders | — |
| anyWebhook | Catch-all receiver (manual setup, no auto-register) | — |
Webhook security options
Kajabi does not officially sign webhooks (verified 2026-05). The trigger exposes two opt-in defenses:
X-Kajabi-Token (or ?token= query) matching the configured value.Credentials
Two credential types are available:
https://api.kajabi.com/v1/oauth/token.Both expose a Site ID field that the action node uses as a default for filter[site_id] and that the trigger requires for auto-registration.
Pagination, Sort, Sparse Fields, Includes
All Get Many operations support standard JSON:API features:
links.next until exhausted.field / -field syntax (e.g. -created_at,name).fields[]=field1,field2 for reduced payloads.included array.eq, cont, gt, lt, gte, lte, …).Site ID filter defaults to ={{$credentials.siteId}} so multi-site accounts don’t accidentally query the wrong tenant.
Compatibility
>=1.83.0 <2.0.0 (peer dependency)>=18Upgrading from 1.1.3
2.0.0 is a major release with breaking changes (renamed filters, inverted welcome-email semantics, auto-registered formsubmission webhooks, flatten separator →., and stricter ID validation). See the Migration Guide in CHANGELOG.md before upgrading workflows.