Kajabi hat eine öffentliche API (Public API), mit der du Kajabi mit anderen Systemen verbinden kannst. Du kannst Kontakte aus dem Formular auf deiner eigenen Website anlegen. Du kannst Personen Zugang zu einem Kurs geben, die woanders bezahlt haben. Du kannst Kaufdaten in deinem eigenen Dashboard sammeln. Wenn Tools wie Zapier oder Make nicht ausreichen, bietet dir die API mehr Kontrolle.

Dieser Artikel erklärt, was die Kajabi-API kann und was nicht. Er basiert auf der offiziellen API-Referenz (Version 1.1.0, Stand November 2026).

Kurzfassung: Das kann die Kajabi-API

Die öffentliche Kajabi-API ist in vier Bereichen stark: Kundendaten, Zugriffsrechte (Angebote), Verkaufsdaten und Benachrichtigungen über Ereignisse (Webhooks).

KategorieDas kannst du tunWichtige Endpunkte
KontakteKontakte auflisten, suchen, erstellen, aktualisieren und löschen. Tags hinzufügen. Angebote gewähren./v1/contacts
TagsListe und Details von Tags abrufen. Tags bei einem Kontakt hinzufügen oder entfernen./v1/contact_tags
Benutzerdefinierte FelderListe und Details der benutzerdefinierten Felder abrufen./v1/custom_fields
KontaktnotizenNotizen auflisten, erstellen, aktualisieren und löschen./v1/contact_notes
KundenKunden auflisten, Details abrufen, Angebote gewähren und entziehen./v1/customers
FormulareFormulare und Einsendungen abrufen. Ein Formular absenden./v1/forms
Produkte, Kurse, AngeboteListen und Details abrufen (nur Lesezugriff)./v1/products /v1/courses /v1/offers
KäufeAuflisten und Details abrufen. Käufe aktivieren und deaktivieren. Ein Abonnement kündigen./v1/purchases
Bestellungen und TransaktionenBestellungen, Bestellpositionen und Transaktionen (Zahlungen, Rückerstattungen und Streitfälle) abrufen./v1/orders /v1/transactions
Auszahlungen (Payouts)Den Auszahlungsverlauf von Kajabi Payments abrufen.Payouts-Endpunkte (für Nutzer von Kajabi Payments)
Sites und SeitenSites, Website-Seiten, Landingpages, Blogbeiträge und Podcasts abrufen./v1/sites und weitere
WebhooksBenachrichtigungen für Käufe, Formulareinsendungen, Tag-Änderungen und mehr registrieren./v1/hooks

Die meisten Schreibzugriffe betreffen Kontakte. Dazu gehören Kontakte, Tags, Notizen, das Gewähren von Angeboten und der Status von Käufen. Auch Webhooks verwaltest du über die API. Inhalte wie Kurse und Blogbeiträge sind überwiegend nur lesbar. Dieser Unterschied ist wichtig, wenn du einen Anwendungsfall planst. Er wird weiter unten im Artikel genau erklärt.

Voraussetzung: der Pro-Tarif oder höher

Für die öffentliche API brauchst du den Pro-Tarif oder höher.

Laut dem offiziellen Hilfeartikel ist die API im aktuellen Pro-Tarif enthalten. Wenn du einen älteren Pro-Tarif (Legacy Pro) hast, ist die API standardmäßig nicht enthalten. Du kannst entweder auf den aktuellen Pro-Tarif wechseln oder das Public-API-Add-on für 25 US-Dollar pro Monat buchen.

Zu Webhooks steht im Hilfeartikel, dass sie in den Tarifen Growth und Pro verfügbar sind. Um Webhooks über die API (/v1/hooks) anzulegen, brauchst du aber die öffentliche API selbst. Deshalb geht dieser Artikel für alle API-basierten Integrationen vom Pro-Tarif aus.

Grundlegende Spezifikationen

Das sind die wichtigsten Basisinformationen.

PunktDetails
Server-URLhttps://api.kajabi.com
PfadAlle Pfade beginnen mit /v1
VersionsabfrageGET https://api.kajabi.com/v1/version
SpezifikationOpenAPI 3.1.1 (die Datei openapi.yaml kann heruntergeladen werden)
DatenformatJSON:API (application/vnd.api+json)
AuthentifizierungOAuth 2.0 mit Client Credentials (Bearer-Token)
TestenEs gibt eine offizielle Postman-Collection

Das Datenformat ist JSON:API. Anfragen und Antworten haben dieselbe Struktur: data und darin type, attributes und relationships. Am Anfang wirkt das vielleicht ungewohnt. Alle Endpunkte nutzen aber dieselbe Struktur, sodass du dich schnell daran gewöhnst.

Listen-Endpunkte haben diese Abfrageparameter gemeinsam:

  • Seitenumbruch (Pagination): page[number] und page[size]
  • Sortierung: sort=name (für absteigende Reihenfolge sort=-name)
  • Auswahl von Feldern (Sparse Fields): fields[contacts]=name,email
  • Filter: zum Beispiel filter[site_id]=123
  • Verknüpfte Daten einbeziehen: include=offers,tags,customer

Authentifizierung: API-Schlüssel erstellen und Token abrufen

API-Schlüssel erstellen (Client-ID und Client-Secret)

  1. Einstellungen im Kajabi-Dashboard öffnen

Gehe im Dashboard zu „Settings“ (Einstellungen). Öffne in den Kontoeinstellungen den Bereich „Public API“.

  1. Auf „Create User API Key“ klicken

Der Bildschirm zum Erstellen eines neuen API-Schlüssels öffnet sich.

  1. Name, Benutzer und Berechtigungen wählen

Gib dem Schlüssel einen Namen. Wähle einen Namen, der den Zweck zeigt, zum Beispiel „Bestandsabgleich“. Wähle dann den Kontobenutzer und die Berechtigungen (Scopes).

  1. Auf „Create“ klicken und Client-ID und Secret speichern

Nach dem Erstellen werden client_id und client_secret angezeigt. Bewahre sie an einem sicheren Ort auf.

Beachte diese drei Punkte:

  • Nur Owner und Subowner können API-Schlüssel erstellen.
  • Du musst beim Erstellen die benötigten Berechtigungen auswählen. Ein Token von einem Schlüssel mit zu wenigen Berechtigungen wird an geschützten Endpunkten abgelehnt, auch wenn das Token gültig ist.
  • Aus Sicherheitsgründen kannst du einen Schlüssel jederzeit löschen oder rotieren. Dabei werden alle mit diesem Schlüssel ausgestellten Zugriffstoken ungültig.

Zugriffstoken abrufen

Ein Token erhältst du mit POST /v1/oauth/token. Die empfohlene Methode ist client_credentials.

bash
curl -X POST https://api.kajabi.com/v1/oauth/token \
  -d "grant_type=client_credentials" \
  -d "client_id=YOUR_CLIENT_ID" \
  -d "client_secret=YOUR_CLIENT_SECRET"

Eine erfolgreiche Antwort enthält diese Werte:

  • access_token: das Token, das du beim Aufruf der API verwendest
  • refresh_token: ein Token, das du gegen ein neues Zugriffstoken tauschst, wenn das alte abläuft
  • token_type: immer Bearer
  • expires_in: die Anzahl der Sekunden, die das Zugriffstoken gültig ist

Danach fügst du das Bearer-Token in den Authorization-Header jeder Anfrage ein.

bash
curl https://api.kajabi.com/v1/me \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Es gibt drei Möglichkeiten, Zugangsdaten gegen Token zu tauschen.

MethodeParameterHinweis
Client Credentialsclient_id, client_secret, grant_type=client_credentialsEmpfohlen
Refresh-Tokenrefresh_token, grant_type=refresh_tokenBenötigt ein nicht abgelaufenes Token aus einem früheren Client-Credentials-Abruf
Benutzername und Passwortusername, passwordNicht empfohlen (Client Credentials werden bevorzugt)

Zum Abmelden verwendest du POST /v1/oauth/revoke. Sende entweder das Zugriffstoken oder das Refresh-Token. Beide Token werden ungültig.

Wenn du einen 401- oder 403-Fehler erhältst

Wenn du nach dem Abruf eines Tokens 401 Unauthorized oder 403 Forbidden erhältst, prüfe diese drei Punkte.

Was du prüfen solltestDetails
Berechtigungen des SchlüsselsHast du beim Erstellen des Schlüssels die nötigen Scopes gewählt? Wenn nicht, lösche den Schlüssel und erstelle ihn neu.
Zeit bis zur AktivierungNach dem Aktivieren des API-Zugriffs kann es bis zu 10 Minuten dauern, bis er aktiv ist.
Anfrage-HeaderSende das Token im Authorization-Header als Bearer-Token. Sende es nicht als Abfrageparameter.

Das kannst du tun, nach Ressource

Dieser Abschnitt erklärt jede Ressource und die Vorgänge, die sie unterstützt.

Kontakte (Contacts)

Kontakte sind das Zentrum der Kundenverwaltung in Kajabi.

Das kannst du tun

  • Auflisten und suchen (GET /v1/contacts)
  • Details abrufen (GET /v1/contacts/{id})
  • Erstellen (POST /v1/contacts)
  • Aktualisieren (PATCH /v1/contacts/{id})
  • Löschen (DELETE /v1/contacts/{id})

Die wichtigsten Felder sind Name, E-Mail-Adresse, Adresse (Zeile 1 und 2, Stadt, Bundesland bzw. Region, Land und Postleitzahl), Telefonnummer, Geschäftsnummer, Status des E-Mail-Abos (subscribed), external_user_id sowie Erstellungs- und Änderungszeit.

Beim Erstellen eines Kontakts musst du die Beziehung site angeben, um zu zeigen, zu welcher Site der Kontakt gehört. Wenn dein Konto mehrere Sites hat, ist auch beim Auflisten von Kontakten filter[site_id] erforderlich.

json
{
  "data": {
    "type": "contacts",
    "attributes": {
      "name": "John Doe",
      "email": "john.doe@example.com"
    },
    "relationships": {
      "site": {
        "data": { "type": "sites", "id": "123" }
      }
    }
  }
}

Die Filter sind sehr umfangreich. Das ist eine Stärke dieser API. Du kannst Kontakte zum Beispiel mit diesen Bedingungen finden:

  • Text im Namen, in der E-Mail-Adresse, in der Telefonnummer oder in der Adresse
  • Hat oder hat nicht einen bestimmten Tag (has_tag_id, has_no_tag_id, has_all_tag_id)
  • Hat oder hat nicht ein bestimmtes Angebot (has_offer_id, has_no_offer_id)
  • Besitzt, besitzt nicht oder besaß früher ein bestimmtes Produkt (has_product_id und weitere)
  • Hat ein bestimmtes Formular abgesendet oder nicht abgesendet
  • Hat sich für ein Event angemeldet oder eine Bewertung (Assessment) abgeschlossen, bestanden oder nicht bestanden
  • Der gesamte Nettoumsatz ist gleich, größer oder kleiner als ein Wert
  • In den letzten N Tagen erstellt, aktiv oder inaktiv
  • Hat einen bestimmten E-Mail-Versand geöffnet, angeklickt oder ist zurückgewiesen worden (Bounce)
  • Dauerhafter Bounce (Hard Bounce) oder kürzlich abgemeldet

Mit diesen Filtern findet ein einziger API-Aufruf zum Beispiel „Kunden, die gekauft haben, aber seit 60 Tagen nicht aktiv waren“. Er findet auch „Personen, die einen Kurs gekauft haben, aber den Tag nicht besitzen“.

Verhalten, das du kennen solltest

  • external_user_id (die Benutzer-ID in einem externen System) kann nur bei Kontakten aktualisiert werden, die bereits ein Angebot oder einen Kauf haben (also bei Kunden).
  • Wenn ein Kontakt ein aktives Abonnement oder einen aktiven Zahlungsplan über Kajabi Payments hat, gibt das Löschen dieses Kontakts einen 422-Fehler zurück. Das wurde im Update vom Juni 2026 hinzugefügt.
  • Benutzerdefinierte Felder verwenden Kennungen wie custom_1 und custom_2. Mit /v1/custom_fields siehst du, welche Felder verfügbar sind.

Tags (Contact Tags)

  • Liste und Details von Tags abrufen (archivierte Tags sind nicht enthalten)
  • Tags bei einem Kontakt hinzufügen, entfernen oder ersetzen (POST, DELETE und PATCH)

Unter den Endpunkten, die ich geprüft habe, habe ich keinen zum Erstellen von Tags gefunden. Du erstellst Tags im Dashboard und nutzt die API, um sie hinzuzufügen oder zu entfernen.

Angebote gewähren und entziehen (Kontakte und Kunden)

Das ist wahrscheinlich die praktischste Funktion der Kajabi-API. Du kannst einem Kontakt oder einem Kunden Angebote gewähren oder entziehen.

VorgangMethodeBeschreibung
GewährenPOSTEin Angebot geben
EntziehenDELETEEin Angebot aufheben
ErsetzenPATCHDie aktuellen Angebote durch die angegebenen Angebote ersetzen
AuflistenGETDie bereits gewährten Angebote ansehen

Wenn du ein Angebot gewährst, laufen diese Schritte automatisch ab:

  • Die API prüft, ob das Angebot bereits gewährt wurde.
  • Die API sucht nach einem bestehenden Kunden mit derselben E-Mail-Adresse. Gibt es keinen, legt sie einen neuen Kunden an.
  • Eine Willkommens-E-Mail wird gesendet. Um das zu verhindern, setze send_customer_welcome_email: false in meta der Anfrage.
  • Ist das Angebot ein Geschenk, wird eine Geschenk-E-Mail gesendet.
  • Konfigurierte Automatisierungen werden ausgelöst.

Wenn du ein Angebot entziehst, sind nur aktive Angebote betroffen. Alle zugehörigen Produkt-Mitgliedschaften werden deaktiviert.

json
{
  "data": [{ "type": "offers", "id": "123" }],
  "meta": { "send_customer_welcome_email": false }
}

Mit dieser Funktion kannst du ein System bauen, das nach einer Anmeldung oder Zahlung in einem externen System automatisch Zugang zu Kajabi-Kursen und -Communities gibt.

Kunden (Customers)

  • Liste und Details abrufen
  • Angebote gewähren, entziehen und ersetzen (wie bei Kontakten)

Name und E-Mail-Adresse eines Kunden bleiben mit dem verknüpften Kontakt synchron.

Kontaktnotizen (Contact Notes)

Du kannst Notizen, die mit einem Kontakt verknüpft sind, auflisten, erstellen, aktualisieren und löschen. Nur der Text der Notiz (body) kann aktualisiert werden. Der verknüpfte Kontakt kann nach dem Erstellen der Notiz nicht mehr geändert werden. Eine Liste gibt standardmäßig 20 und höchstens 100 Einträge zurück.

So kannst du zum Beispiel Vertriebs- oder Support-Einträge aus einem externen CRM in Kajabi schreiben.

Formulare (Forms)

  • Liste und Details von Formularen abrufen
  • Liste und Details von Formulareinsendungen abrufen
  • Ein Formular absenden (POST /v1/forms/{id}/submit)

Zum Absenden eines Formulars sind nur name und email erforderlich. Die E-Mail-Adresse muss gültig und zustellbar sein. Sonst gibt die Anfrage einen Fehler zurück.

json
{
  "data": {
    "type": "form_submissions",
    "attributes": {
      "name": "John Doe",
      "email": "john.doe@example.com"
    }
  }
}

Wichtig ist: Eine Einsendung über die API löst dieselbe Verarbeitung aus wie eine Einsendung aus dem Dashboard. Die offizielle Dokumentation nennt diese Nebeneffekte:

  • Prüfen auf Wegwerf-E-Mail-Adressen und Überprüfen, ob die E-Mail zustellbar ist
  • Senden einer Double-Opt-in-E-Mail, wenn nötig
  • Den Kontakt abonnieren
  • Die am Formular eingestellten Tags hinzufügen und Angebote gewähren
  • Den Kontakt in E-Mail-Sequenzen eintragen
  • Webhooks zustellen und Automatisierungen auslösen

Das ist nützlich, wenn du ein eigenes Anmeldeformular auf deiner Website einsetzt und die Daten im Hintergrund an ein Kajabi-Formular sendest.

Produkte, Kurse und Angebote (nur Lesezugriff)

  • Produkte: Liste und Details (archivierte Produkte sind nicht enthalten)
  • Kurse: Liste und Details. Mit include=modules,lessons,lessons.media,offers erhältst du Module, Lektionen, Medien und Angebote in einer einzigen Anfrage.
  • Angebote: Liste und Details. Du kannst Preis, Zahlungsart, Checkout-URL, die Angabe, ob es ein Abonnement ist, die Angabe, ob es kostenlos ist, und mehr abrufen.

Unter den Endpunkten, die ich geprüft habe, gibt es keinen Endpunkt zum Erstellen oder Aktualisieren von Kursen, Produkten oder Angeboten. Du kannst mit der API keine Kursinhalte aus einem externen System erzeugen.

Käufe (Purchases)

Käufe sind die Datensätze zu gekauften Angeboten.

  • Liste und Details abrufen
  • Einen Kauf aktivieren (reactivate) und deaktivieren (deactivate)
  • Ein Abonnement kündigen

Beim Verhalten gibt es Stolperfallen:

  • Das Deaktivieren eines Kaufs kündigt das Abonnement nicht.
  • Das Reaktivieren eines Kaufs setzt das Abonnement nicht fort.
  • Um die Abrechnung zu stoppen, nutze den separaten Endpunkt zum Kündigen des Abonnements.

„Zugang stoppen“ und „Abrechnung stoppen“ sind verschiedene Vorgänge. Wenn du Kündigungen automatisierst, musst du möglicherweise beide aufrufen.

Bestellungen, Bestellpositionen und Transaktionen (Orders, Order Items, Transactions)

  • Bestellungen: Liste und Details
  • Bestellpositionen: die Liste und die Details jedes Produkts oder Angebots in einer Bestellung
  • Transaktionen: Zahlungsdatensätze, die mit echten Käufen verknüpft sind, etwa erfolgreiche Abbuchungen, Rückerstattungen und Streitfälle

Die Transaktionsliste enthält keine Testtransaktionen, kostenlosen Käufe, fehlgeschlagenen Versuche und ausstehenden Transaktionen. Dadurch lassen sich die Daten gut für Buchhaltung und Verkaufsanalyse nutzen. Bei Käufen, Bestellungen und Transaktionen kannst du mit filter[customer_id] nach Kunde filtern.

Eine Transaktion kann mehrere Angebote in einer Abbuchung abdecken. Das passiert zum Beispiel, wenn ein Checkout mehrere Order Bumps enthält. Dafür haben Transaktionen eine Beziehung purchases (hinzugefügt im Juni 2026). Die ältere Beziehung offer im Singular ist veraltet (deprecated). Bei einer kombinierten Transaktion gibt sie null zurück. Verwende für neue Arbeiten purchases.

Auszahlungen (Kajabi Payments Payouts)

Du kannst die Liste und die Details der Auszahlungen (Payouts) von Kajabi Payments abrufen. Das sind Überweisungen von Kajabi auf dein Bankkonto. Die Details enthalten die zugehörigen Transaktionen.

Wie der Name zeigt, sind diese Endpunkte für Konten, die Kajabi Payments nutzen. Kajabi Payments ist nicht in jedem Land verfügbar. Prüfe die Verfügbarkeit in der offiziellen Dokumentation.

Sites, Seiten, Blogbeiträge und Podcasts (nur Lesezugriff)

  • Sites: die Liste und die Details der Sites, auf die du Zugriff hast
  • Website-Seiten: Liste und Details
  • Landingpages: Liste und Details
  • Blogbeiträge: Liste und Details (Titel, Inhalt, Slug, Veröffentlichungsdatum, Bild, Tags und mehr)
  • Podcasts: Liste und Details

Auch diese Ressourcen sind nur lesbar. Du kannst Seiten oder Blogbeiträge nicht über die API erstellen oder bearbeiten. Du kannst Blogbeiträge aber abrufen, sodass du einen Kajabi-Blog auf einer externen Website anzeigen kannst.

Sonstiges: dein eigenes Profil und die Version

  • GET /v1/me: das Profil des Benutzers, der mit dem API-Schlüssel verknüpft ist
  • GET /v1/version: die API-Version

Du kannst sie für eine Verbindungsprüfung verwenden.

Webhooks: Ereignisse in Echtzeit empfangen

Die API ist eine Möglichkeit, Daten bei Kajabi abzufragen. Webhooks sind eine Möglichkeit, dass Kajabi dir eine Benachrichtigung sendet.

Öffentliche APIWebhooks
AufgabeDaten aus deinem Programm abrufen oder sendenDich sofort benachrichtigen, wenn in Kajabi ein Ereignis eintritt
RichtungIn beide Richtungen (Lesen und Schreiben)Hauptsächlich von Kajabi zu einem externen System
Gut geeignet fürMassenzugriff auf Daten, eigene Apps, Abgleich mit anderen SystemenAutomatisierungen, die mit einem Ereignis beginnen, etwa einem Kauf

Ereignisse, die du registrieren kannst

EreignisWann es gesendet wirdBenötigte Scopes
purchaseEin Kunde kauft etwasview:purchases
payment_succeededEine Zahlung wird abgeschlossenview:transactions
order_createdEine neue Bestellung wird erstelltview:transactions und view:orders
form_submissionEin Formular wird abgesendetview:form_submissions
tag_addedEin Tag wird bei einem Kontakt hinzugefügtview:contacts
tag_removedEin Tag wird bei einem Kontakt entferntview:contacts

Du kannst nur die Ereignisse registrieren, die durch die Scopes deines API-Schlüssels erlaubt sind.

So registrierst du einen Webhook

Sende POST /v1/hooks mit der Ziel-URL (target_url) und dem Namen des Ereignisses. Wenn du resource_id angibst, erhältst du nur die Ereignisse für diese Ressource, zum Beispiel einen bestimmten Tag. Wenn du es weglässt, erhältst du alle Ereignisse dieses Typs (ein Wildcard-Webhook).

json
{
  "data": {
    "type": "hooks",
    "attributes": {
      "target_url": "https://example.com/webhook",
      "event": "tag_added",
      "resource_id": "123"
    },
    "relationships": {
      "site": {
        "data": { "id": "456", "type": "sites" }
      }
    }
  }
}

Die Benachrichtigung, die bei deiner URL ankommt, ist eine POST-Anfrage in diesem Format:

json
{
  "id": "hash_id",
  "event": "tag_added",
  "payload": []
}

id ist die ID der Ressource, die das Ereignis ausgelöst hat. event ist der Name des Ereignisses. payload ist der Inhalt. Um die Form des Inhalts vorab zu sehen, nutze die Beispiel-Endpunkte. Es gibt einen für jedes Ereignis, etwa GET /v1/hooks/purchase_sample.

Zur Verwaltung von Webhooks gibt es Endpunkte zum Auflisten, Erstellen, Abrufen von Details und Löschen. Einen Endpunkt zum Aktualisieren habe ich nicht gefunden. Um einen Webhook zu ändern, lösche ihn und erstelle ihn neu.

Grenzen und Hinweise

Dieser Abschnitt fasst die obigen Punkte und die Hinweise im offiziellen Hilfeartikel zusammen.

  • Nicht alle Daten sind über die API verfügbar. Manche Daten, die du im Dashboard siehst, stehen nicht in der API-Referenz. Wenn dir ein Feld fehlt, sende eine Funktionsanfrage über das Feedback-Portal von Kajabi.
  • Inhalte erstellen und bearbeiten ist größtenteils nicht möglich. Kurse, Produkte, Angebote, Blogbeiträge und Landingpages sind nur lesbar (in den Endpunkten, die ich geprüft habe).
  • Funktionen, die nicht in der Liste stehen. In der veröffentlichten Endpunktliste habe ich keine Endpunkte zum Steuern von E-Mail-Versänden (Broadcasts) oder Communities gefunden.
  • Es gelten Ratenbegrenzungen (Rate Limits). Kajabi setzt sie, um die Stabilität der Plattform zu schützen. Die aktuellen Werte findest du in der offiziellen Dokumentation oder beim Kajabi-Support.
  • Keine veröffentlichte Liste erlaubter IP-Adressen. Wenn deine Umgebung bestimmte IP-Adressen freigeben muss, frage den Support nach aktuellen Hinweisen.
  • Kein Support für eigenen Code. Der Support hilft bei möglichen Fehlern und bei Fragen zu den API-Funktionen. Er hilft nicht beim Schreiben oder Debuggen deines eigenen Codes.
Vorteile 5
  • Du kannst von außerhalb von Kajabi mit zentralen Daten arbeiten: Kunden, Käufe, Formulareinsendungen und Tags

  • Durch das Gewähren und Entziehen von Angeboten verbindest du externe Zahlungen und Anmeldungen mit Zugriffsrechten

  • Viele Filter ermöglichen detaillierte Segmentsuchen

  • Webhooks senden Ereignisse in Echtzeit

  • Eine OpenAPI-Spezifikation und eine Postman-Collection sind veröffentlicht

Nachteile 4
  • Der Pro-Tarif oder höher ist erforderlich (ein Legacy-Pro-Tarif braucht zusätzlich 25 US-Dollar pro Monat)

  • Inhalte wie Kurse und Blogbeiträge sind größtenteils nur lesbar, die API eignet sich also nicht zum Erstellen oder Bearbeiten

  • Es wird keine Liste erlaubter IP-Adressen veröffentlicht, daher müssen strenge Netzwerkumgebungen den Support kontaktieren

  • Der Support deckt deinen eigenen Code nicht ab

Beispiele für Anwendungsfälle

1. Zugang für Personen, die in einem externen System bezahlt haben Wenn eine Zahlung in einem externen Dienst abgeschlossen ist, erstelle mit der API einen Kontakt und gewähre ein Angebot. Kajabi legt den Kunden automatisch an. Die Willkommens-E-Mail und die Automatisierungen laufen ebenfalls.

2. Dein eigenes Anmeldeformular mit Kajabi verbinden Behalte das Design deiner Website und sende die Daten im Hintergrund an den Endpunkt zum Absenden von Kajabi-Formularen. Tags, E-Mail-Sequenzen und Angebote werden in einem Schritt verarbeitet.

3. Kaufbenachrichtigungen an Slack oder ein internes Tool senden Registriere einen Webhook für purchase oder payment_succeeded. Leite die empfangenen Daten an ein Chat-Tool oder ein internes System weiter.

4. Verkaufsdaten in einer Tabelle oder einem BI-Tool sammeln Rufe Daten aus den Endpunkten für Bestellungen und Transaktionen nach Zeitplan ab und füge sie deinen eigenen Berichten hinzu. Die Transaktionsdaten enthalten keine Test- oder fehlgeschlagenen Transaktionen, sodass sie sich leicht summieren lassen.

5. Zugang bei Kündigungen und Rückerstattungen automatisch beenden Deaktiviere den Kauf oder entziehe das Angebot, um den Zugang zu beenden. Rufe bei Bedarf zusätzlich den Endpunkt zum Kündigen des Abonnements auf.

So startest du

:::steps

  1. Tarif prüfen

Stelle sicher, dass du den Pro-Tarif oder höher hast (oder einen Legacy-Pro-Tarif mit dem Add-on) und dass die öffentliche API aktiv ist.

  1. API-Schlüssel erstellen

Öffne in „Settings“ den Bereich „Public API“. Wähle nur die Berechtigungen, die du brauchst, und erstelle den Schlüssel. Nur Owner und Subowner können Schlüssel erstellen.

  1. Token abrufen

Rufe /v1/oauth/token mit deiner client_id und deinem client_secret auf, um ein Zugriffstoken zu erhalten.

  1. Verbindung prüfen

Rufe GET /v1/version oder GET /v1/me mit dem Bearer-Token auf. Du kannst ein Tool wie Postman verwenden.

  1. Site-ID ermitteln

Rufe GET /v1/sites auf, um die ID deiner Site zu finden. Du brauchst sie, wenn du Kontakte auflistest oder erstellst.

  1. Mit einem kleinen Vorgang beginnen

Beginne mit einer Kontaktsuche oder lege einen Kontakt mit einer Test-E-Mail-Adresse an.

Verwendete offizielle Dokumentation