Pular para o conteúdo
Toda a documentação

Referência

Erros

Os erros vêm no formato da OpenAI, com um code estável para você usar na lógica e uma message escrita para pessoas. Uma chamada recusada ou com falha não custa nada.

Verificado em 26 de outubro de 2026

O formato

Response
{
  "error": {
    "type": "rate_limit_error",
    "code": "daily_cap",
    "message": "This call needs up to $0.02 and the key has $0.01 left of its $2.00 daily cap, which resets at 00:00 UTC. …"
  }
}

Use o code para decidir, e não a message: as mensagens podem mudar de redação, os códigos ficam. O type segue o da OpenAI, então os SDKs lançam a exceção que você espera.

Todos os códigos

StatusCódigoQuandoComo resolver
401missing_keyNenhuma chave foi enviada.Envie como Authorization: Bearer sk-nokeep-…. Crie uma no console, ou teste antes com sk-nokeep-test.
401invalid_keyA chave está errada ou foi revogada.Copie a chave de novo de onde você a guardou; o console mostra só os últimos quatro caracteres. Se ela se perdeu, crie uma nova.
403account_frozenOs recursos pagos estão pausados na conta dona da chave.Escreva para nós pela página de contato.
429rate_limitedA chave enviou mais de 120 requisições em um minuto (20 para a chave de teste, por endereço).Espere os segundos de Retry-After e tente de novo.
429daily_capA chamada poderia passar do limite diário da chave.Aumente o limite no console, reduza max_tokens ou espere até 00:00 UTC (Retry-After diz quanto falta).
402insufficient_creditsOs créditos comprados da conta não cobrem esta chamada.Recarregue a partir de $5 no console, ou reduza max_tokens. Os créditos de um plano ficam no app.
400invalid_jsonO corpo não é um objeto JSON.Envie Content-Type: application/json e um objeto JSON.
413too_largeA requisição passa de 12 MB.Envie imagens como links em vez de data URLs, ou envie menos de uma vez.
404model_not_foundO id do modelo não é um dos nossos.GET /v1/models lista os ids. Veja se há erro de digitação ou se falta -uncensored.
400invalid_messagesmessages está ausente ou vazio, é longo demais, tem um papel desconhecido, ou uma mensagem de ferramenta não tem tool_call_id.Envie de 1 a 2.000 mensagens, cada uma com o papel system, developer, user, assistant ou tool.
400unsupported_nn é maior que 1.Envie uma requisição para cada resposta que você quer.
400invalid_reasoning_effortO modelo não aceita esse reasoning_effort.O DeepSeek aceita none, low, high ou max. O GLM aceita low ou high.
400unsupported_tool_choiceO GLM recebeu uma função nomeada ou "required" como tool_choice.Envie auto ou none para o GLM; ele escolhe as próprias ferramentas. O DeepSeek aceita todas as formas.
400unsupported_inputUma parte do conteúdo é de um tipo que o modelo não consegue ler.Envie imagens para o DeepSeek; o GLM lê só texto.
400too_many_imagesMais de dez imagens em uma requisição.Envie no máximo dez.
422hard_limitA requisição ultrapassa um dos limites rígidos dos termos.Nada foi cobrado. Tire a mensagem do histórico que você reenvia, ou a próxima chamada também para.
400rejectedO modelo não conseguiu aceitar a requisição como foi enviada.Confira os parâmetros na lista do modelo em Modelos. Nada foi cobrado.
503busyO modelo está ocupado.Tente de novo após os segundos de Retry-After. Nada foi cobrado.
503model_unavailableO modelo está fora do ar do nosso lado.Use o outro modelo por enquanto; a página de status mostra quando ele volta.
502upstream_errorO modelo falhou antes de escrever uma palavra.Tente de novo daqui a pouco. Nada foi cobrado.
404not_foundA rota não existe.A API atende GET /v1/models, GET /v1/models/{id}, GET /v1/status e POST /v1/chat/completions.
404api_closedA API está desligada.Tente de novo mais tarde.
Em um streamCódigoQuandoComo resolver
—stream_cutO modelo parou antes de terminar, no meio do stream.O que ele escreveu é cobrado, nada além disso. Tente de novo para receber o resto, ou continue do que chegou.

Quais repetir

  • Repita 429 rate_limited, 503 busy e 502 upstream_error, depois dos segundos de Retry-After, quando houver.
  • Não repita os 400, 401, 402, 404 ou 422: a mesma requisição recebe a mesma resposta.
  • Um 429 daily_cap espera até 00:00 UTC. Aumente o limite em vez disso.