hosting
POST /v1/connector/backup/claim
Ask whether a backup is due — called by the Zinn® WordPress connector plugin.
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/connector/backup/claim \
-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
**Unauthenticated by session, authorised by a per-site bearer token** minted when the customer connected the site. The caller is PHP on a server we have never seen and has no session with us. Returns either a job (`job_id` plus a short-lived presigned upload URL) or an empty object meaning *nothing due*. The plugin polls hourly and streams the archive straight to object storage, so it never passes through our servers. ⛔ **A wrong or unknown token returns `200` with an empty body, exactly like "nothing due".** That is deliberate and is the opposite of what an API normally does: a `401` would confirm to an unauthenticated caller that a given site is enrolled for backups, and this route is reachable by anyone. The plugin cannot tell the two apart either, and does not need to.
Request body
| Name | Type | Required | What it is |
|---|---|---|---|
site_url | string | No | The plugin's own view of the site address, for diagnostics only. |
Response
| Name | Type | Required | What it is |
|---|---|---|---|
job_id | string | No | The backup row this upload settles. |
upload_url | string | No | A short-lived presigned PUT. ⛔ A bearer credential — whoever holds it can write that object — so the plugin never logs it, stores it, or shows it in an admin notice. It grants e… |
Errors this endpoint can return
429