APIPace 文档 API 参考

常见问题

按「连不上 / 账号和充值 / 安全 / 能做什么 / 花了多少」分五组。找不到答案就带上 X-Request-Id 和 X-Route-Id 找我们。

连接

Base URL 到底填哪个?带不带 /v1?

看客户端自己会不会补路径。粗略的规律是「OpenAI 那一栏带 /v1,Anthropic 那一栏不带」,但每个客户端都有自己的脾气,各篇接入指南里写了确切写法:

客户端 填什么
OpenAI SDK、Cline、Dify、Cursor https://api.apipace.com/v1
Anthropic SDK、Claude Code、Cline 的 Anthropic 那一路、Dify 的 Anthropic 那一路 https://api.apipace.com
Cherry Studio https://api.apipace.com(它自己补,带不带都归一到同一个地址)
ChatBox 主机 https://api.apipace.com/v1 + 路径 /chat/completions
沉浸式翻译 完整地址 https://api.apipace.com/v1/chat/completions

填错的症状:多了 /v1 会 404 page not found;少了 /v1 会 405 method not allowed。两个都不是鉴权问题,别去翻 key。Cherry Studio 和 ChatBox 的输入框下面都有一行实时预览,以那一行显示的最终 URL 为准比背规则可靠。

哪些接不了? Codex CLI(只认 Responses API)和 Gemini CLI(要流式原生接口和 x-goog-api-key),原因和替代方案见 接入 Codex CLI、接入 Gemini CLI。

为什么填了别名还是 MODEL_NOT_FOUND?

三种可能:拼错了;填的是厂商原始模型名而不是别名;这把 key 设了模型白名单,这个别名不在里面。GET /v1/models 返回的就是这把 key 真正能用的全集,以它为准。

gemini-* 为什么在对话接口上报 400?

Gemini 系列只走原生 /v1beta 接口,见 Gemini 原生接口。有些客户端会把 /v1/models 里的别名全部拉进下拉框,选到 Gemini 就会报错——手动只填对话别名即可。

能用中转站的「试一下」在页面里直接发请求吗?

可以,API 参考右侧填 key 就能发一次真实请求,会真的扣钱(几厘)。

连接超时 / 很慢?

单次请求总预算 300 秒、首 token 60 秒。长输出请开流式,stream: true 之后首 token 通常一两秒就到。如果是整体慢而不是某个模型慢,curl https://api.apipace.com/status 看一眼最近 15 分钟各别名的错误率和 p50 延迟——免鉴权,故障时也能读。

同一把 key 能在几台机器上同时用吗?

能。key 上可以设 IP 白名单,不设就不限来源。要分开统计的话在控制台按项目 / 应用各建一把,用量和花费会分开归集。

账号与充值

怎么注册?

去 https://api.apipace.com/register:填邮箱 → 收 6 位验证码 → 设密码(至少 8 位)→ 勾选同意《服务条款》和《隐私政策》。提交后直接登录,租户和默认项目 / 应用都会自动建好。

不勾同意会被挡下:

{"error":{"code":"INVALID_REQUEST","message":"请先阅读并同意《服务条款》和《隐私政策》","request_id":"req_…"}}

一定要邀请码吗?

不用。有邀请码可以在注册页「有邀请码?点这里填写」里填上(填了就会被核销),没有也能注册。

收不到验证码怎么办?

按顺序排查:

  1. 先看垃圾邮件,验证码信最常掉在那儿。

  2. **60 秒之内不能重发。**太快点会拿到 429,响应头 Retry-After: 60:

    {"error":{"code":"RATE_LIMITED","message":"验证码刚刚发过,请稍后再试","request_id":"req_…"}}
    
  3. **验证码 10 分钟过期、只能用一次、最多试 5 次。**过期或试错太多次就重新发一次,别拿旧码反复试。

  4. 确认邮箱地址没打错——重置密码时,对一个没有注册过的邮箱同样返回成功但不会发信(这是故意的,不让人拿它试探哪些邮箱注册过)。

验证码发不出去了 / 提示次数用完

有三层配额:同一个邮箱每小时 5 次、同一个网络每小时 20 次,整个登录注册接口每个来源每分钟 60 次请求。踩到哪一层,message 会说是邮箱还是网络,Retry-After 会告诉你等多久。等就是了——刷新重试只会把配额耗得更快。

忘记密码?

https://api.apipace.com/reset-password,邮箱 + 验证码 + 新密码。注意:重置会作废这个账号已有的全部登录,其它设备都要重新登录。这是有意的——会去重置密码的人通常是怀疑账号被别人登着,留着那个人的会话就白重置了。

登录提示「尝试次数过多」

同一个邮箱或同一个来源 15 分钟内失败 10 次就会被锁一会儿,返回 429 并带 Retry-After。等它过去,或者直接去重置密码。

怎么充值?

目前用兑换码:拿到码后在控制台「钱包」页兑换,立刻到账,流水里留一条 TOPUP。

余额能退吗?

充值余额只用于本平台调用,不支持提现。

key 丢了怎么办?

key 创建时只显示一次,丢了就在控制台把它禁用或轮换,再建一把。轮换有一小时的宽限期,老 key 在这段时间里还能用,方便你分批换配置。

一个账户能建几把 key?

不限。多把 key 共用同一个钱包——GET /v1/user/statement 的 keys[] 会把消费分摊到每把 key 上,但余额和充值只算一次,不会重复累计。

安全

你们会存我的对话内容吗?

请求与响应正文默认不留存。落库的是元数据:请求号、别名、token 数、扣费、延迟、状态码。

key 在你们那边怎么存的?

只存哈希,明文只在创建时返回给你那一次。

能限制一把 key 只能用某些模型 / 只能从公司 IP 调用吗?

能,控制台的 API Key 页可以设模型白名单和 IP 白名单,越界返回 PERMISSION_DENIED(403)。白名单之外的别名在 /v1/models 里也不会出现。

预算能卡住吗?

能,账户有日 / 月预算,超了返回 BUDGET_EXCEEDED(429)。

功能

有哪些模型?

Claude 全系、GPT-5.4 与 5.4-mini、Gemini Pro 系(只走原生接口)、Kimi、MiniMax、DeepSeek、Qwen、GLM,外加一个图片模型。别名和单价以 GET /v1/pricing 实时返回为准,别照着这段话记——上下架和调价都不会提前通知这一页。

curl https://api.apipace.com/v1/pricing        # 免鉴权,全部在售别名 + 单价
curl "https://api.apipace.com/v1/models?include=all" -H "x-api-key: ak-…"   # 这把 key 能用的

支持流式吗?

两个协议都支持。流的最后会多一帧计费信息,标准 SDK 会忽略它。见计费与账单。

支持工具调用 / function calling 吗?

支持,原样透传。Anthropic 协议的一次真实返回:

{"stop_reason":"tool_use",
 "content":[{"type":"tool_use","id":"toolu_01KdKPaTBcuPUDRkz62H3VaU","name":"get_weather","input":{"city":"杭州"}}]}

支持图片输入(视觉)吗?

支持,按各协议的原生形状传即可。视频要用 Gemini 原生接口。

支持 embeddings 吗?

暂不支持,/v1/embeddings 会返回 501。

支持 OpenAI Responses API 吗?

暂不支持,只有 Chat Completions。所以像 Codex CLI 这种可以选协议的客户端,要把协议选成 chat。

能生成图片吗?

能,走异步任务接口,见图片生成。

有 Webhook 吗?

暂无,图片任务请轮询。

有 SLA 吗?

目前没有正式的可用性承诺。

花费与账单

响应里为什么没有价格?

有意为之:扣费以账本为准,不以响应体为准。响应里给的是 token(billable_units),钱拿 request_id 去 GET /v1/requests/{id} 查。

为什么 cache_read_input_tokens 永远是 0?

对话类别名冷热同价,缓存不单独计价,全部输入 token 都折进一个输入价。好处是价格可预测;代价是缓存重的负载省不到缓存的钱。图片任务是唯一按缓存分桶计价的地方。

Claude Code 的 /cost 和你们的账单对不上?

对不上是正常的。Claude Code 用它自己内置的价目表估算,不知道这里的挂牌价。以 GET /v1/user/statement 或控制台「用量」页为准。

扣费怎么精确到分?

不精确到分——精确到微元(1 元 = 1,000,000 微元),整数结算,永不四舍五入到分。一次 16 输入 + 9 输出的 claude-sonnet-4.6 请求扣 1,365 微元 = ¥0.001365。

失败的请求扣钱吗?

402 / 403 / 404 / 429 不扣(请求根本没发出去),502 / 504 不扣。只有真正产生了用量才扣。

为什么余额突然少了一块,过一会儿又回来了?

那是预占(held)。请求开始时按输入估算和 max_tokens 冻结一笔,结束后按实际用量结算、释放剩下的。GET /v1/user/balance 的 available_micro_cny 才是你真正能用的数。

怎么按项目 / 按应用分账?

在控制台建项目和应用,各自发 key。用量页可以按项目 / 应用 / 别名分组看,GET /v1/user/statement 也会按 key 和别名拆开。

价目在哪看?

https://api.apipace.com/pricing。机器读的那份是 GET /v1/pricing,免鉴权、缓存 60 秒,见计费与账单。