gitlab-org--gitlab-foss/doc/api/broadcast_messages.md

176 lines
4.4 KiB
Markdown
Raw Normal View History

# Broadcast Messages API
2016-08-30 19:47:44 +00:00
2019-02-05 03:49:11 +00:00
> Introduced in GitLab 8.12.
2016-08-30 19:47:44 +00:00
2019-02-05 03:49:11 +00:00
Broadcast messages API operates on [broadcast messages](../user/admin_area/broadcast_messages.md).
As of GitLab 12.8, GET requests do not require authentication. All other broadcast message API endpoints are accessible only to administrators. Non-GET requests by:
2019-02-05 03:49:11 +00:00
- Guests will result in `401 Unauthorized`.
- Regular users will result in `403 Forbidden`.
2016-08-30 19:47:44 +00:00
## Get all broadcast messages
2019-02-05 03:49:11 +00:00
List all broadcast messages.
```text
2016-08-30 19:47:44 +00:00
GET /broadcast_messages
```
2019-02-05 03:49:11 +00:00
Example request:
```sh
curl https://gitlab.example.com/api/v4/broadcast_messages
2016-08-30 19:47:44 +00:00
```
Example response:
```json
[
{
"message":"Example broadcast message",
"starts_at":"2016-08-24T23:21:16.078Z",
"ends_at":"2016-08-26T23:21:16.080Z",
"color":"#E75E40",
"font":"#FFFFFF",
"id":1,
"active": false,
"target_path": "*/welcome"
2016-08-30 19:47:44 +00:00
}
]
```
## Get a specific broadcast message
2019-02-05 03:49:11 +00:00
Get a specific broadcast message.
```text
2016-08-30 19:47:44 +00:00
GET /broadcast_messages/:id
```
2019-02-05 03:49:11 +00:00
Parameters:
| Attribute | Type | Required | Description |
|:----------|:--------|:---------|:-------------------------------------|
| `id` | integer | yes | ID of broadcast message to retrieve. |
Example request:
2016-08-30 19:47:44 +00:00
2019-02-05 03:49:11 +00:00
```sh
curl https://gitlab.example.com/api/v4/broadcast_messages/1
2016-08-30 19:47:44 +00:00
```
Example response:
```json
{
"message":"Deploy in progress",
"starts_at":"2016-08-24T23:21:16.078Z",
"ends_at":"2016-08-26T23:21:16.080Z",
"color":"#cecece",
"font":"#FFFFFF",
"id":1,
"active":false,
"target_path": "*/welcome"
2016-08-30 19:47:44 +00:00
}
```
## Create a broadcast message
2019-02-05 03:49:11 +00:00
Create a new broadcast message.
```text
2016-08-30 19:47:44 +00:00
POST /broadcast_messages
```
2019-02-05 03:49:11 +00:00
Parameters:
2016-08-30 19:47:44 +00:00
2019-02-05 03:49:11 +00:00
| Attribute | Type | Required | Description |
|:------------|:---------|:---------|:------------------------------------------------------|
| `message` | string | yes | Message to display. |
| `starts_at` | datetime | no | Starting time (defaults to current time). |
| `ends_at` | datetime | no | Ending time (defaults to one hour from current time). |
| `color` | string | no | Background color hex code. |
| `font` | string | no | Foreground color hex code. |
Example request:
```sh
curl --data "message=Deploy in progress&color=#cecece" --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/broadcast_messages
2016-08-30 19:47:44 +00:00
```
Example response:
```json
{
"message":"Deploy in progress",
"starts_at":"2016-08-26T00:41:35.060Z",
"ends_at":"2016-08-26T01:41:35.060Z",
"color":"#cecece",
"font":"#FFFFFF",
"id":1,
"active": true,
"target_path": "*/welcome"
2016-08-30 19:47:44 +00:00
}
```
## Update a broadcast message
2019-02-05 03:49:11 +00:00
Update an existing broadcast message.
```text
2016-08-30 19:47:44 +00:00
PUT /broadcast_messages/:id
```
2019-02-05 03:49:11 +00:00
Parameters:
| Attribute | Type | Required | Description |
|:------------|:---------|:---------|:-----------------------------------|
| `id` | integer | yes | ID of broadcast message to update. |
| `message` | string | no | Message to display. |
| `starts_at` | datetime | no | Starting time. |
| `ends_at` | datetime | no | Ending time. |
| `color` | string | no | Background color hex code. |
| `font` | string | no | Foreground color hex code. |
2016-08-30 19:47:44 +00:00
2019-02-05 03:49:11 +00:00
Example request:
```sh
curl --request PUT --data "message=Update message&color=#000" --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/broadcast_messages/1
2016-08-30 19:47:44 +00:00
```
Example response:
```json
{
"message":"Update message",
"starts_at":"2016-08-26T00:41:35.060Z",
"ends_at":"2016-08-26T01:41:35.060Z",
"color":"#000",
"font":"#FFFFFF",
"id":1,
"active": true,
"target_path": "*/welcome"
2016-08-30 19:47:44 +00:00
}
```
## Delete a broadcast message
2019-02-05 03:49:11 +00:00
Delete a broadcast message.
```sh
2016-08-30 19:47:44 +00:00
DELETE /broadcast_messages/:id
```
2019-02-05 03:49:11 +00:00
Parameters:
| Attribute | Type | Required | Description |
|:----------|:--------|:---------|:-----------------------------------|
| `id` | integer | yes | ID of broadcast message to delete. |
Example request:
2016-08-30 19:47:44 +00:00
2019-02-05 03:49:11 +00:00
```sh
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" https://gitlab.example.com/api/v4/broadcast_messages/1
2016-08-30 19:47:44 +00:00
```