Developer guide
Código de erro
Procedimentos e regras de repetição por código de estado
Se o upstream devolver um código 4xx ou 5xx, o gateway encaminha esse código tal como está. Nos restantes casos, aplica as regras da tabela abaixo.
400, 401, 403, 404 e 413 são códigos que exigem a correção do pedido ou da configuração; 409, 429 e 5xx são códigos para os quais o cliente deve aguardar e reenviar o mesmo pedido.
O formato do corpo do erro varia consoante a especificação, e error.type no percurso compatível com Anthropic é determinado pelo código de estado.
O motivo do 403 é identificado através de error.message, e os valores dos limites e da utilização podem ser consultados no ecrã da consola.
Código de estado
| Código | Significado | Procedimento |
|---|---|---|
| 400 | O valor do pedido é inválido. O limite da lista de modelos compatíveis com Anthropic está fora do intervalo de 1 a 1000 ou tentou retomar em streaming uma resposta guardada através de GET /responses/{responseId}?stream=true. | Corrija o valor para que fique dentro do intervalo. Consulte as respostas guardadas sem stream. |
| 401 | A chave está em falta ou expirou ou foi revogada. | Verifique o estado da chave na página das chaves da API e confirme o nome do cabeçalho e o prefixo Bearer. |
| 403 | Não tem permissão para aceder ao modelo, excedeu o limite de utilização, não tem créditos suficientes ou não é o proprietário da voz. | Consulte error.message para saber o motivo e verifique os valores no ecrã da secção sobre limites e utilização abaixo. |
| 404 | O modelo não existe ou não pode ser acedido com esta chave (incluindo modelos cujo suporte terminou). Também é devolvido quando é chamado um caminho inexistente ou quando é solicitado um resultado do CleviDrive cujo período de retenção de 3 dias terminou. | Consulte primeiro a lista de modelos que podem ser chamados através de GET /models. Compare o caminho com a tabela da página Como chamar a API. |
| 408 · 409 · 413 | Trata-se de um tempo limite excedido a montante, congestionamento ou um pedido demasiado grande. O limite de tempo para caminhos de áudio e voz é de 5 minutos e o limite de tamanho do pedido é de 28 MiB. | Se 409 incluir Retry-After, aguarde esse período e envie novamente o mesmo pedido. Para 413, divida o pedido. |
| 429 | O fornecedor a montante aplicou um limite de velocidade. | Se houver Retry-After, aguarde esse período e tente novamente; caso contrário, repita com recuo exponencial. |
| 5xx | É um erro temporário do gateway ou do fornecedor a montante (incluindo 503). | Tente novamente com recuo exponencial. Se o problema persistir, contacte-nos. |
402 não é devolvido. A insuficiência de créditos e o limite de utilização excedido são ambos devolvidos como 403.
Repetição e contacto
O gateway não gera os seus próprios 429 nem repete ou coloca em fila as respostas do fornecedor a montante. O cliente é responsável por aguardar e tentar novamente.
Ao contactar-nos, indique o X-Request-Id através da Ajuda e contacto. Se não tiver enviado um X-Request-Id, o valor emitido pelo servidor encontra-se no cabeçalho request-id da resposta compatível com Anthropic.
Corpo do erro
O formato do corpo do erro varia consoante a especificação. Os erros upstream são reorganizados e transmitidos apenas com a mensagem; a stack e os campos internos não são transmitidos.
Corpo do erro de um caminho compatível com OpenAI.
{
"error": {
"message": "API key is required.",
"type": "invalid_request_error"
}
}Corpo do erro de um caminho compatível com Anthropic. error.type é determinado de acordo com o código de estado, conforme indicado na tabela abaixo.
{
"type": "error",
"error": {
"type": "authentication_error",
"message": "..."
},
"request_id": "rqid..."
}| Código de estado | error.type |
|---|---|
| 400 | invalid_request_error |
| 401 | authentication_error |
| 403 | permission_error |
| 404 | not_found_error |
| 413 | request_too_large |
| 429 | rate_limit_error |
| 529 | overloaded_error |
| Outros códigos | api_error |
Verificar limites e utilização
Os valores dos limites variam consoante o espaço de trabalho. Confirme o motivo do erro 403 em error.message e, em seguida, consulte os valores no ecrã seguinte.
| O que verificar | Ecrã da consola |
|---|---|
| Limite aplicado ao espaço de trabalho | Limite de utilização atribuído na visão geral |
| Intervalo permitido pelo plano e saldo | Plano e créditos |
| Utilização real (número de chamadas por modelo e por chave, créditos estimados a deduzir) | Utilização |
| Estado da chave (se expirou ou foi revogada) | Chaves API |