Pages API

상세 정보:

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

GitLab Pages 관리를 위한 엔드포인트입니다.

이 엔드포인트를 사용하려면 GitLab Pages 기능이 활성화되어 있어야 합니다. 관리하는 방법사용하는 방법에 대해 더 알아보세요.

페이지 게시 취소

선행 조건:

  • 인스턴스에 대한 관리자 액세스 권한이 있어야 합니다.

페이지를 제거합니다.

DELETE /projects/:id/pages
속성 유형 필수 설명
id 정수/문자열 프로젝트의 ID 또는 URL-인코딩된 경로
curl --request 'DELETE' --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/2/pages"

프로젝트에 대한 페이지 설정 가져오기

선행 조건:

  • 프로젝트에 대해 최소한 Maintainer 역할이 있어야 합니다.

프로젝트에 대한 페이지 설정을 나열합니다.

GET /projects/:id/pages

지원되는 속성:

속성 유형 필수 설명
id 정수/문자열 프로젝트의 ID 또는 URL-인코딩된 경로

성공하면 200를 반환하며, 다음 응답 속성이 포함됩니다:

속성 유형 설명
url 문자열 이 프로젝트의 Pages에 접근할 수 있는 URL입니다.
is_unique_domain_enabled 부울 고유 도메인이 활성화되어 있는지 여부입니다.
force_https 부울 프로젝트가 HTTPS 강제 설정으로 되어 있으면 true입니다.
deployments[] 배열 현재 활성화된 배포 목록입니다.
deployments[] 속성 유형 설명
created_at 날짜 배포가 생성된 날짜입니다.
url 문자열 이 배포에 대한 URL입니다.
path_prefix 문자열 병렬 배포 시 사용되는 이 배포의 경로 접두사입니다.
root_directory 문자열 루트 디렉터리입니다.

요청 예시:

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

응답 예시:

{
  "url": "http://html-root-4160ce5f0e9a6c90ccb02755b7fc80f5a2a09ffbb1976cf80b653.pages.gdk.test:3010",
  "is_unique_domain_enabled": true,
  "force_https": false,
  "deployments": [
    {
      "created_at": "2024-01-05T18:58:14.916Z",
      "url": "http://html-root-4160ce5f0e9a6c90ccb02755b7fc80f5a2a09ffbb1976cf80b653.pages.gdk.test:3010/",
      "path_prefix": "",
      "root_directory": null
    },
    {
      "created_at": "2024-01-05T18:58:46.042Z",
      "url": "http://html-root-4160ce5f0e9a6c90ccb02755b7fc80f5a2a09ffbb1976cf80b653.pages.gdk.test:3010/mr3",
      "path_prefix": "mr3",
      "root_directory": null
    }
  ]
}

프로젝트의 Pages 설정 업데이트

전제 조건:

  • 인스턴스에 대한 관리자 접근 권한이 있어야 합니다.

프로젝트의 Pages 설정을 업데이트합니다.

PATCH /projects/:id/pages

지원되는 속성:

속성 유형 필수 설명
id integer/string 프로젝트의 ID 또는 URL 인코딩 경로
pages_unique_domain_enabled boolean 아니요 고유 도메인 사용 여부
pages_https_only boolean 아니요 HTTPs 강제 적용 여부

성공하면 200을 반환하며 다음 응답 속성을 포함합니다:

속성 유형 설명
url string 이 프로젝트의 Pages에 접근하기 위한 URL.
is_unique_domain_enabled boolean 고유 도메인이 활성화된 경우입니다.
force_https boolean 프로젝트가 HTTPS를 강제 적용하도록 설정된 경우 true입니다.
deployments[] array 현재 활성화된 배포 목록입니다.
deployments[] 속성 유형 설명
created_at date 배포가 생성된 날짜입니다.
url string 이 배포를 위한 URL입니다.
path_prefix string 병렬 배포를 사용할 때 이 배포의 경로 접두사입니다.
root_directory string 루트 디렉토리입니다.

예시 요청:

curl --request PATCH --header "PRIVATE-TOKEN: <your_access_token>" --url "https://gitlab.example.com/api/v4/projects/:id/pages" \
--form 'pages_unique_domain_enabled=true' --form 'pages_https_only=true'

예시 응답:

{
  "url": "http://html-root-4160ce5f0e9a6c90ccb02755b7fc80f5a2a09ffbb1976cf80b653.pages.gdk.test:3010",
  "is_unique_domain_enabled": true,
  "force_https": false,
  "deployments": [
    {
      "created_at": "2024-01-05T18:58:14.916Z",
      "url": "http://html-root-4160ce5f0e9a6c90ccb02755b7fc80f5a2a09ffbb1976cf80b653.pages.gdk.test:3010/",
      "path_prefix": "",
      "root_directory": null
    },
    {
      "created_at": "2024-01-05T18:58:46.042Z",
      "url": "http://html-root-4160ce5f0e9a6c90ccb02755b7fc80f5a2a09ffbb1976cf80b653.pages.gdk.test:3010/mr3",
      "path_prefix": "mr3",
      "root_directory": null
    }
  ]
}