跳转到内容

API 与路由

所有错误统一返回:

{ "error": "..." }

管理端与用户端通常使用:

  • x-api-key

Provider 路由还支持:

  • x-api-key
  • x-goog-api-key
  • Authorization: Bearer ...
  • Gemini 场景 query ?key=...(服务会归一化为 x-api-key
MethodPath说明
GET/管理后台首页
GET/assets/{*path}管理后台静态资源
GET/favicon.ico返回 204 No Content
MethodPath功能说明
POST/v1/messagesClaude 风格消息生成入口(统一入口)
POST/v1/messages/count_tokensClaude 风格 token 计数
POST/v1/chat/completionsOpenAI Chat Completions 入口
POST/v1/responsesOpenAI Responses 入口
GET/v1/responses响应升级检测入口(当前建议使用 HTTP POST
POST/v1/responses/input_tokensOpenAI 输入 token 计数
POST/v1/embeddingsEmbedding 入口
POST/v1/responses/compactOpenAI Compact 入口
GET/v1/models模型列表查询
GET/v1/models/{*model_id}模型详情查询
GET/v1beta/modelsGemini 风格模型列表入口
GET/v1beta/{*target}Gemini 风格 models.get 等 GET 目标入口
POST/v1beta/{*target}Gemini 风格 generateContent/countTokens/embedContent 等入口
POST/v1/{*target}Provider 自定义 v1 目标透传入口

规则:

  • 调用 unscoped 时,model 需要 provider 前缀(例如 openai/gpt-4.1)。
  • Gemini path 目标也需要可解析出 provider(例如 models/aistudio/gemini-2.5-flash:generateContent)。
  • GET /v1/responses 走升级检测逻辑(当前 WebSocket 上游未实现,建议使用 POST /v1/responses)。
MethodPath功能说明
GET/{provider}/v1/oauth发起 OAuth 授权流程
GET/{provider}/v1/oauth/callbackOAuth 回调处理
GET/{provider}/v1/usage查询上游 usage(支持渠道)
GET/{provider}/v1/realtimeRealtime 升级入口
GET/{provider}/v1/realtime/{*tail}带 tail 的 Realtime 升级入口
POST/{provider}/v1/messagesClaude 风格消息生成
POST/{provider}/v1/messages/count_tokensClaude 风格 token 计数
POST/{provider}/v1/chat/completionsOpenAI Chat Completions
POST/{provider}/v1/responsesOpenAI Responses
GET/{provider}/v1/responsesResponses 升级检测入口
POST/{provider}/v1/responses/input_tokensOpenAI 输入 token 计数
POST/{provider}/v1/embeddingsEmbedding
POST/{provider}/v1/responses/compactCompact 响应入口
GET/{provider}/v1/models模型列表
GET/{provider}/v1/models/{*model_id}模型详情
GET/{provider}/v1beta/modelsGemini 风格模型列表
GET/{provider}/v1beta/{*target}Gemini 风格 GET 目标
POST/{provider}/v1beta/{*target}Gemini 风格 POST 目标
POST/{provider}/v1/{*target}Provider v1 目标透传

当前支持 OAuth 的内置渠道:

  • codex
  • claudecode
  • geminicli
  • antigravity
Method路径示例功能说明
GET/v1beta/models/{provider}/v1beta/modelsmodels.list,列出可用 Gemini 模型
GET/v1beta/models/{model}(经 /{*target}models.get,查询单模型详情
POST/v1beta/models/{model}:countTokenscountTokens,计算输入 token 数
POST/v1beta/models/{model}:generateContentgenerateContent,非流式生成
POST/v1beta/models/{model}:streamGenerateContentstreamGenerateContent,流式生成(SSE/NDJSON)
POST/v1beta/models/{model}:embedContentembedContent,向量嵌入
MethodPath功能说明
GET/admin/global-settings读取全局配置
POST/admin/global-settings/upsert更新全局配置
POST/admin/system/self_update触发系统自更新
GET/admin/config/export-toml导出 TOML 配置
POST/admin/config/import-toml导入 TOML 配置
POST/admin/providers/query查询 provider
POST/admin/providers/upsert新增/更新 provider
POST/admin/providers/delete删除 provider
POST/admin/credentials/query查询凭证
POST/admin/credentials/upsert新增/更新凭证
POST/admin/credentials/delete删除凭证
POST/admin/credential-statuses/query查询凭证健康状态
POST/admin/credential-statuses/upsert新增/更新凭证健康状态
POST/admin/credential-statuses/delete删除凭证健康状态
POST/admin/users/query查询用户
POST/admin/users/upsert新增/更新用户
POST/admin/users/delete删除用户
POST/admin/user-keys/query查询用户密钥
POST/admin/user-keys/upsert新增/更新用户密钥
POST/admin/user-keys/delete删除用户密钥
POST/admin/requests/upstream/query查询上游请求审计
POST/admin/requests/downstream/query查询下游请求审计
POST/admin/usages/query查询 usage 明细
POST/admin/usages/summary查询 usage 汇总
MethodPath功能说明
POST/user/keys/query查询当前用户自己的 key
POST/user/keys/upsert新增/更新当前用户自己的 key
POST/user/keys/delete删除当前用户自己的 key
POST/user/usages/query查询当前用户 usage 明细
POST/user/usages/summary查询当前用户 usage 汇总

用户 key 归一化规则:

  • 存储为 u{user_id}_<raw_key>
  • 如果输入已经带此前缀,则保持不变
Terminal window
curl -sS http://127.0.0.1:8787/openai/v1/chat/completions \
-H "x-api-key: <key>" \
-H "content-type: application/json" \
-d '{
"model": "gpt-4.1",
"messages": [{"role":"user","content":"hello"}],
"stream": false
}'