Freeze Periods API

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

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

권한 및 보안

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

Freeze 기간 디렉터리

생성된 날짜(created_at)를 기준으로 오름차순으로 정렬된 페이지별 Freeze 기간 디렉터리입니다.

GET /projects/:id/freeze_periods
속성 유형 필요 여부 설명  
id 정수/문자열 프로젝트의 ID 또는 URL-encoded path.  

예시 요청:

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 기간 가져오기

주어진 freeze_period_id에 대한 Freeze 기간을 가져옵니다.

GET /projects/:id/freeze_periods/:freeze_period_id
속성 타입 필요 여부 설명
id 정수 또는 문자열 프로젝트의 ID 또는 URL-encoded path.
freeze_period_id 정수 Freeze 기간의 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 기간 생성

Freeze 기간을 생성합니다.

POST /projects/:id/freeze_periods
속성 유형 필요 여부 설명
id 정수 또는 문자열 프로젝트의 ID 또는 URL-encoded path.
freeze_start 문자열 cron 형식의 Freeze 기간 시작.
freeze_end 문자열 cron 형식의 Freeze 기간 종료.
cron_timezone 문자열 아니오 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 기간 업데이트

주어진 freeze_period_id에 대한 Freeze 기간을 업데이트합니다.

PUT /projects/:id/freeze_periods/:freeze_period_id
속성 유형 필요 여부 설명
id 정수 또는 문자열 프로젝트의 ID 또는 URL-encoded path.
freeze_period_id 정수 Freeze 기간의 ID
freeze_start 문자열 아니오 cron 형식의 Freeze 기간 시작.
freeze_end 문자열 아니오 cron 형식의 Freeze 기간 종료.
cron_timezone 문자열 아니오 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 기간 삭제

주어진 freeze_period_id에 대한 Freeze 기간을 삭제합니다.

DELETE /projects/:id/freeze_periods/:freeze_period_id
속성 유형 필요 여부 설명
id 정수 또는 문자열 프로젝트의 ID 또는 URL-encoded path.
freeze_period_id 정수 Freeze 기간의 ID

예시 요청:

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