API-Übersicht Ab Team-Plan
Die LIVCK Cloud API gibt dir programmatischen Zugriff auf dein Monitoring -- steuere Services, Incidents und Statuspages per Code aus deinen eigenen Tools und Skripten.
Was du mit der API tun kannst
- Services -- anlegen, bearbeiten, pausieren, fortsetzen oder löschen
- Tags -- Services ordnen, per Name finden und nach Tag filtern
- Service-Metriken -- Uptime, Antwortzeiten und weitere Kennzahlen abrufen
- Incidents -- erstellen, aktualisieren, Verlaufseinträge posten und auflösen
- Wartungen -- Wartungsfenster erstellen, starten, abschließen, verlängern und abbrechen
- Statuspages -- anlegen, gestalten, veröffentlichen, Komponenten und eigene Domains verwalten
- Referenzdaten -- verfügbare Monitoring-Standorte und Check-Typen-Metadaten abrufen (nützlich, um gültige Payloads zu bauen)
Typische Anwendungsfälle
| Anwendungsfall | Beschreibung |
|---|---|
| Automatisierung | Erstelle Services automatisch, wenn du einen neuen Server aufsetzt |
| Eigene Dashboards | Zeige Monitoring-Daten in deinem internen Dashboard an |
| CI/CD-Integration | Pausiere die Überwachung automatisch während eines Deployments |
| Chatbots | Lass deinen Slack-Bot den aktuellen Status abfragen |
| Reporting | Erstelle eigene Berichte aus deinen Monitoring-Daten |
Wie die API funktioniert
Basis-URL
Alle API-Anfragen gehen an:
https://api.livck.cloud/v1
Authentifizierung
Jede Anfrage braucht einen gültigen API-Token im Header. LIVCK-Tokens beginnen immer mit dem Präfix lvk_:
Authorization: Bearer lvk_dein-api-token
API-Tokens sind organisationsweite Dienstkonten -- sie gehören der Organisation, nicht einer einzelnen Person, und können von allen Mitgliedern mit den entsprechenden Rechten genutzt werden. Token erstellen: API-Tokens.
Antwortformat
Die API antwortet im JSON-Format. Listen-Endpunkte sind paginiert und liefern data, links und meta:
{
"data": [
{
"id": "abc123",
"name": "Meine Website",
"status": "up"
}
],
"links": { "first": "...", "last": "...", "prev": null, "next": "..." },
"meta": {
"current_page": 1,
"per_page": 15,
"total": 42
}
}
Fehlerformat
Tritt ein Fehler auf, enthält die Antwort immer ein message-Feld. Bei Validierungsfehlern (422) kommt zusätzlich ein errors-Objekt mit feldbezogenen Details hinzu:
{
"message": "The name field is required.",
"errors": {
"name": ["The name field is required."]
}
}
Fehlermeldungen sind immer englisch, auch wenn du eine andere Sprache anfragst. Übersetzbare Inhalte wie die Titel von Vorfällen liefert die API in der Sprache aus dem Header Accept-Language, sofern deine Organisation diese Sprache nutzt. Sonst kommt die Standardsprache deiner Organisation.
Ratenbegrenzung
Pro Token sind 120 Anfragen pro Minute erlaubt. Jede Antwort liefert die Header X-RateLimit-Limit und X-RateLimit-Remaining mit. Erreichst du das Limit, antwortet die API mit Statuscode 429 -- warte dann kurz und versuche es erneut.
Anfragen sicher wiederholen
Bricht die Verbindung ab, weißt du nicht, ob deine Anfrage angekommen ist. Schickst du ein POST einfach noch einmal, legst du womöglich einen Service doppelt an. Dafür gibt es den Header Idempotency-Key:
curl -X POST https://api.livck.cloud/v1/services \
-H "Authorization: Bearer dein-api-token" \
-H "Idempotency-Key: bestellung-4711-shop" \
-H "Content-Type: application/json" \
-d '{
"name": "Onlineshop",
"check_type": "http",
"target": "https://shop.example.com",
"tags": ["V1StGXR8Z5jdHi6BmyT2a"],
"settings": {
"interval_seconds": 60,
"assigned_probes": ["ffm", "hel"]
}
}'
Die Tag-ID liefert dir POST /v1/tags/ensure, die Standort-Codes liefert GET /v1/probes. Ohne den Block settings würde der Service zwar angelegt, aber nicht überwacht. Mehr dazu unter API-Endpunkte.
Wiederholst du die Anfrage mit demselben Key, führt LIVCK sie kein zweites Mal aus:
| Situation | Antwort |
|---|---|
| Gleicher Key, gleiche Anfrage | Die gespeicherte Antwort der ersten Anfrage, mit dem Header Idempotent-Replayed: true |
| Gleicher Key, andere Anfrage | 422 -- der Key gehört schon zu einer anderen Anfrage |
| Die erste Anfrage läuft noch | 409 mit Retry-After -- kurz warten und erneut senden |
| Die erste Anfrage ist fehlgeschlagen | Nichts gespeichert -- du kannst sie korrigiert mit demselben Key erneut senden |
Nach einem Serverfehler (5xx) prüfe kurz, ob die Aktion trotzdem ausgeführt wurde (etwa per GET /v1/services?tag=…), bevor du erneut sendest. In seltenen Fällen ist sie trotz Fehlermeldung durchgelaufen.
Ein Key gilt 24 Stunden und nur für den Token, mit dem du ihn gesendet hast. Nimm pro Vorgang einen eigenen, eindeutigen Wert, etwa deine Bestellnummer oder eine UUID (bis 255 Zeichen). Der Header ist optional und wirkt nur bei POST -- GET, PUT und DELETE brauchen ihn nicht. Ausgenommen ist das Hochladen von Logo und Favicon: Es ersetzt die Datei ohnehin.
Gut zu wissen
Alle Endpunkte, Fehlercodes und Details zur Paginierung findest du in der Endpunkte-Übersicht.
So startest du
- Token erstellen -- in den Einstellungen einen API-Token anlegen
- Erste Anfrage senden:
curl -H "Authorization: Bearer dein-token" \ https://api.livck.cloud/v1/services - Ergebnis prüfen -- du erhältst eine JSON-Antwort mit deinen Services
Tipp
Starte mit einer einfachen Leseanfrage (z.B. Services auflisten), um zu prüfen, ob dein Token funktioniert.
Offizielle Clients
Für PHP gibt es das PHP-SDK livck/cloud-php. Du arbeitest mit typisierten Objekten statt mit JSON, und der Client übernimmt Wiederholungen, Idempotency-Key und Paginierung.
Für Laravel gibt es zusätzlich das Laravel-Paket livck/cloud-laravel. Es bringt Konfiguration, Facade, mehrere Verbindungen und einen Fake für Tests mit.
Interaktive Referenz
Die vollständige, interaktive API-Referenz mit allen Parametern, Feldbeschreibungen und einer "Try it"-Funktion zum direkten Ausprobieren findest du unter api.livck.cloud. Sie wird automatisch aus der API generiert und ist damit immer aktuell.
Welche Pläne haben API-Zugang?
Ab dem Team-Plan:
| Plan | API-Zugang |
|---|---|
| Free | -- |
| Solo | -- |
| Ab Team-Plan Team | Ja |
| Ab Business-Plan Business | Ja |
Details zu allen Plänen findest du unter Pläne & Preise.
Weiterführende Themen
- API-Tokens -- Tokens erstellen und verwalten
- API-Endpunkte -- Alle verfügbaren Endpunkte im Überblick
- PHP-SDK -- Der offizielle Client für PHP
- Laravel -- Das Paket für Laravel-Anwendungen
- Pläne & Preise -- Welcher Plan bietet was?