Back to Nodes

Kajabi

Last updated May 8, 2026

n8n community node for Kajabi API integration - manage contacts, customers, offers, courses, forms, purchases, orders, transactions, sites, products, webhooks and more

19 Weekly Downloads
155 Monthly Downloads

Included Nodes

Kajabi
Kajabi Trigger
Kajabi Contact Trigger

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:

  • Shared Secret — requires header X-Kajabi-Token (or ?token= query) matching the configured value.
  • Allowed IPs — comma-separated list of source IPs / simple CIDR prefixes.
  • Credentials

    Two credential types are available:

  • Kajabi OAuth2 API (recommended) — Client Credentials grant against https://api.kajabi.com/v1/oauth/token.
  • Kajabi API — User API Key (Bearer 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:

  • Return All toggle — when on, the node walks links.next until exhausted.
  • Sort — comma-separated field / -field syntax (e.g. -created_at,name).
  • Sparse Fieldsfields[]=field1,field2 for reduced payloads.
  • Include — eager-load relationships into a top-level included array.
  • Filters collection — Ransack-style operators (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

  • n8n-workflow >=1.83.0 <2.0.0 (peer dependency)
  • Node.js >=18
  • Upgrading 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.

    Resources

  • Kajabi API documentation
  • Kajabi Developers Portal
  • n8n community nodes

License

MIT