跳转到主要内容

接口概述

余额查询 API 用于读取当前账户的剩余额度、已使用额度、请求次数和用户分组。它适合接入后台监控、余额告警、账务排查脚本和内部运营面板。
此接口使用系统令牌 AccessToken 认证,不是普通模型调用用的 API Key。AccessToken 权限更高,生产环境请放在服务端密钥管理系统或环境变量中,不要下发到浏览器或客户端 App。

获取 Authorization

1

进入账户设置

登录 老张API 控制台,打开账户设置页面。
2

打开系统令牌

在账户设置中选择「系统令牌」,按页面提示进行密码验证。
3

保存 AccessToken

令牌生成后请立即复制到安全位置。生成新令牌后,旧令牌可能立即失效。
不要在代码仓库、前端页面、日志、截图或工单里暴露完整 AccessToken。向技术支持排查时,只保留 Header 名称、请求时间、HTTP 状态码和已打码的令牌片段即可。

接口信息

项目说明
接口 URLhttps://api.laozhang.ai/api/user/self
请求方法GET
认证方式Authorization Header
请求参数
响应格式JSON;使用 cURL 时建议加 --compressed

请求说明

请求 Headers

Header 名称必填说明
Authorization系统令牌 AccessToken,直接填写令牌字符串
Accept建议设置为 application/json
Content-Type建议设置为 application/json

请求参数

此接口不需要 Query 参数,也不需要请求体。生产代码中不要把余额阈值、告警渠道或业务标签拼到接口 URL 上;这些应保存在你的监控系统配置里。

响应说明

成功响应示例

{
  "success": true,
  "message": null,
  "data": {
    "id": 19489,
    "username": "demo_user",
    "display_name": "demo_user",
    "role": 1,
    "status": 1,
    "email": "",
    "quota": 24997909,
    "used_quota": 10027091,
    "request_count": 339,
    "group": "svip",
    "ModelFixedPrice": []
  }
}

核心响应字段

字段名类型说明
successBoolean请求是否成功
messageString / null错误信息;成功时通常为 null
data.usernameString用户名
data.display_nameString显示名称
data.quotaInteger当前剩余额度,适合做告警阈值
data.used_quotaInteger已使用额度
data.request_countInteger累计请求次数
data.groupString当前账户分组
data.ModelFixedPriceArray模型价格列表;只查余额时可以忽略
data.access_tokenString敏感字段;如果返回,请不要写入普通日志
接口可能随账户状态返回更多字段。开发时请只依赖业务需要的核心字段,并允许响应中出现未知字段,避免因为新增字段导致解析失败。

额度与金额计算

接口返回的 quota 单位是「额度」,不是直接的美元金额。当前余额展示按以下规则换算:
计算项公式示例
剩余美元余额quota ÷ 50 万24997909 ÷ 50 万 = 49.995818,约等于 50.00 USD
已使用美元额度used_quota ÷ 50 万10027091 ÷ 50 万 = 20.054182,约等于 20.05 USD
历史总额度(quota + used_quota) ÷ 50 万示例约等于 70.05 USD
也就是说,50 万额度约等于 1 USD。如果接口返回 quota: 24997909,用户当前可用余额约为 50.00 USD
余额展示可以按上述公式计算;模型实际扣费仍要以当前模型价格、账户分组、调用日志和控制台展示为准。生产告警建议同时保存原始 quota 和换算后的美元金额,避免后续排查时丢失精度。

代码示例

export LAOZHANG_ACCESS_TOKEN='YOUR_ACCESS_TOKEN'

curl --compressed -s 'https://api.laozhang.ai/api/user/self' \
  -H 'Accept: application/json' \
  -H "Authorization: ${LAOZHANG_ACCESS_TOKEN}" \
  -H 'Content-Type: application/json'
--compressed 会让 cURL 自动处理 gzip 响应。如果少了这个选项,终端可能显示乱码,jq 也可能报 Invalid numeric literal

错误响应

HTTP 401 - 认证失败

{
  "success": false,
  "message": "Unauthorized"
}
常见原因是 Authorization 为空、令牌复制不完整、令牌已失效,或误用了普通 API Key。

HTTP 403 - 权限不足

{
  "success": false,
  "message": "Forbidden"
}
常见原因是当前令牌无权访问账户信息接口,或账户状态需要人工确认。

响应乱码或 jq 报错

如果 cURL 返回乱码,或 jqInvalid numeric literal,通常是 gzip 响应没有被解压。请确认命令包含 --compressed

监控接入建议

  • 用环境变量或密钥管理服务保存 LAOZHANG_ACCESS_TOKEN
  • 设置合理超时时间,例如 10 秒
  • 避免高频轮询;一般余额监控不需要秒级请求
  • 告警里记录 quota、换算后的 remaining_usdused_quotarequest_count、请求时间和 HTTP 状态码
  • 不要在日志中记录完整 Authorizationaccess_token 或账户敏感字段

相关文档