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 /api/intents10,000/minCreate approval requests
GET /api/intents/:id10,000/minRead approval status
POST /api/intents/permit/verify10,000/minVerify receipt tokens
GET /api/intents?status=resolved10,000/minRead resolved decisions

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");
}