API-Referenz
Base URL : https://cronbeacon.com/api/v1
Authentifizierung : Authorization: Bearer cb_your_token
Endpoints
POST /api/v1/ingest/events
Ein Monitoring-Event senden (Start, Erfolg, Fehler).
Anfragekörper
| Feld | Typ | Pflichtfeld | Beschreibung |
|---|---|---|---|
job_key | string | ✅ | Eindeutiger Job-Bezeichner (Slug). Wird automatisch erstellt, falls nicht vorhanden. |
event | string | ✅ | Event-Typ: started, succeeded, failed, completed |
environment | string | Umgebung (prod, staging, dev). Standard: prod | |
duration_ms | integer | Ausführungsdauer in Millisekunden | |
processed_count | integer | Anzahl der verarbeiteten Elemente | |
error_count | integer | Anzahl der aufgetretenen Fehler | |
message | string | Freier Text (Fehlerdetail, Zusammenfassung...) | |
event_id | string | Eindeutige ID zur Deduplizierung von Events (Idempotenz) |
Event-Typen
started— Der Job hat gestartetsucceeded— Der Job war erfolgreichfailed— Der Job ist fehlgeschlagencompleted— Der Job ist abgeschlossen (ohne Erfolgs-/Fehlerangabe)
Antwort
{
"status": "ok",
"run_id": "01924f8a-...",
"job_id": "01924f8a-...",
"event": "succeeded",
"created": true
}
GET /api/v1/jobs
Alle Jobs im Tenant auflisten.
POST /api/v1/jobs
Einen neuen Job erstellen.
Anfragekörper
| Feld | Typ | Beschreibung |
|---|---|---|
name | string | Job-Name (Slug wird automatisch generiert) |
type | string | cron, batch, worker |
environment | string | prod, staging, dev |
cron_expression | string | Standard cron-Ausdruck (5 Felder) |
expected_cadence_minutes | integer | Alternative zu cron: Intervall in Minuten |
grace_period_seconds | integer | Karenzzeit in Sekunden, bevor der Job als verpasst gilt (Standard: 300) |
severity | string | low, medium, high, critical |
GET /api/health
Überprüfen, ob der Dienst betriebsbereit ist. Keine Authentifizierung erforderlich.
POST /api/v1/alerts/{id}/ack
Eine Warnung bestätigen (setzt den Status auf 'bestätigt').
POST /api/v1/alerts/{id}/mute
Eine Warnung stummschalten. Parameter: Minuten (Dauer der Stummschaltung).
Rate Limiting
Anfragen sind je nach Plan begrenzt: Free 30/Min, Pro 120/Min, Business 300/Min. Bei Überschreitung gibt die API einen 429-Statuscode zurück.