POST /v1/chat/completions
Conclusões de bate-papo compatíveis com OpenAI com streaming, ferramentas, visão e aliases de modelo.
POST /v1/chat/completions
Solicitar
curl https://api.model-gate.com/v1/chat/completions \
-H "Authorization: Bearer mg_live_..." \
-H "Content-Type: application/json" \
-d '{
"model": "ch-47",
"messages": [
{"role": "user", "content": "Explain this API in one sentence."}
],
"stream": false
}'
O model pode ser um ID canônico ou um alias habilitado. O Model Gate resolve os aliases antes do preço e envia o ID canônico upstream.
Resposta
{
"id": "chatcmpl_example",
"object": "chat.completion",
"model": "claude-opus-4.7",
"choices": [
{
"index": 0,
"message": {"role": "assistant", "content": "Model Gate provides one compatible API for multiple AI models."},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 14,
"completion_tokens": 17,
"total_tokens": 31
}
}
Solicitação de streaming
Definir "stream": true. Os eventos enviados pelo servidor upstream são transmitidos sem reescrever cargas de eventos bem-sucedidas.
Solicitação assíncrona
Para endpoints suportados, adicione "async": true com "stream": false. A resposta imediata é HTTP 202 e contém request_id e um URL de resultado Partner API.
Erros
O status, o corpo e o tipo de conteúdo do provedor não 2xx são transmitidos inalterados. Erros de validação gerados localmente usam o envelope de erro Model Gate.
| Status | Significado | Ação |
|---|---|---|
400 | Solicitação inválida | Verifique o corpo da solicitação e o ID do modelo. |
401 | Chave inválida ou congelada | Verifique ou gire a chave de API. |
429 | Taxa ou limite de simultaneidade excedido | Respeito Retry-After e tente novamente com espera. |
5xx | Erro temporário de upstream ou gateway | Tente novamente solicitações idempotentes com espera exponencial. |