# Kajabi setup for PopMCP

You paste the Client ID and Client Secret of a Kajabi User API Key created on Settings, Public API.

- Auth: API credentials
- Setup time: 6 min
- API base URL: https://api.kajabi.com/v1
- Credentials screen: https://app.kajabi.com/admin/settings/public_api
- Provider docs: https://help.kajabi.com/api-reference/authentication

## Approval required before this works

Kajabi gates the Public API behind billing: the docs state it "is included with the Pro Plan" and is "also available as a $25/mo add-on".

- Typical wait: Immediate once the plan or add-on is purchased
- Cost: Included on the Pro plan; otherwise a $25/month add-on, per Kajabi's own Public API getting-started doc.
- Blocked until approved: Without the Pro plan or the paid add-on, the Settings > Public API screen issues neither the client_id/client_secret used for the OAuth client_credentials call nor a User API Key, so no access token can be minted and every endpoint is unreachable.
- Works meanwhile: Nothing on the API side. Kajabi points Growth and Pro users who have not bought the add-on at webhooks, which it says "provide a similar purpose" for outbound event data.

## Before you begin

- Kajabi Pro plan, or the Public API add-on at $25/mo enabled by support@kajabi.com on a lower plan
- Owner or Subowner role. Only Owners and Subowners can create API keys
- A Kajabi account user to attach the key to. The key acts as that user

## Get your credentials

### 1. Check that the Public API is on your plan

The Public API ships with the Pro plan and is a $25/mo add-on on every other plan. Email support@kajabi.com to have it switched on.

Screen: https://help.kajabi.com/articles/api-integrations/public-api/using-kajabis-public-api

### 2. Open Settings, then Public API

Click Settings at the bottom of the left nav, then open Public API. Existing keys are listed under User API Keys.

Screen: https://app.kajabi.com/admin/settings/public_api

### 3. Create a User API Key

Click Create User API Key, name the key `PopMCP`, and pick the User it acts as. Tick the permissions PopMCP needs and click Create.

Screen: https://app.kajabi.com/admin/settings/public_api

### 4. Copy the Client ID and Client Secret

Find the new card headed PopMCP on the Public API page and copy Client ID and Client Secret.

Screen: https://app.kajabi.com/admin/settings/public_api

### 5. Paste both values into PopMCP

Put the Client ID in Client ID and the Client Secret in Client Secret, then click connect.

## Fields PopMCP asks for

- Client ID (clientId) [required]: Kajabi → Settings → Public API (app.kajabi.com/admin/settings/public_api) → Create User API Key → copy the Client ID. Do NOT use the API Key under Settings → Account Details (that's the legacy Zapier credential). Only Owners/Subowners can create keys; the Public API needs the Pro plan or $25/mo add-on.
- Client Secret (clientSecret) [required]: From the same Create User API Key screen, copy the Client Secret. Stored encrypted and used server-side only to mint a short-lived access token (the OAuth2 client_credentials grant).

## Verify

PopMCP marks Kajabi as Connected and resolves your site name. The first call it makes is GET https://api.kajabi.com/v1/me with the minted bearer token.

## Troubleshooting

### 400 or 401 from /v1/oauth/token

Cause: The pair is wrong, has been rotated, or you pasted the legacy API Key and API Secret from Settings, Account Details. That older pair is the Zapier credential and does not work against the v1 public API.

Fix: Re-copy both values from Settings, Public API. If the key was rotated, every previously issued access token is dead, so paste the new pair.

### 403 insufficient permission to access the resource

Cause: The User API Key was created without the permission checkbox that endpoint needs.

Fix: Delete the key and create a new one with the missing view: permissions ticked. Permissions on an existing key cannot be edited in place.

### No Public API item under Settings

Cause: The account is not on Pro and has no API add-on, or you are signed in below Subowner level.

Fix: Ask an Owner to create the key, and email support@kajabi.com to add the $25/mo Public API add-on if you are not on Pro.

### Everything breaks right after someone clicks Rotate

Cause: Rotate issues a fresh secret and invalidates every access token minted from the old pair.

Fix: Copy the new Client ID and Client Secret from the key card and re-paste them into PopMCP.

### Calls stop working a few hours after connecting

Cause: The access token from the client_credentials grant is short-lived and expires.

Fix: Nothing to change in PopMCP, which re-mints tokens server-side. If it persists, the key was rotated or deleted in Kajabi.

---

Source: https://www.docs.popmcp.com/docs/integrations/kajabi/