ReferenceRate Limits

Rate Limits

Open Preview uses one shared limit across core control-plane APIs. Limits protect platform stability while teams test approval requests, receipts, and gateway wiring.

EndpointOpen PreviewUse
POST /v1/intents10,000/minCreate approval requests
GET /v1/intents/:id10,000/minRead approval status
POST /v1/permits/validate10,000/minVerify execution receipts
GET /v1/projects/:id/audit10,000/minRead audit events

Handling 429 Responses

async function createIntentWithRetry(params, maxRetries = 3) {
  for (let i = 0; i < maxRetries; i++) {
    try {
      return await sa.createIntent(params);
    } catch (err) {
      if (err.code !== "rate_limited") throw err;
      const resetAt = Number(err.headers["x-ratelimit-reset"]);
      await new Promise((resolve) => setTimeout(resolve, resetAt * 1000 - Date.now()));
    }
  }
  throw new Error("approval API rate limit exceeded");
}