Zeng Book
ProductIndustriesIntegrationsPricingResources
Sign inContact salesTry it free
Introduction
  • Overview
  • Quickstart
API reference
  • Authentication
  • Errors
  • Rate limits
  • Pagination
  • Interactive explorer
Resources
  • Organization
  • Leads
  • Clients
  • Projects
  • Quotations
  • Invoices
Integrations
  • Overview
  • Webhooks
  • Public portal
  • Zapier
  • Make / n8n recipes
  • Xero (coming soon)

API reference

Rate limits

The Zeng Book API enforces 100 requests per minute per API key, using a fixed-window counter shared across all instances.

The numbers

  • Limit: 100 requests per 60-second window.
  • Scope: per API key. Mint additional keys if you need independent budgets for separate integrations.
  • Window: fixed (aligned to the minute), not sliding. The counter resets at the top of every minute.

Response headers

Every API response (successes and errors) carries three rate-limit headers:

http
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 87
X-RateLimit-Reset: 1715760480
  • X-RateLimit-Limit — the ceiling.
  • X-RateLimit-Remaining — how many calls you have left in the current window.
  • X-RateLimit-Reset — Unix timestamp (seconds) when the window rolls over.

When you hit the limit

The 101st request in a window returns 429 RATE_LIMITED with a Retry-After header telling you how many seconds remain in the window:

429 Too Many Requests
HTTP/1.1 429 Too Many Requests
Retry-After: 23
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1715760480

{
  "error": {
    "code": "RATE_LIMITED",
    "message": "Rate limit exceeded. Retry after 23s.",
    "requestId": "req_a1b2c3d4e5f6g7h8"
  }
}

Recommended client behaviour

  1. Check X-RateLimit-Remaining on every successful response. If it drops below ~10, slow down preemptively.
  2. On 429, sleep for the value of Retry-After and retry the exact same request. Do not exponentially escalate — the wait is bounded.
  3. For background workers, queue + space requests rather than fanning out. One worker at 1 req/s never trips the limit; 100 parallel workers at 10 req/s each will.
Need a higher ceiling?
The 100 req/min limit is per-key. If your workload genuinely needs more, mint a second key and shard your traffic, or contact us about an Enterprise plan with a custom limit.