The Admaxxer Pixel API enforces a token-bucket-equivalent fixed window to protect every workspace from noisy neighbors and accidental runaway loops.
/api/v1/* endpoints, including /me.If you need a higher ceiling for a large warehouse backfill, email support@admaxxer.com with the workspace ID and target QPS — we can raise the limit per workspace.
Every successful response includes:
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 57
X-RateLimit-Reset: 1713360000
X-RateLimit-Reset is a Unix timestamp (seconds) at which the window resets.
HTTP/1.1 429 Too Many Requests
Retry-After: 42
{
"error": {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded. Try again in 42 seconds.",
"details": { "limit": 60, "window": "1 minute" }
},
"meta": { "request_id": "req_…" }
}
X-RateLimit-Remaining as a steady signal. If it drops to 0, wait until X-RateLimit-Reset.Retry-After. Add up to 10% jitter to avoid thundering-herd re-sync when many workers share a workspace.The v1 POST /pixel/events endpoint accepts one event per call. For bulk historical backfills:
The GET /pixel/metrics/{pipe} endpoint mints a JWT and returns it. The JWT has its own downstream rate limit enforced by Tinybird (typically generous). Our API call to mint counts as one request against the 60/min budget; your subsequent direct calls to Tinybird do not.
We emit structured log lines per rate-limit rejection. If you see unexpected 429s, check Settings › API Keys — the usage meter shows requests in the last hour per key.