ブロードキャストメッセージ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"