> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mixroute.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 用户日志与用量统计

> 通过 API 获取使用记录（Usage Logs）、仪表盘资讯与帐单资讯，由 /api/log/self 与 /api/log/self/stat 两个接口提供。

## 简介

MixRoute 控制台提供两个接口，用于查询当前账号下的用量与计费信息，覆盖以下需求：

* 查看 Usage Logs（使用记录）
* 查看 Dashboard 资讯（模型分析、请求次数、Token 统计等）
* 查看帐单资讯（某个 API Key 使用了哪些模型、对应输入/输出 Token、各模型用量占比等）
* 按模型维度了解实际消费情况

## 认证

所有请求需要在请求头携带两个字段：

| 请求头 | 说明 |
| - | - |
| `Authorization` | `Bearer <you-api-key>`，你的系统访问 API Key |
| `New-Api-User` | `<you-user-id>`，当前账号的用户 ID |

## 获取用户日志 GET `/api/log/self`

返回当前账号的使用日志，日志条目按时间倒序排列，可通过分页参数控制输出内容。

### 请求参数

<ParamField query="p" type="integer">
  页码，从 1 开始。
</ParamField>

<ParamField query="page_size" type="integer">
  每页返回的日志条目数。
</ParamField>

例如 `/api/log/self?p=1&page_size=20` 表示获取第一页、每页 20 条日志。

### 请求示例

```bash cURL theme={null}
curl --request GET \
  --url 'https://console.mixroute.ai/api/log/self?p=1&page_size=20' \
  --header 'authorization: Bearer <you-api-key>' \
  --header 'new-api-user: <you-user-id>'
```

### 响应示例

```json Response theme={null}
{
  "data": {
    "page": 1,
    "page_size": 20,
    "total": 2821,
    "items": [
      {
        "id": 1,
        "user_id": 81,
        "created_at": 1787215542,
        "type": 2,
        "content": "",
        "username": "<you-user-name>",
        "token_name": "<your-token-name>",
        "model_name": "deepseek-v4-flash-0731",
        "quota": 768,
        "prompt_tokens": 23144,
        "completion_tokens": 2948,
        "use_time": 38,
        "is_stream": true,
        "channel": 239,
        "channel_name": "",
        "token_id": 202,
        "group": "default",
        "ip": "",
        "request_id": "202608200845041208627278268d9d63W55TNWu",
        "other": "{\"billing_source\":\"wallet\",\"cache_ratio\":0.02,\"cache_tokens\":18432,\"completion_ratio\":2,\"frt\":1245,\"group_ratio\":1,\"model_price\":-1,\"model_ratio\":0.07,\"reasoning_effort\":\"max\",\"request_conversion\":[\"OpenAI Responses\"],\"request_path\":\"/v1/responses\",\"user_group_ratio\":-1}"
      }
    ]
  },
  "message": "",
  "success": true
}
```

### 日志字段说明

| 字段 | 类型 | 说明 |
| - | - | - |
| `data.page` | integer | 当前页码 |
| `data.page_size` | integer | 每页条目数 |
| `data.total` | integer | 日志总条数 |
| `data.items[]` | array | 日志条目列表 |
| `data.items[].id` | integer | 日志 ID |
| `data.items[].user_id` | integer | 用户 ID |
| `data.items[].created_at` | integer | 创建时间（Unix 时间戳，秒） |
| `data.items[].type` | integer | 记录类型 |
| `data.items[].content` | string | 备注或错误信息，通常为空 |
| `data.items[].username` | string | 用户名 |
| `data.items[].token_name` | string | 使用的 API Key 名称 |
| `data.items[].model_name` | string | 模型名称 |
| `data.items[].quota` | integer | 本次消费的 quota（**1 USD = 500,000 quota（5 × 10⁵）**） |
| `data.items[].prompt_tokens` | integer | 输入 token 数 |
| `data.items[].completion_tokens` | integer | 输出 token 数 |
| `data.items[].use_time` | integer | 请求耗时（秒） |
| `data.items[].is_stream` | boolean | 是否流式请求 |
| `data.items[].channel` | integer | 渠道 ID |
| `data.items[].channel_name` | string | 渠道名称，可能为空 |
| `data.items[].token_id` | integer | API Key ID |
| `data.items[].group` | string | 分组名称 |
| `data.items[].ip` | string | 请求 IP |
| `data.items[].request_id` | string | 请求 ID |
| `data.items[].other` | string | 计费元数据 JSON 字符串，见下方说明 |

`data.items[].other` 为 JSON 字符串，主要包含以下计费与请求信息：

| 字段 | 说明 |
| - | - |
| `billing_source` | 计费来源，如 `wallet` |
| `model_price` | 模型单价，未指定时为 `-1` |
| `model_ratio` | 模型倍率 |
| `cache_ratio` | 缓存倍率 |
| `cache_tokens` | 缓存 token 数 |
| `completion_ratio` | 输出倍率 |
| `group_ratio` | 分组倍率 |
| `user_group_ratio` | 用户分组倍率 |
| `reasoning_effort` | 推理强度配置 |
| `request_conversion` | 请求转换方式，如 `OpenAI Responses` |
| `request_path` | 实际请求路径，如 `/v1/responses` |
| `frt` | 首 token 响应时间（毫秒） |

## 获取用户总消费统计 GET `/api/log/self/stat`

返回当前账号的累计消费与限流状态数据，无请求参数。

### 请求示例

```bash cURL theme={null}
curl --request GET \
  --url 'https://console.mixroute.ai/api/log/self/stat' \
  --header 'authorization: Bearer <you-api-key>' \
  --header 'new-api-user: <you-user-id>'
```

### 响应示例

```json Response theme={null}
{
  "data": {
    "quota": 32892251,
    "rpm": 0,
    "tpm": 0
  },
  "message": "",
  "success": true
}
```

### 字段说明

| 字段 | 类型 | 说明 |
| - | - | - |
| `data.quota` | integer | 累计消费 quota |
| `data.rpm` | integer | 每分钟请求数限制状态 |
| `data.tpm` | integer | 每分钟 token 数限制状态 |
| `message` | string | 错误消息，成功时为空 |
| `success` | boolean | 是否请求成功 |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.