Ping API (ingest)
Jobs check in on https://ping.seiri.app. No auth token is required — the endpoint ID is the secret.
Management/dashboard stays on https://cloud.seiri.app.
OpenAPI: /docs/openapi/seiri-ingest-api.yaml.
Endpoint ID
<org-slug>:<webhook-ref>
Copy the full base URL from Core → Webhooks (ENDPOINT column).
Routes
| Method | Path | Meaning |
|---|---|---|
| GET or POST | /webhook/{endpoint-id} | Plain heartbeat / success |
| GET or POST | /webhook/{endpoint-id}/success | Explicit success |
| GET or POST | /webhook/{endpoint-id}/fail | Explicit failure |
There is no /start route.
Optional JSON body on POST is accepted and stored with the event.
Examples
curl -fsS -m 10 \
https://ping.seiri.app/webhook/acme-demo:deno-xFY-7Yv/success
curl -fsS -m 10 -X POST \
https://ping.seiri.app/webhook/acme-demo:deno-xFY-7Yv/fail \
-H "Content-Type: application/json" \
-d '{"error":"timeout"}'
# seirictl
seirictl ping acme-demo:deno-xFY-7Yv --path /success
Email alternative
Send mail to {webhook-ref}@ping.seiri.app after configuring Services → Email Pings. See Email heartbeats.
Agent notes
- Never use
cloud.seiri.appfor heartbeats. - Never invent short URLs like
https://ping.seiri.app/<token>without/webhook/<endpoint-id>. - Keep timeouts short (~10s) and swallow ping errors so monitoring cannot take down the job.