Zum Inhalt springen
LearnSphere

Für Entwickler:innen

LearnSphere API

Drei Zugänge, ein Prinzip: Du bekommst Kursdaten als sauberes JSON über HTTPS. Die öffentliche Katalog-API ist kostenlos, die Creator-API ist Teil des API-Pakets.

Grundlagen

Alle Endpunkte liefern JSON (UTF-8) und sind nur über HTTPS erreichbar. Erfolgreiche Antworten stecken in { "data": … }, Fehler in { "error": "code" } mit passendem HTTP-Status. Preise sind immer Cent-Beträge (priceCents), damit beim Rechnen keine Rundungsfehler entstehen.

Versionierung

Jede API trägt ihre Version im Pfad (/api/public/v1/…, /api/v1/…). Innerhalb einer Version bleiben bestehende Felder und ihr Verhalten stabil – es kommen höchstens neue, optionale Felder hinzu. Inkompatible Änderungen erscheinen ausschließlich unter einer neuen Version (v2), die alte läuft mit Vorlaufankündigung weiter. Baue deine Integration deshalb so, dass unbekannte zusätzliche Felder ignoriert werden.

StatusCodeBedeutung
401unauthorizedAPI-Key fehlt, ist ungültig oder wurde widerrufen.
403api_plan_requiredDer Key gehört zu einem Account ohne aktives API-Paket.
404not_foundKurs existiert nicht oder ist nicht (mehr) öffentlich.
429rate_limitedZu viele Anfragen – kurz warten und erneut versuchen.

1. Öffentliche Katalog-API (kostenlos)

Ohne Anmeldung und ohne Key. Sie liefert ausschließlich Kurse, die auf LearnSphere veröffentlicht und im Shop gelistet sind – also genau das, was auch auf der Kurse-Seite zu sehen ist. Kurse, die ein Creator nur über eigene Kanäle vertreibt, tauchen hier nicht auf.

GET/api/public/v1/courses
ParameterBedeutung
qSuchbegriff, sucht in Titel und Untertitel.
pageSeite, ab 1 (Standard 1).
perTreffer pro Seite, 1–48 (Standard 12).
curl "https://learnsphere.one/api/public/v1/courses?q=react&per=12"
{
  "data": [
    {
      "id": "cm…",
      "slug": "react-fuer-einsteiger",
      "title": "React für Einsteiger",
      "subtitle": "Von null zur ersten App",
      "language": "de",
      "priceCents": 4900,
      "currency": "EUR",
      "creatorName": "Jane Doe",
      "sectionCount": 6,
      "lessonCount": 42,
      "averageRating": 4.8,
      "reviewCount": 31,
      "url": "https://learnsphere.one/de/courses/react-fuer-einsteiger",
      "createdAt": "2026-07-01T09:00:00.000Z"
    }
  ],
  "meta": { "total": 1, "page": 1, "pages": 1, "per": 12 }
}
GET/api/public/v1/courses/{slug}

Kursdetail inklusive Beschreibung und Curriculum-Metadaten (Abschnitte, Lektionstitel, Dauer, Vorschau-Flag). Kursinhalte selbst – Videos, Dateien, Texte – gibt es hier bewusst nicht.

Rate-Limit: 60 Anfragen pro Minute und IP. Antworten dürfen bis zu 60 Sekunden gecacht werden.

2. Affiliate-API

Für Mitglieder des Partnerprogramms: der komplette Shop-Katalog mit deinen persönlichen Provisions-Links. Käufe über diese Links bringen dir 15 % Provision – gültig für jeden Kurskauf innerhalb von 7 Tagen nach dem Klick.

GET/api/v1/affiliate/courses?affiliate=true

Auth: Bearer-API-Key (wie bei der Creator-API; ein API-Paket ist dafür nicht nötig, nur die Programm-Mitgliedschaft). Der Parameter affiliate=true ist Pflicht für die Provision: Nur dann tragen die zurückgegebenen urls deinen Affiliate-Code (?aff=…) – ohne den Parameter sind es neutrale Links ohne Provision. Rate-Limit: 60 Anfragen/Minute je Key.

3. Creator-API (im API-Paket)

Für Creator mit aktivem API-Paket (25 €/Monat, 20 €/Monat bei jährlicher Zahlung). Damit baust du deinen eigenen Shop: Die API liefert alle deine veröffentlichten Kurse – auch die, die nicht im LearnSphere-Shop gelistet sind. Verkäufe über deine API-Links zählen als eigener Kanal: 75 % Anteil statt 50 %.

Authentifizierung

Erstelle einen API-Key im Creator-Studio unter Vertrieb. Der Key (ls_…) wird dir genau einmal angezeigt und bei uns nur als Hash gespeichert. Sende ihn als Bearer-Token:

curl "https://learnsphere.one/api/v1/courses" \
  -H "Authorization: Bearer ls_1234…abcd"

Ohne gültigen Key oder aktives Paket kommt ein Fehler:

{ "error": "api_plan_required" }
GET/api/v1/courses

Alle deine veröffentlichten Kurse mit Preisen, Bewertungen, url (Kauflink mit ?via=api – so wird der Verkauf deinem Kanal zugerechnet) und embedUrl fürs Widget.

GET/api/v1/courses/{slug}

Kursdetail inklusive komplettem Curriculum (Abschnitte und Lektionen mit Dauer und Vorschau-Flag) – nur für deine eigenen Kurse.

In Arbeit: Abruf der Kursinhalte für eingeschriebene Nutzer:innen und ein vollständiger API-Checkout. Bis dahin läuft der Kauf über den mitgelieferten Kauflink – deine Kund:innen landen auf der sicheren LearnSphere-Kaufseite und der Verkauf wird dir mit 75 % gutgeschrieben.

So schützt du deinen Key

  • Rufe die Creator-API nur von deinem Server auf – nie aus dem Browser. Im Frontend-Code wäre dein Key öffentlich.
  • Lege den Key in eine Umgebungsvariable, nicht ins Repository.
  • Widerrufe Keys sofort im Studio, wenn du ein Leck vermutest – der alte Key ist dann augenblicklich ungültig.

Sicherheit

  • Alle Anfragen laufen über HTTPS; Keys nur als Bearer-Header.
  • API-Keys werden ausschließlich gehasht gespeichert und nur einmal im Klartext angezeigt.
  • Jede Anfrage prüft Key und Abo-Status – ein gekündigtes Paket schließt die API automatisch.
  • Öffentliche Endpunkte enthalten keinerlei personenbezogene Daten und sind rate-limitiert.
  • Zahlungen laufen nie über deine Server: Der Kauflink führt auf die LearnSphere-Kaufabwicklung (Stripe) – Kartendaten berühren deine Infrastruktur nicht.

Integration mit KI-Agents

Du baust deine Integration mit Claude Code oder einem anderen Coding-Agent? Wir stellen eine fertige SKILL.mdbereit: Sie beschreibt Endpunkte, Auth, Fehlercodes und die Sicherheitsregeln (z. B. „API-Key nie im Browser“) in einem Format, das dein Agent direkt versteht – so entsteht die Anbindung korrekt statt geraten.

Lege die Datei in deinem Projekt unter .claude/skills/learnsphere-api/SKILL.mdab und sag deinem Agent z. B. „binde meine LearnSphere-Kurse ein“. Für LLM-Crawler gibt es außerdem eine /llms.txt.

⬇ SKILL.md herunterladen