Tema
Rate limits
Limite padrão: 600 requisições por minuto, por credencial — não por IP.
A cota é contada pela sua chave, o que tem duas consequências boas:
- Vários CNPJs emitindo do mesmo servidor (um ERP multiempresa, por exemplo) não dividem a mesma cota — cada token tem a sua.
- Trocar de IP, escalar horizontalmente ou passar por proxy não muda nada.
Como a chave é resolvida:
| autenticação | cota contada por |
|---|---|
Token de API (nfr_live_ / nfr_test_) | o próprio token (hash) |
| Sessão web (JWT) | a empresa |
| Sem autenticação (rotas públicas) | o IP |
Quando o limite estoura
A API responde HTTP 429 com os headers padrão:
retry-after: <segundos até liberar>
x-ratelimit-limit: 600
x-ratelimit-remaining: 0
x-ratelimit-reset: <segundos>Boas práticas
- Respeite o
retry-after— reenviar antes só mantém a cota estourada. - Use backoff exponencial nos retries (o SDK JavaScript já faz isso nas chamadas seguras).
- Em emissão, sempre com
Idempotency-Key: se um retry cruzar com a requisição original, você recebe a mesma nota — nunca duas. - 600/min é muito acima do uso típico (10 notas por segundo, sustentado). Se a sua operação legitimamente precisa de mais — cargas em lote, picos sazonais — fale com suporte@nferapido.com.br: o limite é configurável por credencial.