リソース状態イベントAPI
GitLab 13.2 で導入されました。
リソースステートイベントはGitLab15.4からGitLabイシュー・マージリクエスト・エピックに何が起こるかを追跡します。
どの状態が設定されたか、誰が設定したか、いつ設定されたかを追跡するために使ってください。
イシュー
プロジェクトのイシュー状態イベントをリストします。
1つのイシューに関するすべての状態イベントのリストを取得します。
GET /projects/:id/issues/:issue_iid/resource_state_events
属性 | 種類 | 必須 | 説明 |
---|---|---|---|
id | 整数/文字列 | yes | プロジェクトのIDまたはURLエンコードされたパス |
issue_iid | 整数。 | 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 | 整数/文字列 | yes | プロジェクトのIDまたはURLエンコードされたパス |
issue_iid | 整数。 | yes | イシューのIID |
resource_state_event_id | 整数。 | 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 | 整数/文字列 | yes | プロジェクトのIDまたはURLエンコードされたパス |
merge_request_iid | 整数。 | 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 | 整数/文字列 | yes | プロジェクトのIDまたはURLエンコードされたパス |
merge_request_iid | 整数。 | yes | マージリクエストの IID |
resource_state_event_id | 整数。 | 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"
}
エピック
GitLab 15.4で導入されました。
グループエピックステートイベントの一覧
単一のエピックに関するすべての状態イベントのリストを返します。
GET /groups/:id/epics/:epic_id/resource_state_events
属性 | 種類 | 必須 | 説明 |
---|---|---|---|
id | 整数/文字列 | yes | グループのIDまたはURLエンコードされたパス。 |
epic_id | 整数。 | yes | エピックのID。 |
リクエストの例
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/5/epics/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": "Epic",
"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": "Epic",
"resource_id": 11,
"state": "closed"
}
]
単一のエピック状態イベントの取得
特定のグループエピックに関する単一の状態イベントを返します。
GET /groups/:id/epics/:epic_id/resource_state_events/:resource_state_event_id
パラメータを指定します:
属性 | 種類 | 必須 | 説明 |
---|---|---|---|
id | 整数/文字列 | yes | グループのIDまたはURLエンコードされたパス。 |
epic_id | 整数。 | yes | エピックのID。 |
resource_state_event_id | 整数。 | yes | 状態イベントのID。 |
リクエストの例
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/5/epics/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": "Epic",
"resource_id": 11,
"state": "closed"
}