Lelemon
  • Get started
  • Use cases
  • Guides
  • API basics
  • Webhooks
  • SDK, CLI and MCP
  • API reference
  • Changelog
  • v1 (legacy)
Authentication and scopesScope catalogIDs and objectsListsErrorsIdempotencyRate limitsVersioningError codes
powered by Zudoku
API basics

Rate limits

Two limits apply to every request, and the stricter one answers first:

LimitValueCounted per
API key3000 requests per minuteKey
IP address200 requests per minuteAddress the request comes from

Both answer 429 rate_limited with a Retry-After header: wait that many seconds. The TypeScript SDK waits for Retry-After and retries for you.

Limits per organization

Some routes call a system of yours, or send test traffic, and have their own limit for the whole organization, whatever key sends the request. They are counted across all the servers of Lelemon and answer 429 rate_limited with Retry-After.

RouteValue per minute
POST /v2/actions/{id}/test10
POST /v2/data-connectors/{id}/check20
POST /v2/mcp-servers/{id}/discover20

Headers

Every answer to a request with a valid key carries the state of the key limit:

HeaderMeaning
RateLimit-LimitRequests the key can send in the window
RateLimit-RemainingRequests left in the window
RateLimit-ResetSeconds until the window resets
RateLimit-PolicyThe policy as limit;w=seconds, for example 3000;w=60

Spread work that arrives in bursts: a queue worker that sends one request per message stays far below the key limit, while a loop over every contact does not.

If you hit a limit while polling, subscribe to webhooks instead. An organization can have up to 16 webhook endpoints; the next one answers 422 webhook_endpoint_limit.

IdempotencyVersioning
On this page
  • Limits per organization
  • Headers