Slipstream deploy record
const url = 'https://example.com/api/webhooks/slipstream/deploy';const options = { method: 'POST', headers: {'Content-Type': 'application/json'}, body: '{"repo":"example","sha":"example","run_id":"example","environment":"production","status":"success"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/api/webhooks/slipstream/deploy \ --header 'Content-Type: application/json' \ --data '{ "repo": "example", "sha": "example", "run_id": "example", "environment": "production", "status": "success" }'Called by the record-deploy stage of the Slipstream deploy recipe (HO-15721) once the
promoted commit is live. Stamps deployed_at (status success) or deploy_failed_at
(status failed) on tickets whose merge_sha is sha, in the projects wired to repo,
saves that repo reported a deploy (HO-16279: the hourly sweep keeps its merged tickets
waiting for their deploy), then closes the closing-line tickets parked on that sha. Only environment: production
stamps; any other environment is acknowledged and ignored. Idempotent: a repeat stamps
nothing and re-runs the close. Protected by CRON_SECRET via the x-cron-secret header.
Request Body required
Section titled “Request Body required ”Responses
Section titled “ Responses ”Recorded, or acknowledged and ignored (unknown repo, non-production environment)
object
Body is not JSON or fails validation
Missing or invalid CRON_SECRET
Body too large
The stamp, the deploy report (report_failed) or the close failed; send the call again