Formatos de requisição

Três formatos de requisição cobrem todo o catálogo. Uma chave ChinaAPI e uma Base URL funcionam em todos eles, então envie aquele que seu cliente já fala.

OpenAI

/v1/chat/completions

Use com SDKs da OpenAI, Cherry Studio, Cline, Open WebUI e a maioria dos clientes de ferramentas.

Claude

/v1/messages

Roteie payloads de mensagens no formato Claude mantendo a mesma chave de gateway e os mesmos controles de cota.

OpenAI

/v1/responses

Use com o Codex e outros clientes construídos sobre a Responses API. O console indica quais modelos a aceitam.

Somente modelos Gemini Requisições Gemini nativas vão para POST /v1beta/models/{model}:generateContent. Só os modelos gemini-* a oferecem, e nem todos — a entrada de cada modelo em Models lista os formatos que ele aceita. Todos os outros usam um dos três formatos acima.
Tempo limite e cobrança Você só é cobrado pela saída que chegou ao seu cliente. Se o seu cliente se desconectar ou atingir o tempo limite antes de uma resposta sem streaming ser retornada, a requisição não é cobrada. Uma requisição com streaming é cobrada pela entrada e pela saída já entregue quando o stream termina, e não é cobrada se nenhuma saída tiver sido entregue. Uma requisição que esgota seu orçamento de tempo antes de qualquer entrega termina com um erro 504 e não é cobrada. Para nos dizer quanto tempo o seu cliente espera, envie o cabeçalho X-Request-Timeout em segundos; os SDKs oficiais da OpenAI e da Anthropic já enviam o próprio tempo limite.

Conversas Responses de vários turnos referenciam uma resposta anterior por previous_response_id. Se a requisição seguinte retornar previous_response_not_found, a resposta anterior não foi perdida: espere de dez a vinte segundos e reenvie a mesma requisição, em vez de reconstruir a conversa do zero.