Skip to content

Limites de Uso (Rate Limiting)

Esta documentação descreve os limites de taxa de requisição implementados para garantir a estabilidade e disponibilidade da API OpenDelivery.

Aplicação dos Limites

É importante ressaltar que os limites de requisição são aplicados por loja integrada e não por integrador. Isso significa que:

  • O client_id gerado para cada integração é usado como chave para o controle de rate limit
  • Cada loja integrada possui sua própria cota de requisições, independente do integrador
  • Integradores que gerenciam múltiplas lojas devem estar cientes de que cada loja possui seu próprio limite

Esta abordagem garante que o tráfego seja distribuído de forma justa entre todas as lojas, independentemente do tamanho do integrador.

Limites para Autenticação

EndpointLimiteJanela de Tempo
POST /opendelivery/oauth/token10 requisições1 hora

Limites para Operações de Pedidos

EndpointLimiteJanela de Tempo
GET /opendelivery/v1/orders/{orderId}100 requisições1 minuto
POST /opendelivery/v1/orders/{orderId}/{status}100 requisições1 minuto
GET /opendelivery/v1/events:polling2 requisições1 minuto
POST /opendelivery/v1/events/acknowledgment100 requisições1 minuto

Limites para Informações do Merchant

EndpointLimiteJanela de Tempo
GET /opendelivery/v1/merchant10 requisições1 minuto

Cabeçalhos de Resposta

As respostas incluem cabeçalhos para monitorar seu consumo de API:

CabeçalhoDescrição
X-RateLimit-LimitNúmero máximo de requisições permitidas
X-RateLimit-RemainingNúmero de requisições restantes
X-RateLimit-ResetTempo (em segundos) até a redefinição

Tratamento de Excesso de Requisições

Quando os limites são excedidos, a API retorna:

  • Status HTTP: 429 Too Many Requests
  • Cabeçalho Retry-After: tempo recomendado (em segundos) para aguardar

Boas Práticas

  • Cache de token: Armazene e reutilize o token até sua expiração
  • Backoff exponencial: Implemente espera progressiva após erros 429
  • Monitoramento: Acompanhe o consumo da API para evitar bloqueios
  • Otimização de consultas: Agrupe operações quando possível
  • Polling adequado: Para o endpoint de eventos, respeite o limite de 2 requisições a cada 1 minuto
  • Gerenciamento de múltiplas lojas: Se você é um integrador com várias lojas, implemente filas e controles para garantir que cada loja respeite seus próprios limites

Documentação Completa

Para informações detalhadas sobre tratamento de erros e exemplos, consulte: