Freeze Periods API

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

Freeze Periods API를 사용하여 GitLab Freeze Period 항목을 조작할 수 있습니다.

Permissions and security

리포터 권한 이상을 가진 사용자는 Freeze Period API 엔드포인트를 읽을 수 있습니다. 유지자(Maintainer) 역할을 하는 사용자만 Freeze Periods를 수정할 수 있습니다.

Freeze periods 목록

created_at을 기준으로 오름차순으로 정렬된 페이지별 Freeze periods 목록입니다.

GET /projects/:id/freeze_periods
속성 유형 필수여부 설명
id integer/string yes 프로젝트의 ID 또는 URL 인코딩 된 경로.

예시 요청:

curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/19/freeze_periods"

예시 응답:

[
   {
      "id":1,
      "freeze_start":"0 23 * * 5",
      "freeze_end":"0 8 * * 1",
      "cron_timezone":"UTC",
      "created_at":"2020-05-15T17:03:35.702Z",
      "updated_at":"2020-05-15T17:06:41.566Z"
   }
]

freeze_period_id로 freeze period 가져오기

주어진 freeze_period_id에 해당하는 freeze period를 가져옵니다.

GET /projects/:id/freeze_periods/:freeze_period_id
속성 유형 필수여부 설명
id integer or string yes 프로젝트의 ID 또는 URL 인코딩 된 경로.
freeze_period_id integer yes freeze period의 ID.

예시 요청:

curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/19/freeze_periods/1"

예시 응답:

{
   "id":1,
   "freeze_start":"0 23 * * 5",
   "freeze_end":"0 8 * * 1",
   "cron_timezone":"UTC",
   "created_at":"2020-05-15T17:03:35.702Z",
   "updated_at":"2020-05-15T17:06:41.566Z"
}

Freeze period 생성

Freeze period를 생성합니다.

POST /projects/:id/freeze_periods
속성 유형 필수여부 설명
id integer or string yes 프로젝트의 ID 또는 URL 인코딩 된 경로.
freeze_start string yes cron 형식으로 freeze period의 시작.
freeze_end string yes cron 형식으로 freeze period의 종료.
cron_timezone string no cron 필드의 시간대, 제공되지 않으면 기본값은 UTC입니다.

예시 요청:

curl --header 'Content-Type: application/json' --header "PRIVATE-TOKEN: <your_access_token>" \
     --data '{ "freeze_start": "0 23 * * 5", "freeze_end": "0 7 * * 1", "cron_timezone": "UTC" }' \
     --request POST "https://gitlab.example.com/api/v4/projects/19/freeze_periods"

예시 응답:

{
   "id":1,
   "freeze_start":"0 23 * * 5",
   "freeze_end":"0 7 * * 1",
   "cron_timezone":"UTC",
   "created_at":"2020-05-15T17:03:35.702Z",
   "updated_at":"2020-05-15T17:03:35.702Z"
}

Freeze period 수정

주어진 freeze_period_id에 해당하는 freeze period를 수정합니다.

PUT /projects/:id/freeze_periods/:freeze_period_id
속성 유형 필수여부 설명
id integer or string yes 프로젝트의 ID 또는 URL 인코딩 된 경로.
freeze_period_id integer yes freeze period의 ID.
freeze_start string no cron 형식으로 freeze period의 시작.
freeze_end string no cron 형식으로 freeze period의 종료.
cron_timezone string no cron 필드의 시간대.

예시 요청:

curl --header 'Content-Type: application/json' --header "PRIVATE-TOKEN: <your_access_token>" \
     --data '{ "freeze_end": "0 8 * * 1" }' \
     --request PUT "https://gitlab.example.com/api/v4/projects/19/freeze_periods/1"

예시 응답:

{
   "id":1,
   "freeze_start":"0 23 * * 5",
   "freeze_end":"0 8 * * 1",
   "cron_timezone":"UTC",
   "created_at":"2020-05-15T17:03:35.702Z",
   "updated_at":"2020-05-15T17:06:41.566Z"
}

동결 기간 삭제

주어진 freeze_period_id의 동결 기간을 삭제합니다.

DELETE /projects/:id/freeze_periods/:freeze_period_id
속성 유형 필요여부 설명
id 정수 또는 문자열 프로젝트의 ID 또는 URL 인코딩된 경로.
freeze_period_id 정수 동결 기간의 ID.

예시 요청:

curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/19/freeze_periods/1"