Zum Inhalt springen
Castreon
Überwachung & Server

API, Dokumentation und API-Schlüssel

Aktualisiert am 14 Okt 2026

Alles, was das Panel tut, können Sie auch aus Ihrer eigenen Software über die REST-API des Servers erledigen: Kanäle (Start, Stopp, Neustart, Konfiguration), Live-Statistiken, Ereignisse, Zuschauer, Clips, geplante Aufnahmen, Monitorwand, Benutzer. Das Panel selbst nutzt dieselbe API.

Dokumentation und API-Schlüssel gibt es in allen Plänen. Schlüssel nach Bereichen, an IPs gebunden und mit eigenem Limit gehören zur Enterprise-Edition. Verfügbar ab Castreon 1.6.0.

Die Seite API

Verwaltung → API (nur Administratoren) hat zwei Reiter:

  • API-Schlüssel — die Schlüssel für Integrationen (Automatisierung, NOC-Werkzeuge, Skripte);
  • Dokumentation — die vollständige API-Referenz: jede Operation mit Methode, Pfad, Mindestrolle, Bereich, Parametern, Beispiel für Anfrage und Antwort und einem kopierfertigen curl-Befehl.

openapi.json herunterladen liefert das OpenAPI-3.1-Dokument — direkt importierbar in Postman, Insomnia oder Swagger UI sowie in Codegeneratoren (Python, TypeScript, Go, C#). Es wird aus derselben Tabelle erzeugt, mit der der Server jede Anfrage prüft, und passt daher immer zur installierten Version. Adresse: https://server:port/api/v1/openapi.json (mit API-Schlüssel oder Panel-Sitzung).

Authentifizierung

Jede Anfrage sendet den Schlüssel im Header:

curl -H 'Authorization: Bearer cst_…' https://server:33443/api/v1/channels

Beispiel — Neustart eines Kanals (Schlüssel mit Rolle Operator oder Bereich „Kanalsteuerung“):

curl -X POST -H 'Authorization: Bearer cst_…' https://server:33443/api/v1/channels/<id>/restart

Fehler haben immer die Form {"error":{"code":"…","message":"…"}} — code ist stabil (für Programme), message ist für Menschen.

API-Schlüssel

Neuer API-Schlüssel → Name, Zugriff, Ablauf. Der Schlüssel wird nur einmal angezeigt — kopieren Sie ihn dann; der Server speichert nur einen Fingerabdruck.

  • Nach Rolle (alle Pläne): Der Schlüssel hat die Rechte einer ganzen Rolle — Ansicht, Operator oder Administrator.
  • Nach Bereichen (Enterprise): Der Schlüssel darf nur, was die angehakten Bereiche erlauben — Überwachung (Live-Zustand), Konfiguration lesen, Kanalsteuerung (Start, Stopp, Neustart, Playout-Befehle), Konfiguration ändern, Verwaltung. Ein Schlüssel für einen NOC-Bildschirm bekommt nur Überwachung; ein Automatisierungssystem bekommt Kanalsteuerung. Alles außerhalb seiner Bereiche wird mit 403 und dem Code scope abgelehnt, mit dem Namen des fehlenden Bereichs.
  • Erlaubte IPs (Enterprise): Der Schlüssel funktioniert nur von den angegebenen Adressen oder Netzen (z. B. 10.20.0.0/24); von anderswo — 403 key_ip.
  • Anfragelimit: Jeder Schlüssel hat ein Limit (standardmäßig 600 pro Minute; in Enterprise wählen Sie es). Darüber antwortet der Server mit 429 und Retry-After; jede Antwort enthält X-RateLimit-Limit und X-RateLimit-Remaining.

Die Tabelle zeigt für jeden Schlüssel die letzte Verwendung, die IP-Adresse und die Zahl der Anfragen.

Neuer Schlüssel ohne Unterbrechung der Integrationen

Erneuern auf einem bestehenden Schlüssel erzeugt einen neuen mit denselben Rechten. Wählen Sie, wie lange der alte noch funktioniert — 24 Stunden, 7 Tage oder gar nicht —, damit Sie den Schlüssel in Ihren Integrationen ohne Unterbrechung tauschen können. Widerrufen stoppt einen Schlüssel sofort.

Für den Support

Jede Antwort hat den Header X-Request-ID (Sie können auch einen eigenen senden, um Anfragen mit Ihren Protokollen zu verknüpfen). Wenn eine Anfrage fehlschlägt, geben Sie ihn im Ticket an.

Live-Ereignisse und Webhooks

  • GET /api/v1/events ist ein Server-Sent-Events-Strom mit Kanalzustand, Statistiken und Konfigurationsänderungen.
  • Benachrichtigungen (siehe Benachrichtigungen) können Warnungen an einen signierten Webhook senden; sein Format ist im OpenAPI-Dokument beschrieben.

Tipps

  • Ein Schlüssel pro Integration, mit möglichst wenigen Rechten und, wo möglich, an die IP der Integration gebunden.
  • Schlüssel regelmäßig mit Erneuern (mit Überlappung) wechseln und nicht zwischen Systemen wiederverwenden.
  • Ältere Schlüssel aus Benutzer → API-Tokens (frühere Versionen) funktionieren unverändert weiter; verwaltet werden sie jetzt auf der Seite API.

Datenschutz

Cookies & lokaler Speicher

Unbedingt erforderliche Cookies sind immer aktiv. Statistik und Marketing nutzen Dienste von Google und starten nur, wenn Sie zustimmen — bis dahin wird nichts an Google übertragen. Sie können Ihre Einwilligung hier jederzeit widerrufen.

Unbedingt erforderlich

Ohne sie funktionieren Anmeldung, Formulare und die gewählte Sprache nicht. Sie erfordern keine Einwilligung (§ 25 Abs. 2 Nr. 2 TDDDG).

Immer aktiv
Name Zweck Dauer Art
castreon-session Hält Ihre Sitzung: Anmeldung und gewählte Sprache 2 Stunden, bei jedem Aufruf verlängert Cookie
XSRF-TOKEN Schützt Formulare vor gefälschten Anfragen 2 Stunden, bei jedem Aufruf verlängert Cookie
remember_web_… Nur wenn Sie bei der Anmeldung „Angemeldet bleiben“ wählen Bis zur Abmeldung, max. 400 Tage Cookie
__cf_bm Cloudflare: unterscheidet Besucher von Bots, nur wenn der Datenverkehr geprüft wird 30 Minuten Cookie · Cloudflare
castreon:consent Speichert Ihre Cookie-Auswahl 12 Monate Lokaler Speicher
theme Darstellung des Kundenkontos: hell, dunkel oder System Bis Sie sie ändern Lokaler Speicher

Statistik

Google Analytics 4 (Google Ireland Ltd.): welche Seiten besucht werden, woher Besuche kommen und mit welchem Gerätetyp — mit pseudonymen Kennungen, ohne Speicherung der IP-Adresse. Hilft uns, die Website zu verbessern.

Name Zweck Dauer Art
_ga Google Analytics: erkennt den Besucher wieder (pseudonyme Kennung) 13 Monate Cookie · Google Analytics
_ga_VHWQRPHPEF Google Analytics: speichert den Sitzungsstatus 13 Monate Cookie · Google Analytics

Marketing

Google Ads (Google Ireland Ltd.): misst, ob Besuche über Google-Anzeigen zu einem Test oder Tarif führen, und ermöglicht die Anzeige von Castreon-Werbung auf anderen Websites (Remarketing).

Name Zweck Dauer Art
_gcl_au, _gcl_aw Google Ads: verknüpft den Besuch mit dem Anzeigenklick (Conversions) 90 Tage Cookie · Google Ads
IDE, test_cookie Google Ads: Remarketing und Anzeigenmessung, auf Google-Domains (doubleclick.net) Bis zu 13 Monate Cookie · Google (Drittanbieter)