正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

Pages API

  • プラン: Free、Premium、Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

GitLab Pagesを管理するためのエンドポイント。

これらのエンドポイントを使用するには、GitLab Pages機能を有効にする必要があります。この機能の管理使用について、詳細はこちらをご覧ください。

Pagesの公開を停止

前提要件:

  • プロジェクトのメンテナー以上のロールを持っている必要があります。

Pagesを削除します。

DELETE /projects/:id/pages
属性必須説明
id整数または文字列はいプロジェクトのIDまたはURLエンコードされたパス
curl --request DELETE \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/projects/2/pages"

プロジェクトのPages設定を取得

前提要件:

  • プロジェクトのメンテナー以上のロールを持っている必要があります。

プロジェクトのPages設定を一覧表示します。

GET /projects/:id/pages

サポートされている属性は以下のとおりです:

属性必須説明
id整数または文字列はいプロジェクトのIDまたはURLエンコードされたパス

成功した場合、200と次のレスポンス属性を返します:

属性説明
url文字列このプロジェクトのPagesにアクセスするためのURL。
is_unique_domain_enabledブール値ユニークドメインが有効になっている場合。
force_httpsブール値プロジェクトがHTTPSを強制するように設定されている場合はtrue
deployments[]配列現在アクティブなデプロイの一覧。
primary_domain文字列すべてのPagesリクエストをリダイレクトするプライマリドメイン。GitLab 17.8で導入されました。
deployments[]属性説明
created_at日付デプロイが作成された日付。
url文字列このデプロイのURL。
path_prefix文字列並列デプロイを使用する場合の、このデプロイのプレフィックスパス。
root_directory文字列ルートディレクトリ。

リクエスト例:

curl --request GET \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "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
    }
  ],
  "primary_domain": null
}

プロジェクトのPages設定を更新

前提要件:

  • プロジェクトのメンテナー以上のロールを持っている必要があります。

プロジェクトのPages設定を更新します。

PATCH /projects/:id/pages

サポートされている属性は以下のとおりです:

属性必須説明
id整数または文字列はいプロジェクトのIDまたはURLエンコードされたパス
pages_unique_domain_enabledブール値いいえユニークドメインを使用するかどうか
pages_https_onlyブール値いいえHTTPSを強制するかどうか
pages_primary_domain文字列いいえすべてのPagesリクエストをリダイレクトするために、既存の割り当てられたドメインからプライマリドメインを設定します。GitLab 17.8で導入されました。

成功した場合、200と次のレスポンス属性を返します:

属性説明
url文字列このプロジェクトのPagesにアクセスするためのURL。
is_unique_domain_enabledブール値ユニークドメインが有効になっている場合。
force_httpsブール値プロジェクトがHTTPSを強制するように設定されている場合はtrue
deployments[]配列現在アクティブなデプロイの一覧。
primary_domain文字列すべてのPagesリクエストをリダイレクトするプライマリドメイン。GitLab 17.8で導入されました。
deployments[]属性説明
created_at日付デプロイが作成された日付。
url文字列このデプロイのURL。
path_prefix文字列並列デプロイを使用する場合の、このデプロイのプレフィックスパス。
root_directory文字列ルートディレクトリ。

リクエスト例:

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' \
  --form 'pages_primary_domain=https://custom.example.com'

レスポンス例:

{
  "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
    }
  ],
  "primary_domain": null
}