Rate limit
O sistema de limite de requisições (rate limit) é uma medida essencial para garantir a estabilidade, segurança e disponibilidade da API Partner. Esses limites ajudam a proteger a infraestrutura contra sobrecarga, garantindo que todos os integradores possam acessar os recursos de forma justa e eficiente, sem prejudicar a experiência de outros usuários.
Limite por estabelecimento
Cada estabelecimento possui um limite de até 100 requisições por minuto para acessar a API. Este limite é aplicado independentemente do tipo de autenticação utilizada (parceiro autenticado ou não).
Parceiros autenticados
Para parceiros oficialmente reconhecidos pela Goomer (que utilizam autenticação com x-partner-key e x-partner-token), os limites de requisições são definidos individualmente durante o processo de validação e onboarding.
Esses limites personalizados podem exceder o limite padrão por estabelecimento, dependendo das necessidades específicas do parceiro e do acordo estabelecido com a Goomer. Isso permite maior flexibilidade para integrações de grande escala que precisam processar volumes maiores de dados.
Parceiros autenticados continuam sujeitos ao limite de 100 requisições por minuto por estabelecimento, mas podem ter limites globais mais elevados para acessar múltiplos estabelecimentos simultaneamente.
Parceiros não autenticados
Para integrações que não utilizam credenciais de parceiro (apenas o token do estabelecimento), o acesso é limitado por estabelecimento:
- Limite por estabelecimento: 100 requisições por minuto
Este limite ajuda a prevenir abusos e garante que a API permaneça disponível para todos os usuários, mesmo em momentos de alto tráfego.
Tratamento de excesso de requisições
Quando os limites de requisições são excedidos, a API responde com o status HTTP 429 (Too Many Requests). Neste caso, recomendamos:
- Implementar mecanismos de retry com exponential backoff
- Distribuir as requisições ao longo do tempo quando possível
- Otimizar o número de chamadas realizadas, utilizando parâmetros de filtro e paginação de forma eficiente
Monitoramento de uso
Para evitar atingir os limites de requisições, recomendamos monitorar o uso da API e implementar estratégias para otimizar as chamadas realizadas. A resposta da API inclui os seguintes headers que ajudam a acompanhar o uso:
X-RateLimit-Limit: Número máximo de requisições permitidas no períodoX-RateLimit-Remaining: Número de requisições restantes no período atualX-RateLimit-Reset: Tempo (em segundos) até que o limite seja resetado