Skip to content

使用日志查询

通过 API Key 直接查询该 Token 的使用日志,无需登录,方便进行用量分析、成本核算和对账。

接口详情

http
GET /api/log/token

请求参数

参数类型必填说明
keystringAPI Key,如 sk-xxx
pint页码,从 1 开始
page_sizeint每页条数,最大 100
start_timestampint64开始时间(Unix 秒)
end_timestampint64结束时间(Unix 秒)
typeint日志类型:0 全部、1 充值、2 消费、5 错误、6 退款
model_namestring模型名称(模糊匹配)

请求示例

bash
# 查询最近 7 天的消费日志,第 1 页,每页 20 条
curl "https://api.ezmodel.cloud/api/log/token?\
key=sk-your-api-key&\
p=1&\
page_size=20&\
type=2&\
start_timestamp=1710000000&\
end_timestamp=1710604800"
python
import requests
import time

base_url = "https://api.ezmodel.cloud/"
now = int(time.time())
week_ago = now - 7 * 86400

resp = requests.get(f"{base_url}/api/log/token", params={
    "key": "sk-your-api-key",
    "p": 1,
    "page_size": 20,
    "type": 2,  # 消费日志
    "start_timestamp": week_ago,
    "end_timestamp": now,
})
data = resp.json()
print(f"总计 {data['data']['total']} 条日志")
for log in data["data"]["items"]:
    print(f"  {log['model_name']}: {log['prompt_tokens']}+{log['completion_tokens']} tokens")

响应格式

json
{
  "success": true,
  "message": "",
  "data": {
    "page": 1,
    "page_size": 20,
    "total": 156,
    "items": [
      {
        "id": 42,
        "created_at": 1710500000,
        "type": 2,
        "username": "your_username",
        "token_name": "my-token",
        "model_name": "gpt-4o",
        "quota": 5000,
        "prompt_tokens": 1200,
        "completion_tokens": 800,
        "use_time": 3,
        "is_stream": true,
        "group": "default",
        "other": "{\"model_ratio\":1.5,\"request_path\":\"/v1/chat/completions\"}"
      }
    ]
  }
}

响应字段说明

字段类型说明
idint日志 ID
created_atint64创建时间(Unix 秒)
typeint日志类型
token_namestringToken 名称
model_namestring模型名称
quotaint消耗额度
prompt_tokensint输入 Token 数
completion_tokensint输出 Token 数
use_timeint请求耗时(秒)
is_streambool是否流式请求
groupstring用户分组
otherstring扩展信息(JSON 字符串,含倍率、缓存等计费详情)

错误处理

错误信息原因解决方案
key is required未提供 API Keykey 参数中传入完整的 API Key
record not foundAPI Key 无效或不存在检查 Key 是否正确
start_timestamp and end_timestamp are required未指定时间范围添加 start_timestampend_timestamp 参数
p and page_size are required未指定分页参数添加 ppage_size 参数

最佳实践

性能建议

  1. 合理设置时间范围:缩小时间范围可显著提升查询速度
  2. 合理设置分页大小:建议 page_size 设为 20-50,最大不超过 100
  3. 使用模型过滤:如果只关心特定模型的用量,通过 model_name 缩小范围
  4. 遍历全部数据:逐页递增 p 直到返回的 items 为空或 page * page_size >= total

下一步

企业合作联系:service@ezmodel.cloud