Developers
zeroatom API
Read pages, publish changes and manage short links from your own tools.
Base URLhttps://www.zeroatom.link/api/v1
Authentication
Create a key in Settings, API keys (Creator+ and Agency plans). Send it as a bearer token on every request. Keys start with za_ and are shown once, so store them in a secret manager.
Authorization: Bearer za_your_key
Rate limits
Each key may make 60 requests per minute. Over the limit, the API returns 429 with a Retry-After header giving the seconds until the window resets.
Endpoints
| Method | Path | Scope | Description |
|---|---|---|---|
| /me | any | Workspace, plan and the key's scopes. | |
| /pages | page:read | List pages. | |
| /pages/{id} | page:read | Read one page. | |
| /pages/{id}/publish | page:publish | Publish or unpublish. Body: { "published": true }. | |
| /links | link:read | List short links. | |
| /links | link:write | Create a short link. Body: { "target", "slug"? }. | |
| /links/{id} | link:write | Delete a short link. | |
| /qr?page={id} | qr:read | QR code for a page. | |
| /analytics?days={1-90} | analytics:read | Views, clicks and scans for the workspace. |
Scopes
A key can only call endpoints covered by the scopes chosen when it was created. Missing scopes return 403.
page:readList pages and read a page with its theme and content.page:publishPublish or unpublish a page.link:readList the workspace's short links.link:writeCreate and delete short links.qr:readFetch the QR code for a page.analytics:readRead view, click and scan totals.
Errors
Failures return a JSON body with a human readable error and a stable code.
{
"error": "This API key is missing the link:write scope.",
"code": "forbidden"
}401 unauthorizedMissing, unknown or revoked key.402 entitlementThe workspace plan does not include API access.403 forbiddenThe key lacks the required scope.404 not_foundThe resource does not exist in this workspace.400 validation_failedThe request body or query is invalid.429 rate_limitedToo many requests. Retry after the header value.
Example
Create a short link:
curl -X POST https://www.zeroatom.link/api/v1/links \
-H "Authorization: Bearer za_your_key" \
-H "Content-Type: application/json" \
-d '{"target": "https://example.com/offer", "slug": "offer"}'