跳转至

获取某个Pull Request的操作日志

GET /api/v5/repos/{owner}/{repo}/pulls/{number}/operate_logs

该接口用于查询指定仓库中某个 Pull Request 的操作日志,支持按时间倒序排序和分页浏览,返回每一条操作的详细记录,包括操作内容、操作类型、操作人及时间信息。

访问令牌支持说明

  • AtomGit 用户访问令牌(AtomGit user access tokens)

是否允许匿名访问

此接口允许匿名访问

请求参数

参数名 位置 类型 必填 说明
owner path string 是 仓库所属空间地址(组织或个人的地址 path)
repo path string 是 仓库路径(path)
number path string 是 Pull Request 编号
sort query string 否 按递减(desc)排序,默认:递减
page query integer 否 当前页码,默认为 1
per_page query integer 否 每页数量,最大为 100,默认 20

响应参数

响应为操作日志对象的数组,每个元素描述一条操作日志。

字段 类型 必返 可为空 说明
content string 是 否 操作日志内容
id integer 是 否 操作日志 ID
action string 是 否 操作标识
merge_request_id integer 是 否 合并请求 ID
created_at string 是 否 创建时间
updated_at string 是 否 更新时间
discussion_id string 是 否 讨论 ID
project string 是 否 项目路径
assignee —(未能解析) 是 是 指派人,可能为 null
proposer —(未能解析) 是 是 提议人,可能为 null
user object 是 否 操作人用户信息
action_type string 是 否 操作类型

user 对象

字段 类型 必返 可为空 说明
user.id string 是 否 用户 ID
user.name string 是 否 用户名称
user.login string 是 否 登录名
user.iam_id string 是 否 IAM 用户 ID
user.nick_name string 是 否 昵称
user.state string 是 否 账号状态
user.avatar_url string 是 否 头像地址
user.avatar_path —(未能解析) 是 是 头像路径,可能为 null
user.email string 是 否 邮箱
user.name_cn string 是 否 中文名称
user.web_url string 是 否 个人主页地址
user.tenant_name —(未能解析) 是 是 租户名称,可能为 null
user.is_member —(未能解析) 是 是 是否成员,可能为 null

失败响应

以下为接口可能返回的失败示例。错误字段名与消息内容以后端实际返回为准。

400 参数错误

{
  "error": "invalid_request",
  "message": "参数 number 不能为空"
}

401 未认证

{
  "error": "unauthorized",
  "message": "缺少或无效的访问令牌"
}

404 资源不存在

{
  "error": "not_found",
  "message": "Pull Request 不存在"
}

HTTP 响应状态码

状态码 说明
200 成功(OK)
304 未修改(Not modified)
401 需要认证(Requires authentication)
403 禁止访问(Forbidden)
404 资源不存在(Not found)
429 请求过于频繁(Too many requests)
500 服务器内部错误(Internal server error)

请求示例

参数说明

<owner> 替换为仓库所属空间地址 path(企业、组织或个人的地址 path);<repo> 替换为仓库路径 path;<number> 替换为 Pull Request 编号。本接口允许匿名访问,可不携带令牌;如需认证,也可在请求中附带你的 AtomGit 用户访问令牌(access_token)。

cURL

curl -X GET 'https://api.atomgit.com/api/v5/repos/<owner>/<repo>/pulls/<number>/operate_logs?sort=desc&page=1&per_page=20' \
  -H 'Accept: application/json'

响应示例

状态码: 200

[
  {
    "content": "Create mr issue link: **第boudoirripinings-24个issue** #79",
    "id": 274531,
    "action": "add_mr_issue_link",
    "merge_request_id": 70067,
    "created_at": "2024-04-23T11:32:08.522+08:00",
    "updated_at": "2024-04-23T11:32:08.522+08:00",
    "discussion_id": "18a5ab21f57cda175b8eabc2ec829a9e04d4d458",
    "project": "One/One",
    "assignee": null,
    "proposer": null,
    "user": {
      "id": "65f94ab6f21fa3084fc04823",
      "name": "csdntest13",
      "login": "csdntest13",
      "iam_id": "d8b3e018b2364546b946886a669d50fc",
      "nick_name": "csdntest13_gitcode",
      "state": "active",
      "avatar_url": "https://api.atomgit.com/avatar.png",
      "avatar_path": null,
      "email": "csdntest13@noreply.atomgit.com",
      "name_cn": "csdntest13",
      "web_url": "https://api.atomgit.com/csdntest13",
      "tenant_name": null,
      "is_member": null
    },
    "action_type": "add_mr_issue_link"
  }
]

错误码

错误码 说明
401 未认证或凭证无效(缺少/无效的访问凭证)
400 参数错误或请求无法解析
404 请求路径不存在
405 请求方法不支持
429 请求过于频繁,触发限流
500 系统内部错误

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 gitcode-dev/atomgit-api-doc