Ereignisse an einen Webhook-Endpunkt erneut senden

POST /v1/webhook-endpoints/{endpoint_id}:replay · Berechtigung webhook-endpoints:write · alle Tarife

Stellt die Ereignisse aus [from, to) der letzten 30 Tage erneut in die Warteschlange, zum Beispiel die Ereignisse eines Zeitraums, in dem der Endpunkt deaktiviert war. Es werden nur die Ereignistypen des Endpunkts gesendet, sofern types sie nicht einschränkt. Jede erneut gesendete Zustellung behält die webhook-id des Ereignisses, sodass ein Empfänger, der Duplikate anhand der webhook-id entfernt, jedes Ereignis genau einmal verarbeitet; replay_no der Zustellung wird um eins erhöht.

Anfrage

Feld Typ Pflichtangabe Beschreibung
endpoint_id path ja Webhook-Endpunkt-ID (whe_…).
from date-time ja Beginn des Zeitraums (einschließlich), innerhalb der letzten 30 Tage.
to date-time ja Ende des Zeitraums (ausschließlich), nach from.
types string[] nein Erneut zu sendende Ereignistypen; leer oder fehlend bedeutet die Typen des Endpunkts.
Idempotency-Key header nein Gibt die Antwort für eine wiederholte Anfrage mit demselben Schlüssel zurück, ohne erneut in die Warteschlange zu stellen.
{
  "from": "2026-10-20T00:00:00Z",
  "to": "2026-10-21T00:00:00Z",
  "types": ["user.created"]
}

Antwort

200 OK mit der Anzahl der in die Warteschlange gestellten Zustellungen.

{
  "enqueued": 42
}

Fehler

HTTP code Wann
400 unknown_field Der Anfragetext enthält ein Feld, das oben nicht aufgeführt ist.
404 not_found Dieser Endpunkt existiert in dieser Umgebung nicht.
415 unsupported_media_type Der Anfragetext fehlt oder ist nicht application/json.
422 validation_failed /from required, /to required oder eine Bereichsregel: to liegt nicht nach from, oder der Zeitraum liegt mehr als 30 Tage zurück.
401 unauthenticated Die Anmeldedaten fehlen, sind ungültig oder wurden widerrufen.
403 insufficient_permissions Die Anmeldedaten haben nicht die Berechtigung webhook-endpoints:write.
503 service_unavailable Erneutes Senden ist in dieser Region noch nicht verfügbar oder die Webhook-Verwaltung ist vorübergehend nicht verfügbar; wiederholen Sie die Anfrage nach Retry-After.

Beispiel

curl -X POST https://api.eu.keenauth.com/v1/webhook-endpoints/whe_01k8a3m5q7t9v1w3x5y7z9b2c4:replay \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 7a1c3e5f-9b2d-4f6a-8c0e-2b4d6f8a0c2e" \
  -d '{"from":"2026-10-20T00:00:00Z","to":"2026-10-21T00:00:00Z"}'

CLI (der Anfragetext wird von der Standardeingabe oder aus einer Datei gelesen (--data @replay.json)):

echo '{"from":"2026-10-20T00:00:00Z","to":"2026-10-21T00:00:00Z"}' | keenauth webhook-endpoints replay whe_01k8a3m5q7t9v1w3x5y7z9b2c4 --data -