Naslag
Run hooks API
Zoek de twee HTTP-endpoints op waarmee je een event-trigger afvuurt en het resultaat van een generic run leest, met authenticatie, bodies en statuscodes.
Bij event-triggers horen twee publieke endpoints. Beide authenticeren met het secret van de trigger, niet met een sessie.
Authenticatie
Stuur het secret als Authorization: Bearer <secret>. Een queryparameter ?token=<secret> wordt ook geaccepteerd voor afzenders die alleen een kale URL kunnen instellen. Een header heeft de voorkeur, want querystrings komen in logs en proxies terecht.
Een trigger afvuren
POST /api/hooks/events/:uuid
De :uuid is de identifier in de trigger-URL. De body is willekeurige JSON. Optioneel: een X-DXV-Event-Key-header (of ?key=) die de controle op lopende runs en de afkoelperiode per sleutel afbakent. Een sleutel moet voldoen aan ^[A-Za-z0-9._:-]{1,100}$.
| Status | Body | Betekenis |
|---|---|---|
| 202 | { "featureRequestId": 123, "dispatched": true } | Er is een run aangemaakt. Komt terug voordat de agent heeft gedraaid. |
| 200 | { "skipped": "inactive" } | De trigger is gepauzeerd. |
| 200 | { "skipped": "in_flight" } | Er is nog een run actief voor deze trigger (of sleutel). |
| 200 | { "skipped": "cooldown" } | De afkoelperiode is nog niet voorbij. |
| 400 | { "message": "..." } | De event-sleutel is niet geldig. |
| 401 | { "message": "Invalid token" } | Het secret ontbreekt of klopt niet. |
| 404 | { "message": "Unknown event trigger" } | De UUID is geen bekende trigger. |
Een overgeslagen antwoord bij een aflevering met sleutel geeft ook key terug.
Over featureRequestId
featureRequestId is het id van de run die is aangemaakt. De naam is historisch: het platform slaat een run op als een verzoek. Gebruik deze waarde als :id in het endpoint hieronder.
Een generic run lezen
GET /api/hooks/runs/:id
Gebruik hetzelfde secret. Alleen runs van generic agents die door die trigger zijn afgevuurd, kun je lezen.
| Status | Body | Betekenis |
|---|---|---|
| 200 | { "id", "status", "createdAt", "updatedAt", "result" } | De run. result is null totdat de run een eindstatus bereikt. |
| 403 | { "message": "Access denied" } | Het secret hoort niet bij de trigger van deze run. |
| 404 | { "message": "Not found" } | De run bestaat niet of is geen generic run. |
Poll dit endpoint totdat result niet null is, of kijk later opnieuw.
Gerelateerd
Laatst bijgewerkt op