X-RateLimit-* e o padrão IETF RateLimit-*:
A informação de rate limit vem nos headers da resposta, não no corpo. Em ferramentas como o n8n, habilite a opção de incluir headers na resposta (Response → Include Response Headers and Status) para vê-los.
Quando o limite estoura
A resposta é429 rate_limit_exceeded, com o header Retry-After indicando em quantos segundos tentar de novo:
429 com backoff: aguarde o Retry-After e repita. Em envios, combine com Idempotency-Key para repetir sem risco de duplicar mensagens.
Cota diária por empresa
Além do limite por minuto, cada empresa tem uma cota diária, dividida em dois baldes independentes de 10.000 requisições cada:
A cota é da empresa, somando todas as chaves, e zera à meia-noite de Brasília (
America/Sao_Paulo). As respostas atendidas e o próprio 429 daily_quota_exceeded trazem o estado do balde da requisição (o 429 rate_limit_exceeded não traz estes headers):
Toda requisição autenticada que passou pelo limite por minuto conta na cota, qualquer que seja o status da resposta (um
404 também conta). Requisições barradas pelo limite por minuto (rate_limit_exceeded) ou pela própria cota não contam. Quando a cota do balde acaba, a resposta é 429 daily_quota_exceeded, com Retry-After em segundos até a meia-noite de Brasília:
Retry-After ou a virada do dia. Para gastar menos leituras, sincronize leads com a listagem incremental e receba mudanças por webhooks em vez de consultar lead a lead.
Precisa de uma cota diária maior? Fale com o suporte da Superlead.
Teto de rajada por IP
Além do limite por chave, existe um teto de proteção na borda: 300 requisições a cada 10 segundos por IP de origem, somando todas as chaves que saem desse IP. Ao passar dele, as requisições desse IP recebem429 por 10 segundos. Essa resposta vem do Cloudflare, com corpo HTML e sem o JSON de erro da API.
Quem respeita o limite por chave dificilmente chega nesse teto. Se a sua integração usa muitas chaves a partir do mesmo servidor, distribua as chamadas no tempo e trate qualquer 429 com espera e nova tentativa. Para sincronizar leads, use a listagem incremental em vez de consultar lead a lead.
Limite da API vs. limite do WhatsApp
São três limites diferentes, com códigos distintos:rate_limit_exceeded— sua chave excedeu o limite de requisições por minuto da API Superlead.daily_quota_exceeded— a sua empresa esgotou a cota diária de leituras ou de escritas.channel_rate_limit— o WhatsApp está limitando o seu número (limites de volume da Meta). Reduza o ritmo de envios para o número; oRetry-Afterda API não se aplica aqui.
Precisa de um limite maior para a sua operação? Fale com o suporte da Superlead.