JuCode 文档
ApiChat

创建对话补全

与 OpenAI Chat Completions API 完全兼容。除 `model` 外的所有字段原样转发给上游。 ### 网关特有行为 **流式下强制统计用量。** 当 `stream: true` 时,网关会自动注入 `stream_options.include_usage = true`。因此流式响应**总是**以一个包含 `usage` 的 chunk 结尾,即使你没有主动请求。这样做是为了保证计费准确——你不需要、也 无法关闭它。 **`image_generation` 工具可能被剥离。** 若路由到的上游不支持图像生成工具, 网关会从 `tools[]` 中移除 `type: "image_generation"` 的条目。如果移除后 `tools` 为空,`tools` 和 `tool_choice` 会一并删除。 ### 会话粘性 传入 `conversation_id` 请求头可以让同一会话的多次请求尽量落到同一个上游账号, 提升 prompt cache 命中率。这是 JuCode 扩展,非 OpenAI 标准。

POST
/v1/chat/completions

与 OpenAI Chat Completions API 完全兼容。除 model 外的所有字段原样转发给上游。

网关特有行为

流式下强制统计用量。stream: true 时,网关会自动注入 stream_options.include_usage = true。因此流式响应总是以一个包含 usage 的 chunk 结尾,即使你没有主动请求。这样做是为了保证计费准确——你不需要、也 无法关闭它。

image_generation 工具可能被剥离。 若路由到的上游不支持图像生成工具, 网关会从 tools[] 中移除 type: "image_generation" 的条目。如果移除后 tools 为空,toolstool_choice 会一并删除。

会话粘性

传入 conversation_id 请求头可以让同一会话的多次请求尽量落到同一个上游账号, 提升 prompt cache 命中率。这是 JuCode 扩展,非 OpenAI 标准。

Authorization

AuthorizationBearer <token>

Authorization: Bearer sk-juc-...

前缀必须是恰好 Bearer (首字母大写 + 单个空格)。bearerBEARER 或用制表符分隔都会被判为无效。

除 API Key 外,也接受 OAuth 设备访问令牌(仅限 oauth_access 类型的 JWT; 普通网页会话令牌会被拒绝)。

In: header

Header Parameters

conversation_id?string

会话粘性提示(JuCode 扩展,非 OpenAI 标准)。同一会话的多次请求带上相同值, 网关会尽量把它们路由到同一个上游账号,提升 prompt cache 命中率。

浏览器端不可用:CORS 允许的请求头列表未包含此头。

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

model 外的字段原样转发给上游。下面只列出网关会读取或改写的字段—— OpenAI 支持的其他参数(temperaturetop_presponse_formatseed 等) 都可以直接使用。

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/chat/completions" \  -H "Content-Type: application/json" \  -d '{    "model": "gpt-5.4",    "messages": [      {        "role": "user",        "content": "用一句话解释什么是向量数据库"      }    ]  }'
{}