统一网关使用标准 HTTP 请求头完成鉴权、声明内容类型和关联请求。支持 Session 的文本与 Gemini 生成接口可通过 X-Session-Id 启用软粘性路由。
https://api.tokensapi.cn/v1POST /chat/completions请求地址固定,请根据当前页面的参数说明替换模型 ID 和业务输入。
${base_url}/chat/completions统一网关使用标准 HTTP Header 完成鉴权、声明内容类型,并可选启用粘性路由。
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
Authorization | string | 是 | — | 在 Bearer 后拼接当前工作空间的 API Key;完整密钥只保存在服务端环境变量或密钥管理系统中。 可选值 / 约束:Bearer <API_KEY>。 |
Content-Type | string | 是 | application/json | JSON 请求体使用 application/json。 |
X-Session-Id | string | 否 | — | 可选 Session ID;仅 Chat Completions、Responses、Claude Messages、Gemini Generate Content 与 Stream Generate Content 支持。 可选值 / 约束:仅在顶层 session_id 和 extra_body.session_id 均未提供时使用,最长 256 个字符。 |
X-Client-Request-Id | string | 否 | — | 调用方可提供的请求 ID;网关处理请求后会在响应中原样回显。 |
以下字段属于 HTTP 响应 Header,不是 JSON 或 SSE body 字段。若请求未进入网关处理流程,网络层失败时不保证返回响应头。
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
X-Client-Request-Id | string | 否 | — | 提供时响应原样回显;未提供时不会自动生成。 |
X-Upstream-Request-Id | string | 否 | — | 响应通常包含此字段,用于网关请求追踪,并非供应商原始 request ID。 |
同一模型下,携带相同 Session ID 的连续请求会优先复用先前成功的服务商通道,从而改善多轮对话的一致性并提高上游缓存复用概率。它属于软粘性:只在当前请求仍允许且可用的通道中生效。
为每个独立对话或 Agent 任务生成稳定且唯一的 Session ID;同一会话的后续请求和重试继续复用该值,新会话则生成新值。
未传任何 Session ID 时请求继续使用平台默认路由。顶层 session_id 覆盖 extra_body.session_id,后者再覆盖 X-Session-Id。Session ID 只用于路由关联,不用于鉴权、用户身份识别或跨工作空间共享。
示例使用占位符,请替换为模型详情页中当前可用的 model ID,并将 API Key 保存在服务端环境变量中。
export TOKEN_MARKET_API_KEY="<API_KEY>"
export TOKEN_MARKET_SESSION_ID="conversation-550e8400-e29b-41d4-a716-446655440000"
curl https://api.tokensapi.cn/v1/chat/completions \
-H "Authorization: Bearer $TOKEN_MARKET_API_KEY" \
-H "Content-Type: application/json" \
-H "X-Session-Id: $TOKEN_MARKET_SESSION_ID" \
-d '{"model":"<MODEL_ID>","messages":[{"role":"user","content":"Explain sticky routing."}]}'
curl https://api.tokensapi.cn/v1/chat/completions \
-H "Authorization: Bearer $TOKEN_MARKET_API_KEY" \
-H "Content-Type: application/json" \
-H "X-Session-Id: $TOKEN_MARKET_SESSION_ID" \
-d '{"model":"<MODEL_ID>","messages":[{"role":"user","content":"Explain sticky routing."},{"role":"assistant","content":"..."},{"role":"user","content":"Summarize it."}]}'