Pular para o conteúdo
Última atualização

Rate limit

A API Auvo limita 400 requisições por minuto por IP. Ao exceder, a resposta é:

HTTP/1.1 403 Forbidden
Content-Type: application/json

{ "error": "Rate limit temporarily exceeded" }

Estratégia recomendada

  1. Backoff exponencial com jitter:

    async function withBackoff(fn) {
      for (let attempt = 0; attempt < 5; attempt++) {
        const res = await fn();
        if (res.status !== 403) return res;
        const wait = (2 ** attempt) * 250 + Math.random() * 250;
        await sleep(wait);
      }
      throw new Error('Rate limit não liberou após 5 tentativas');
    }
  2. Paralelismo controlado — limite a 4 requisições concorrentes por worker.

  3. Batch + cache em dados lentos (ex.: cadastro de categorias).

  4. Separe IPs quando possível (um IP por ambiente/cliente) para evitar contenda entre aplicações.

Por que 400/min

O limite é suficiente para fluxos típicos de sincronização (até ~23k req/hora). Para throughputs maiores, abra um ticket em help@auvo.com.br descrevendo o caso — podemos avaliar aumento temporário.