리소스 상태 이벤트 API

Tier: Free, Premium, Ultimate

Offering: GitLab.com, Self-managed, GitLab Dedicated

리소스 상태 이벤트는 GitLab 이슈

병합 요청 및 GitLab 15.4부터 시작하는 서사시에서 발생하는 사건을 추적합니다.

어떤 상태가 설정되었는지, 누가 했는지, 언제 발생했는지 추적하는 데 사용하세요.

리소스 상태 이벤트 API는 리소스의 초기 상태(“생성” 또는 “열림”)를 추적하지 않습니다.

닫히지 않았거나 다시 열리지 않은 리소스에 대해서는 빈 목록이 반환됩니다.

이슈

프로젝트 이슈 상태 이벤트 목록

단일 이슈에 대한 모든 상태 이벤트 목록을 가져옵니다.

GET /projects/:id/issues/:issue_iid/resource_state_events
속성 유형 필수 설명
id 정수/문자열 프로젝트의 ID 또는 URL 인코딩 경로
issue_iid 정수 이슈의 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 정수/문자열 프로젝트의 ID 또는 URL 인코딩 경로
issue_iid 정수 이슈의 IID
resource_state_event_id 정수 상태 이벤트의 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 프로젝트의 ID 또는 URL 인코딩된 경로
merge_request_iid integer 병합 요청의 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 프로젝트의 ID 또는 URL 인코딩된 경로
merge_request_iid integer 병합 요청의 IID
resource_state_event_id integer 상태 이벤트의 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"
}

에픽

경고:
에픽 REST API는 사용 중단되었습니다. GitLab 17.0에서
API의 v5에서 제거될 예정입니다.
GitLab 17.4 이상에서는 관리자가 에픽의 새로운 모습을 활성화한 경우
대신 작업 항목 API를 사용하세요.
이 변경은 브레이킹 변경입니다.

그룹 에픽 상태 이벤트 목록

단일 에픽에 대한 모든 상태 이벤트의 목록을 반환합니다.

GET /groups/:id/epics/:epic_id/resource_state_events
속성 유형 필수 설명
id 정수/문자열 그룹의 ID 또는 URL-인코딩 경로.
epic_id 정수 에픽의 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 정수/문자열 그룹의 ID 또는 URL-인코딩 경로.
epic_id 정수 에픽의 ID입니다.
resource_state_event_id 정수 상태 이벤트의 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"
}