Skip to content

审计日志查询

本页介绍如何通过 API 查询账号级审计日志,支持按时间范围和操作人筛选,适用于排障分析和操作审计取证。

接口说明

GET /public_api/v1/audit_logs

查询当前 API Key 所属账号的审计日志。

权限要求: API Key 需具备 Audit_Log_Query 权限。

限流: 每个 API Key 每小时最多 60 次请求。

查询参数

参数类型必填默认值说明
auditTypeString按操作类型精确匹配,例如 PLATFORM_API_KEY_CREATED
operatorString按操作人筛选。可传入 system(系统操作)、主账号邮箱、子用户邮箱或 16 位字母数字 appKey。
startTimeString查询起始时间,格式 YYYY-MM-DD HH:MM:SS。不允许早于当前 UTC 日期往前 90 天的 0 点。
endTimeString查询结束时间,格式 YYYY-MM-DD HH:MM:SS。不得晚于当前时间。
_pageInteger1页码,最小值为 1。
_limitInteger20每页条数,最小值为 1。
_sortStringauditTime排序字段。
_orderStringdesc排序方向,可选值:ascdesc

查询时间范围限制

  • 单次查询时间窗口不得超过 90 天。
  • startTime 不允许早于"当前 UTC 日期往前 90 天的 0 点",否则返回 400

请求示例

使用 API Key 作为 Basic Auth 的用户名,使用 API Secret 作为密码。

bash
curl -u key:secret -X GET "{api}/audit_logs?startTime=2026-04-15%2016:00:00&endTime=2026-04-22%2016:00:00&operator=system&_page=1&_limit=20"

响应示例

json
{
  "items": [
    {
      "auditTime": "2026-04-30 10:30:00",
      "auditType": "PLATFORM_API_KEY_CREATED",
      "ip": "203.0.113.8",
      "description": "Created Platform API Key: xxx.",
      "userType": "api",
      "appKey": "app_k_xxx",
      "subuserID": null,
      "userID": "user_xxx",
      "operator": "app_k_xxx"
    }
  ],
  "meta": {
    "page": 1,
    "limit": 20,
    "count": 37
  }
}

响应字段说明

字段类型说明
auditTimeString操作时间,格式 YYYY-MM-DD HH:MM:SS
auditTypeString操作类型。
ipString操作来源 IP。
descriptionString操作描述。
userTypeString操作人类型,枚举值:systemuser(主账号)、subuser(子用户)、api(API Key)。
appKeyString操作所使用的 API Key,仅 userType=api 时有值。
subuserIDString子用户 ID,仅 userType=subuser 时有值,其余场景为 null
userIDString账号 ID。
operatorString操作人展示值:主账号邮箱、子用户邮箱、system 或 appKey。

错误响应

HTTP 状态码说明
400参数校验失败,例如时间格式非法或超出 90 天限制。
401未认证,API Key 无效或未提供。
403无权限,API Key 缺少 Audit_Log_Query 权限。
429请求超出频率限制(每 API Key 每小时 60 次)。