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"