public
POST /v1/public/status/subscribe
Ask for email updates from the public status page.
Authentication
This endpoint is public. It takes no credential and no organisation — it is what our own marketing site and AI answer engines read.
This endpoint takes no organisation id. Your key already identifies the organisation it belongs to, and the response is scoped to it.
Try it
Replace anything in angle brackets with your own values, and the key placeholder with a key from your dashboard.
curl -X POST https://api.zinndigital.com/v1/public/status/subscribe \
-H "Content-Type: application/json" \
-d '{ }'Signed in? The API console in your dashboard fills in your real organisation id and your own key, and runs the request against the live API so you can see the actual response. Open this endpoint in the API console
Details
docs/121. Unauthenticated — a prospect subscribing has no account. ⛔ **Double opt-in.** The address receives exactly one thing until it confirms: its own confirmation link. Anyone can type anyone's address into a public form, and single opt-in would make this endpoint a way to mail strangers from our domain. ⛔ The response is identical whether or not the address is already known. Confirming that a given address is on the list would be an enumeration oracle, and this list contains prospects and journalists. Rate limited per client.
Request body
| Name | Type | Required | What it is |
|---|---|---|---|
kind | string<email, webhook> | No | ⚖️ Owner, 2026-09-03 - *"on the status page can you set up webhook for updates for it"*. `webhook` requires `endpoint`; `email` requires `email`. |
email | string | No | — |
endpoint | string | No | An `https://` endpoint that will receive one signed JSON POST per incident update. ⛔ `https` only - the signature proves ORIGIN, not confidentiality, so a plain `http` endpoint… |
locale | string | No | Which language to send in. Falls back to English for an unknown code rather than refusing — a wrong language is a worse reason to reject a subscription than no language at all. |
Response
| Name | Type | Required | What it is |
|---|---|---|---|
detail | string | Yes | — |
Errors this endpoint can return
422 · 429