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

ブロードキャストメッセージAPI

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

このAPIを使用して、UIに表示されるバナーと通知を操作します。詳細については、ブロードキャストメッセージを参照してください。

GETリクエストは認証を必要としません。他のすべてのブロードキャストメッセージAPIエンドポイントは、管理者のみがアクセスできます。Non-GETリクエスト:

  • ゲストは401 Unauthorizedになります。
  • 通常のユーザーは403 Forbiddenになります。

すべてのブロードキャストメッセージを取得する

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

すべてのブロードキャストメッセージをリストします。

GET /broadcast_messages

リクエスト例:

curl "https://gitlab.example.com/api/v4/broadcast_messages"

レスポンス例:

[
    {
        "message":"Example broadcast message",
        "starts_at":"2016-08-24T23:21:16.078Z",
        "ends_at":"2016-08-26T23:21:16.080Z",
        "font":"#FFFFFF",
        "id":1,
        "active": false,
        "target_access_levels": [10,30],
        "target_path": "*/welcome",
        "broadcast_type": "banner",
        "dismissable": false,
        "theme": "indigo"
    }
]

特定のブロードキャストメッセージを取得する

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

特定のブロードキャストメッセージを取得します。

GET /broadcast_messages/:id

パラメータは以下のとおりです:

属性必須説明
id整数はい取得するブロードキャストメッセージのID。

リクエスト例:

curl "https://gitlab.example.com/api/v4/broadcast_messages/1"

レスポンス例:

{
    "message":"Deploy in progress",
    "starts_at":"2016-08-24T23:21:16.078Z",
    "ends_at":"2016-08-26T23:21:16.080Z",
    "font":"#FFFFFF",
    "id":1,
    "active":false,
    "target_access_levels": [10,30],
    "target_path": "*/welcome",
    "broadcast_type": "banner",
    "dismissable": false,
    "theme": "indigo"
}

ブロードキャストメッセージを作成する

ブロードキャストメッセージは、ターゲティング設定に関係なく、APIを介して公開でアクセスできます。機密情報や個人的な情報を含めないでください。また、特定のグループまたはプロジェクトに個人的な情報を伝達するためにブロードキャストメッセージを使用しないでください。

新しいブロードキャストメッセージを作成します。

POST /broadcast_messages

パラメータは以下のとおりです:

属性必須説明
message文字列はい表示するメッセージ。
starts_at日時いいえ開始時間(デフォルトはUTCの現在時刻)。ISO 8601形式(2019-03-15T08:00:00Z)で指定してください。
ends_at日時いいえ終了時間(デフォルトはUTCの現在時刻から1時間)。ISO 8601形式(2019-03-15T08:00:00Z)で指定してください。
font文字列いいえ前景色の16進数コード。
target_access_levels整数の配列いいえブロードキャストメッセージのターゲットアクセスレベル(ロール)。
target_path文字列いいえブロードキャストメッセージのターゲットパス。
broadcast_type文字列いいえ外観タイプ(デフォルトはバナー)
dismissableブール値いいえユーザーはメッセージを無視できますか?
theme文字列いいえブロードキャストメッセージの配色テーマ(バナーのみ)。

target_access_levelsは、Gitlab::Accessモジュールで定義されています。次のレベルが有効です:

  • ゲスト(10
  • プランナー(15
  • レポーター(20
  • デベロッパー(30
  • メンテナー(40
  • オーナー(50

themeオプションは、System::BroadcastMessageクラスで定義されています。次のテーマが有効です:

  • インディゴ(デフォルト)
  • ライトインディゴ
  • ライトブルー
  • ライトグリーン
  • ライトレッド
  • ダーク
  • ライト

リクエスト例:

curl --data "message=Deploy in progress&target_access_levels[]=10&target_access_levels[]=30&theme=red" \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/broadcast_messages"

レスポンス例:

{
    "message":"Deploy in progress",
    "starts_at":"2016-08-26T00:41:35.060Z",
    "ends_at":"2016-08-26T01:41:35.060Z",
    "font":"#FFFFFF",
    "id":1,
    "active": true,
    "target_access_levels": [10,30],
    "target_path": "*/welcome",
    "broadcast_type": "notification",
    "dismissable": false,
    "theme": "red"
}

ブロードキャストメッセージを更新する

ブロードキャストメッセージは、ターゲティング設定に関係なく、APIを介して公開でアクセスできます。機密情報や個人的な情報を含めないでください。また、特定のグループまたはプロジェクトに個人的な情報を伝達するためにブロードキャストメッセージを使用しないでください。

既存のブロードキャストメッセージを更新します。

PUT /broadcast_messages/:id

パラメータは以下のとおりです:

属性必須説明
id整数はい更新するブロードキャストメッセージのID。
message文字列いいえ表示するメッセージ。
starts_at日時いいえ開始時間(UTC)。ISO 8601形式(2019-03-15T08:00:00Z)で指定してください。
ends_at日時いいえ終了時間(UTC)。ISO 8601形式(2019-03-15T08:00:00Z)で指定してください。
font文字列いいえ前景色の16進数コード。
target_access_levels整数の配列いいえブロードキャストメッセージのターゲットアクセスレベル(ロール)。
target_path文字列いいえブロードキャストメッセージのターゲットパス。
broadcast_type文字列いいえ外観タイプ(デフォルトはバナー)
dismissableブール値いいえユーザーはメッセージを無視できますか?
theme文字列いいえブロードキャストメッセージの配色テーマ(バナーのみ)。

target_access_levelsは、Gitlab::Accessモジュールで定義されています。次のレベルが有効です:

  • ゲスト(10
  • プランナー(15
  • レポーター(20
  • デベロッパー(30
  • メンテナー(40
  • オーナー(50

themeオプションは、System::BroadcastMessageクラスで定義されています。次のテーマが有効です:

  • インディゴ(デフォルト)
  • ライトインディゴ
  • ライトブルー
  • ライトグリーン
  • ライトレッド
  • ダーク
  • ライト

リクエスト例:

curl --request PUT \
  --data "message=Update message" \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/broadcast_messages/1"

レスポンス例:

{
    "message":"Update message",
    "starts_at":"2016-08-26T00:41:35.060Z",
    "ends_at":"2016-08-26T01:41:35.060Z",
    "font":"#FFFFFF",
    "id":1,
    "active": true,
    "target_access_levels": [10,30],
    "target_path": "*/welcome",
    "broadcast_type": "notification",
    "dismissable": false,
    "theme": "indigo"
}

ブロードキャストメッセージを削除する

ブロードキャストメッセージを削除します。

DELETE /broadcast_messages/:id

パラメータは以下のとおりです:

属性必須説明
id整数はい削除するブロードキャストメッセージのID。

リクエスト例:

curl --request DELETE \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "https://gitlab.example.com/api/v4/broadcast_messages/1"