Um limite de requisições (em inglês, rate limit) restringe quantas chamadas um cliente pode enviar a uma API em uma janela de tempo, por exemplo 200 chamadas por hora. Se você enviar mais, a API rejeita as requisições extras, normalmente com o status HTTP 429, "requisições demais", até a janela reiniciar.
// 01
Por que as APIs impõem limites
Os limites protegem o serviço contra sobrecargas e evitam que um usuário intensivo degrade o serviço dos demais. As redes sociais são especialmente rigorosas: os endpoints de publicação costumam ter cotas por conta além dos limites gerais, porque a publicação automatizada em massa é exatamente o que o spam parece.
// 02
Como lidar com um limite atingido
Um 429 não é um erro grave; é uma instrução para desacelerar. Um bom cliente espera e tenta de novo com pausas crescentes (backoff) e lê os cabeçalhos da resposta que indicam quando a janela reinicia. Se você constrói sobre uma API de publicação, consulte sua cota antes de precisar dela: a InvisibleAPI expõe os limites de uso em tempo real pela API, com uma cota de 100 posts publicados por conta conectada por ciclo de cobrança.
// 03
O que significa estar "rate limited"?
Significa que a API parou de aceitar suas requisições por enquanto, porque você enviou requisições demais dentro da janela de tempo. Não há nada quebrado nem nenhum bloqueio permanente: as requisições voltam a funcionar quando a janela reinicia. A mesma mensagem aparece em apps e sites quando você repete uma ação rápido demais.
// 04
Como resolver "rate limit exceeded"
Pare de enviar, espere e tente de novo com uma espera crescente. Leia os cabeçalhos que a API retorna sobre o uso ou o reinício em vez de adivinhar, e distribua os jobs em lote em vez de enviar todos de uma vez. Se você atinge o limite todos os dias, a solução é fazer menos chamadas: guarde em cache o que você lê e verifique a cota restante antes de um lote grande.
// 05
O Instagram como exemplo
O Instagram aplica dois tipos de limite ao mesmo tempo. O limite da Meta para o Instagram Platform é de 4.800 chamadas por impressão em uma janela de 24 horas, e a publicação tem seu próprio teto de 100 publicações feitas pela API por conta em 24 horas. Cada limite retorna um código de erro diferente, e o guia de códigos de erro da API do Instagram traduz cada um em uma decisão de nova tentativa. A API de publicação no Instagram acrescenta uma terceira contagem, separada: seu endpoint de limites indica a margem restante da InvisibleAPI de cada conta no ciclo de cobrança. Ela não acompanha o teto móvel de 24 horas da Meta, então um lote precisa respeitar os dois.
Passe da definição para a documentação que mostra como aplicá-lo.
Solução principal Regras e restrições de contas