Skip to main content

Public API Rate Limits

This page explains how rate limits are applied across the Public API. Limits are enforced per endpoint, per integration user, and per workspace.

Overview

Each Public API route has a dedicated request limit applied over a 60‑second window. If a client exceeds the allowed number of calls, the server returns a 429 Too Many Requests response. Rate‑limit responses include standard headers:
  • x-ratelimit-limit – maximum number of requests allowed for the endpoint
  • x-ratelimit-remaining – remaining requests in the current window
  • x-ratelimit-reset – Unix timestamp indicating when the limit resets
Rate limits are isolated per route: reaching the limit on one endpoint does not affect limits on others.

Board API Rate Limits

EndpointMethodLimit
/public/v1/board/list-boardsGET50 requests/min
/public/v1/board/board/{boardId}GET50 requests/min
/public/v1/board/board/{boardId}/tablesGET50 requests/min
/public/v1/board/board/{boardId}/table/{tableId}GET50 requests/min
/public/v1/board/board/{boardId}/table/{tableId}/rowsGET50 requests/min
/public/v1/board/board/{boardId}/table/{tableId}/row/{rowId}GET50 requests/min
/public/v1/board/board/{boardId}/table/{tableId}/rowPOST30 requests/min

Chat API Rate Limits

EndpointMethodLimit
/public/v1/chat/send-messagePOST100 requests/min

429 Response Behavior

When a client exceeds the limit: Status: 429 Too Many Requests Example response body:
{
  "error": "Rate limit exceeded",
  "code": "RATE_LIMIT"
}
Clients should implement retry logic based on the x-ratelimit-reset header.