资源状态事件 API

引入于极狐GitLab 13.2。

资源状态事件跟踪极狐GitLab 议题合并请求。用它们来追踪设置了哪个状态,是谁做的,以及何时发生的。

议题

列出项目议题状态事件

获取单个议题的所有状态事件的列表。

GET /projects/:id/issues/:issue_iid/resource_state_events
参数 类型 是否必需 描述
id integer/string yes 项目ID 或项目 URL 编码路径
issue_iid integer yes 议题的 IID。

请求示例:

curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/11/resource_state_events"

响应示例:

[
  {
    "id": 142,
    "user": {
      "id": 1,
      "name": "Administrator",
      "username": "root",
      "state": "active",
      "avatar_url": "https://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon",
      "web_url": "http://gitlab.example.com/root"
    },
    "created_at": "2018-08-20T13:38:20.077Z",
    "resource_type": "Issue",
    "resource_id": 11,
    "state": "opened"
  },
  {
    "id": 143,
    "user": {
      "id": 1,
      "name": "Administrator",
      "username": "root",
      "state": "active",
      "avatar_url": "https://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon",
      "web_url": "http://gitlab.example.com/root"
    },
    "created_at": "2018-08-21T14:38:20.077Z",
    "resource_type": "Issue",
    "resource_id": 11,
    "state": "closed"
  }
]

获取单个议题状态事件

返回特定项目议题的单个状态事件。

GET /projects/:id/issues/:issue_iid/resource_state_events/:resource_state_event_id

参数:

参数 类型 是否必需 描述
id integer/string yes 项目 ID 或项目 URL 编码路径
issue_iid integer yes 议题的 IID。
resource_state_event_id integer yes 状态事件的 ID。

请求示例:

curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/11/resource_state_events/143"

响应示例:

{
  "id": 143,
  "user": {
    "id": 1,
    "name": "Administrator",
    "username": "root",
    "state": "active",
    "avatar_url": "https://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon",
    "web_url": "http://gitlab.example.com/root"
  },
  "created_at": "2018-08-21T14:38:20.077Z",
  "resource_type": "Issue",
  "resource_id": 11,
  "state": "closed"
}

合并请求

列出项目合并请求状态事件

获取单个合并请求的所有状态事件的列表。

GET /projects/:id/merge_requests/:merge_request_iid/resource_state_events
参数 类型 是否必需 描述
id integer/string yes 项目 ID或项目 URL 编码路径
merge_request_iid integer yes 合并请求的 IID。

请求示例:

curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/merge_requests/11/resource_state_events"

响应示例:

[
  {
    "id": 142,
    "user": {
      "id": 1,
      "name": "Administrator",
      "username": "root",
      "state": "active",
      "avatar_url": "https://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon",
      "web_url": "http://gitlab.example.com/root"
    },
    "created_at": "2018-08-20T13:38:20.077Z",
    "resource_type": "MergeRequest",
    "resource_id": 11,
    "state": "opened"
  },
  {
    "id": 143,
    "user": {
      "id": 1,
      "name": "Administrator",
      "username": "root",
      "state": "active",
      "avatar_url": "https://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon",
      "web_url": "http://gitlab.example.com/root"
    },
    "created_at": "2018-08-21T14:38:20.077Z",
    "resource_type": "MergeRequest",
    "resource_id": 11,
    "state": "closed"
  }
]

获取单个合并请求状态事件

返回特定项目合并请求的单个状态事件。

GET /projects/:id/merge_requests/:merge_request_iid/resource_state_events/:resource_state_event_id

参数:

参数 类型 是否必需 描述
id integer/string yes 项目 ID 或项目 URL 编码路径
merge_request_iid integer yes 合并请求的 IID。
resource_state_event_id integer yes 状态事件的 ID。

请求示例:

curl --request GET --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/merge_requests/11/resource_state_events/120"

响应示例:

{
  "id": 120,
  "user": {
    "id": 1,
    "name": "Administrator",
    "username": "root",
    "state": "active",
    "avatar_url": "https://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon",
    "web_url": "http://gitlab.example.com/root"
  },
  "created_at": "2018-08-21T14:38:20.077Z",
  "resource_type": "MergeRequest",
  "resource_id": 11,
  "state": "closed"
}