Referência da API
Erros e limites
Formato do erro
O erro segue o formato da rota chamada. Em /v1/chat/completions, type e code trazem o mesmo código.
OpenAI · /v1/chat/completions
{
"error": {
"message": "Saldo insuficiente.",
"type": "sem_saldo",
"code": "sem_saldo"
}
}Anthropic · /v1/messages
{
"type": "error",
"error": {
"type": "billing_error",
"message": "Saldo insuficiente."
}
}Códigos
| HTTP | Código | Causa |
|---|---|---|
| 400 | invalido | JSON inválido, messages ausente, n diferente de 1, ou parâmetro recusado pelo modelo. |
| 400 | sem_visao | Imagem enviada a modelo sem visão. |
| 401 | chave_invalida | Chave ausente, mal formada ou inexistente. |
| 401 | chave_revogada | Chave revogada no console. |
| 401 | chave_expirada | Chave passou da data de expiração. |
| 402 | sem_saldo | Saldo menor que a reserva da requisição. |
| 402 | teto_chave | Teto diário ou mensal da chave atingido. |
| 403 | termos | Termos de uso ainda não aceitos no console. |
| 403 | restrito | Conta ainda sem acesso à API. Até o lançamento, a API atende só a equipe. |
| 403 | modelo_nao_permitido | Modelo fora da lista permitida da chave. |
| 403 | conta_bloqueada | Conta bloqueada. |
| 404 | modelo | Modelo não encontrado. A mensagem lista os ids disponíveis. |
| 413 | grande | Corpo da requisição acima do limite. |
| 429 | limite_minuto | Limite de requisições por minuto da chave. |
| 429 | muitas_falhas | Muitas tentativas com chave inválida a partir do mesmo IP. Traz Retry-After. |
| 429 | limite_provedor | Modelo sobrecarregado. Tente de novo em instantes. |
| 502 | provedor | Falha ao falar com o modelo, ou resposta inválida. |
| 503 | indisponivel | Serviço indisponível. |
Tipos no formato Anthropic
Em /v1/messages, error.type segue o status HTTP:
| HTTP | error.type |
|---|---|
| 400 | invalid_request_error |
| 401 | authentication_error |
| 402 | billing_error |
| 403 | permission_error |
| 404 | not_found_error |
| 413 | request_too_large |
| 429 | rate_limit_error |
| 502 | api_error |
| 503 | overloaded_error |
Limites
| Limite | Valor | Ao passar |
|---|---|---|
| Requisições por chave | 60 por minuto | 429 limite_minuto |
| Tentativas com chave inválida por IP | 20 em 10 minutos | 429 muitas_falhas |
| Corpo da requisição | 4 MB | 413 grande |
| Duração da requisição | 300 segundos | — |
| Respostas por requisição (n) | 1 | 400 invalido |
| Gasto da chave | Teto diário e mensal, opcional | 402 teto_chave |
| Saldo | Reserva por requisição | 402 sem_saldo |
O limite por minuto conta os últimos 60 segundos de cada chave. muitas_falhas devolve o cabeçalho Retry-After, em segundos.
Novas tentativas
429e502: tente de novo com espera crescente.400,401,403,404e413: corrija a requisição antes de repetir.402: recarregue o saldo ou aumente o teto da chave no console.
Requisição que o modelo responde com erro HTTP, ou que não chega ao modelo, não é cobrada. Veja Cobrança.