Get a webhook subscription
Authorization
ApiKeyAuth API key from Settings → API Keys.
In: header
Path Parameters
Response Body
application/json
application/json
application/json
curl -X GET "https://example.com/api/v1/webhooks/string"{ "id": "string", "url": "http://example.com", "events": [ "render.completed" ], "enabled": true, "failure_count": 0, "template_id": "string", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z"}Create a webhook subscription POST
Subscribes to events for your team. When an event fires, Automette POSTs a JSON payload to your URL. The response includes a `secret` — use it to verify the `webhook-signature` header on incoming requests. **The secret is shown only once** — store it immediately. See [Webhook payloads](/docs/api/webhook-payloads) for signature verification. By default a subscription is **team-wide** and fires for every matching event in your team, regardless of source. Pass `template_id` to scope it to a single template — it then receives render events for that template only. Delivery is additive: a render notifies your team-wide subscriptions **and** any subscription scoped to that template. For a one-off callback tied to a single render, use the `webhook_url` field on `POST /api/v1/renders` instead. **Available events:** - `render.completed` — a single render finished successfully (API, form, on-demand, template set). Bulk/CSV rows do **not** fire this — see `job.completed`. - `render.failed` — a single render failed or errored - `form.submitted` — a submission landed on a hosted form - `job.completed` — a bulk/CSV job finished (one event per job, with row counts), instead of a delivery per row
Update a webhook subscription PATCH
Updates a subscription. All fields are optional — send only what you want to change. Set `enabled: false` to pause delivery without deleting. Set `enabled: true` to resume — this also resets `failure_count` to 0.