快速入门

API 参考

其他资源

首页 / Agent / 文档 / stats/dashboard

stats/dashboard - 数据面板 免费

数据面板接口返回结构化的统计数据,专为仪表盘和可视化图表设计。包含实时数据、趋势图表、TOP 排行等多维度信息。

✓ 免费接口:数据面板接口完全免费,不消耗任何次数或 Credits。

接口地址

POST https://api.jisuapi.com/agent/stats/dashboard

请求参数

参数名类型必填说明
periodstring统计周期:today/7d/30d,默认 today
timezonestring时区,默认 Asia/Shanghai

请求头

Header说明
AuthorizationBearer {appkey}APPKEY 认证
Content-Typeapplication/json请求体格式

响应格式

成功响应(status: 0)

{
  "status": 0,
  "msg": "ok",
  "result": {
    "overview": {
      "total_calls": 1250,
      "success_rate": 0.9584,
      "total_cost": 15.80,
      "avg_response_time": 145,
      "active_tools": 12
    },
    "realtime": {
      "calls_last_hour": 52,
      "calls_last_5min": 8,
      "current_qps": 0.027
    },
    "trend": {
      "labels": ["06-01", "06-02", "06-03"],
      "calls": [410, 438, 402],
      "success": [392, 420, 386],
      "cost": [5.20, 5.60, 5.00]
    },
    "top_tools": [
      {
        "tool_id": "shouji_query",
        "tool_name": "手机号码归属地查询",
        "calls": 580,
        "percentage": 46.4
      },
      {
        "tool_id": "weather_forecast",
        "tool_name": "天气预报",
        "calls": 420,
        "percentage": 33.6
      }
    ],
    "recent_errors": [
      {
        "time": "2026-06-03T11:45:23Z",
        "tool_name": "天气预报",
        "error": "上游超时",
        "execution_id": "exe_xxx"
      }
    ],
    "cost_breakdown": {
      "free": 580,
      "package": 420,
      "credits": 250
    }
  },
  "request_id": "req_..."
}

错误码

statusmsg说明
101APPKEY为空或不存在未提供有效的APPKEY
203period 参数无效只支持 today/7d/30d

请求示例

获取今日面板

curl -X POST "https://api.jisuapi.com/agent/stats/dashboard" \
  -H "Authorization: Bearer 你的APPKEY" \
  -H "Content-Type: application/json" \
  -d '{}'

获取最近7天面板

curl -X POST "https://api.jisuapi.com/agent/stats/dashboard" \
  -H "Authorization: Bearer 你的APPKEY" \
  -H "Content-Type: application/json" \
  -d '{
    "period": "7d"
  }'

Python 示例

import requests
import matplotlib.pyplot as plt

url = "https://api.jisuapi.com/agent/stats/dashboard"
headers = {
    "Authorization": "Bearer 你的APPKEY",
    "Content-Type": "application/json"
}
data = {"period": "7d"}

response = requests.post(url, headers=headers, json=data)
result = response.json()

if result["status"] == 0:
    dashboard = result["result"]

    # 打印概览
    print("=== 数据概览 ===")
    print(f"总调用: {dashboard['overview']['total_calls']}")
    print(f"成功率: {dashboard['overview']['success_rate']*100:.2f}%")
    print(f"总费用: ¥{dashboard['overview']['total_cost']}")
    print(f"平均响应: {dashboard['overview']['avg_response_time']}ms")

    # 绘制趋势图
    trend = dashboard['trend']
    plt.figure(figsize=(10, 5))
    plt.plot(trend['labels'], trend['calls'], marker='o', label='总调用')
    plt.plot(trend['labels'], trend['success'], marker='s', label='成功调用')
    plt.title('调用趋势')
    plt.legend()
    plt.savefig('trend.png')
    print("\n趋势图已保存到 trend.png")

    # TOP工具
    print("\n=== TOP 工具 ===")
    for tool in dashboard['top_tools'][:5]:
        print(f"{tool['tool_name']}: {tool['calls']} 次 ({tool['percentage']:.1f}%)")
else:
    print(f"查询失败: {result['msg']}")

响应字段说明

overview 总览

字段类型说明
total_callsinteger总调用次数
success_ratefloat成功率(0-1)
total_costfloat总费用(元)
avg_response_timeinteger平均响应时间(ms)
active_toolsinteger活跃工具数量

trend 趋势数据

包含三个并行数组,索引对应:

使用场景

可视化建议

图表类型推荐

前端框架示例

适配主流可视化库:

刷新策略

注意:虽然接口免费,但建议合理控制刷新频率,避免不必要的请求。

常见问题

Q: 数据多久更新一次?

A: 实时数据延迟 < 1 分钟,历史数据每 5 分钟更新一次。

Q: 可以自定义时间范围吗?

A: 目前仅支持 today/7d/30d 三个预设周期。如需自定义,请使用 stats 接口

Q: trend 数据的粒度是什么?

A: today 按小时,7d 按天,30d 按天。数据点数量自动调整以适应图表展示。