Como tratar rate limits e erros de API?

Viewed 2

Como implementar retry e tratamento de erro na minha integração?

1 Answers

Rate limits típicos:

  • 60-6.000 requests/min por API key
  • 100k-10M tokens/min
  • 10-500 requests simultâneas

Headers relevantes:

X-RateLimit-Limit: 60
X-RateLimit-Remaining: 42
X-RateLimit-Reset: 1713730900

Retry com backoff exponencial (Python):

from tenacity import retry, wait_exponential, stop_after_attempt

@retry(
    wait=wait_exponential(multiplier=1, min=2, max=30),
    stop=stop_after_attempt(5)
)
def chamar_cortex(messages):
    return client.chat.completions.create(
        model="claude-sonnet-4-6",
        messages=messages
    )

Códigos HTTP:

  • 429 = rate limit → retry com backoff
  • 500/502/503 = erro servidor → retry
  • 401 = key inválida/expirada → não retry, investigar
  • 400 = request malformado → não retry, fix do código

📖 Documentação completa na Wiki:

Related