Usage · 用量查询

怎么查 9Coding 的用量与余额

「还剩多少」「刚才那次花了多少」「这个月一共用了多少」——三个问题,三个地方。网页端一眼能看的先看网页端,要接进自己监控的用 API。下面每一项都注明在哪查、能查到什么。

速查:你想知道什么

你想知道去哪查能看到
还剩多少钱控制台总览账户余额(永不过期)
钱是怎么进来的钱包页充值与入账记录
刚才那次花了多少日志页逐次调用 + tokens 明细 + 单价
为什么这次特别贵日志页展开输入/输出/缓存 tokens 分别多少
接进自己的监控billing API程序化读取
哪个 Key 在用Key 管理页Key 列表与状态

网页端

账户余额 —— 控制台总览#

在哪
登录后进控制台,首页就是总览。
看什么
「账户余额」卡片显示当前可用余额,标注为永不过期。充值的和赠送的进同一个余额,调用时按实际用量扣减。
注意
余额是实时扣减的,但一次调用从发出到入账有极短延迟。刚跑完一个大任务就去看余额,可能还差最后一两笔没结算——隔几秒刷新即可。

充值与入账记录 —— 钱包页#

在哪
控制台左侧「钱包」。
看什么
当前余额、充值入口、每笔充值的到账明细(本金与赠送分别列出)、兑换码兑换记录。
用途
对账用。「我充了多少、实际到账多少」在这里一目了然;余额对不上时,先在这里确认入账,再去日志页看支出。

每次调用花了多少 —— 日志页#

在哪
控制台左侧「日志」。
看什么

按调用逐条记录。展开任意一条能看到这次调用的明细:

  • 输入 tokens、输出 tokens、缓存 tokens 各是多少
  • 该模型的输入 / 输出 / 缓存单价(按每 100 万 tokens 计)
  • 这次调用扣掉的额度
为什么重要

「为什么这次特别贵」几乎总能在这里找到答案。最常见的两种情况:输入 tokens 远大于预期(把整个大文件或长历史一起发出去了),或者输出很长(让它写了大段代码)。

缓存 tokens 单独计价,长会话里它的占比往往比想象中大——如果你的成本主要来自缓存段,说明会话历史该清理了。

哪把 Key 在用 —— Key 管理页#

在哪
控制台左侧「API Key」。
看什么
已创建的 Key 列表与状态。一把 Key 即可调用全部模型,不分档。
建议
不同用途(本地开发 / CI / 线上服务)分开建 Key。出问题时可以单独停掉一把而不影响其它,日志也更容易归因。

用 API 查

要接进自己的监控面板或定时对账脚本,用 billing 端点。9Coding 提供 OpenAI 风格的两个接口:

terminal
# 用量
curl -s https://api.9coding.com/v1/dashboard/billing/usage \
  -H "Authorization: Bearer $YOUR_KEY"

# 订阅 / 额度
curl -s https://api.9coding.com/v1/dashboard/billing/subscription \
  -H "Authorization: Bearer $YOUR_KEY"
响应字段以你的实际返回为准。不同网关对这两个端点的字段命名不完全一致,写解析代码之前先跑一次把结构打出来,比照着任何文档猜都可靠。这也是对接任何第三方 API 的通用做法。

顺带一个实用技巧:怎么确认某个端点存不存在

找接口时经常要试路径。不必拿真实 Key 去撞——用一把无效 Key 就能分辨,因为两种失败的响应完全不同:

返回含义
401 + Invalid token路由存在,只是鉴权没过 → 换成有效 Key 就能用
404 + Invalid URL (GET /xxx)网关上没有这个路由 → 路径写错了,别再试

换句话说:401 是好消息,说明你找对了地方。这个方法不暴露真实 Key,也不会产生任何费用。

用量对不上怎么办

  1. 先确认这笔调用有没有入账——去日志页找那个时间点。日志里没有这条记录,说明请求根本没到服务端,那是接入问题不是计费问题,走 连接错误排查。
  2. 日志有记录但金额不对——展开看 tokens 明细。多数情况是输入 tokens 比预想的大得多。
  3. 余额少得比日志快——检查是不是有多个客户端共用同一把 Key(本地、CI、线上服务同时在跑)。分 Key 之后就能在日志里区分开。
  4. 还是对不上——把日志里那条记录的时间、模型名和完整错误文本(如有)提交给我们,错误响应里的 request id 能直接定位到那一次调用。

相关