DXV documentatie
Ontwikkelaars

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}$.

StatusBodyBetekenis
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.

StatusBodyBetekenis
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

Op deze pagina