130 lines
4.7 KiB
Markdown
130 lines
4.7 KiB
Markdown
|
---
|
||
|
stage: Monitor
|
||
|
group: Respond
|
||
|
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments
|
||
|
---
|
||
|
|
||
|
# Alert Management alerts API **(FREE)**
|
||
|
|
||
|
The Alert Management alerts API is limited to metric images. For more API endpoints, see the
|
||
|
[GraphQL API](graphql/reference/index.md#alertmanagementalert).
|
||
|
|
||
|
## Upload metric image
|
||
|
|
||
|
```plaintext
|
||
|
POST /projects/:id/alert_management_alerts/:alert_iid/metric_images
|
||
|
```
|
||
|
|
||
|
| Attribute | Type | Required | Description |
|
||
|
|-------------|---------|----------|--------------------------------------|
|
||
|
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](index.md#namespaced-path-encoding) owned by the authenticated user. |
|
||
|
| `alert_iid` | integer | yes | The internal ID of a project's alert. |
|
||
|
|
||
|
```shell
|
||
|
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" --form 'file=@/path/to/file.png' \
|
||
|
--form 'url=http://example.com' --form 'url_text=Example website' "https://gitlab.example.com/api/v4/projects/5/alert_management_alerts/93/metric_images"
|
||
|
```
|
||
|
|
||
|
Example response:
|
||
|
|
||
|
```json
|
||
|
{
|
||
|
"id": 17,
|
||
|
"created_at": "2020-11-12T20:07:58.156Z",
|
||
|
"filename": "sample_2054",
|
||
|
"file_path": "/uploads/-/system/alert_metric_image/file/17/sample_2054.png",
|
||
|
"url": "example.com/metric",
|
||
|
"url_text": "An example metric"
|
||
|
}
|
||
|
```
|
||
|
|
||
|
## List metric images
|
||
|
|
||
|
```plaintext
|
||
|
GET /projects/:id/alert_management_alerts/:alert_iid/metric_images
|
||
|
```
|
||
|
|
||
|
| Attribute | Type | Required | Description |
|
||
|
|-------------|---------|----------|--------------------------------------|
|
||
|
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](index.md#namespaced-path-encoding) owned by the authenticated user. |
|
||
|
| `alert_iid` | integer | yes | The internal ID of a project's alert. |
|
||
|
|
||
|
```shell
|
||
|
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/alert_management_alerts/93/metric_images"
|
||
|
```
|
||
|
|
||
|
Example response:
|
||
|
|
||
|
```json
|
||
|
[
|
||
|
{
|
||
|
"id": 17,
|
||
|
"created_at": "2020-11-12T20:07:58.156Z",
|
||
|
"filename": "sample_2054",
|
||
|
"file_path": "/uploads/-/system/alert_metric_image/file/17/sample_2054.png",
|
||
|
"url": "example.com/metric",
|
||
|
"url_text": "An example metric"
|
||
|
},
|
||
|
{
|
||
|
"id": 18,
|
||
|
"created_at": "2020-11-12T20:14:26.441Z",
|
||
|
"filename": "sample_2054",
|
||
|
"file_path": "/uploads/-/system/alert_metric_image/file/18/sample_2054.png",
|
||
|
"url": "example.com/metric",
|
||
|
"url_text": "An example metric"
|
||
|
}
|
||
|
]
|
||
|
```
|
||
|
|
||
|
## Update metric image
|
||
|
|
||
|
```plaintext
|
||
|
PUT /projects/:id/alert_management_alerts/:alert_iid/metric_image/:image_id
|
||
|
```
|
||
|
|
||
|
| Attribute | Type | Required | Description |
|
||
|
|-------------|---------|----------|--------------------------------------|
|
||
|
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](index.md#namespaced-path-encoding) owned by the authenticated user. |
|
||
|
| `alert_iid` | integer | yes | The internal ID of a project's alert. |
|
||
|
| `image_id` | integer | yes | The ID of the image. |
|
||
|
| `url` | string | no | The URL to view more metrics information. |
|
||
|
| `url_text` | string | no | A description of the image or URL. |
|
||
|
|
||
|
```shell
|
||
|
curl --header "PRIVATE-TOKEN: <your_access_token>" --request PUT --form 'url=http://example.com' --form 'url_text=Example website' "https://gitlab.example.com/api/v4/projects/5/alert_management_alerts/93/metric_images/1"
|
||
|
```
|
||
|
|
||
|
Example response:
|
||
|
|
||
|
```json
|
||
|
{
|
||
|
"id": 23,
|
||
|
"created_at": "2020-11-13T00:06:18.084Z",
|
||
|
"filename": "file.png",
|
||
|
"file_path": "/uploads/-/system/alert_metric_image/file/23/file.png",
|
||
|
"url": "http://example.com",
|
||
|
"url_text": "Example website"
|
||
|
}
|
||
|
```
|
||
|
|
||
|
## Delete metric image
|
||
|
|
||
|
```plaintext
|
||
|
DELETE /projects/:id/alert_management_alerts/:alert_iid/metric_images/:image_id
|
||
|
```
|
||
|
|
||
|
| Attribute | Type | Required | Description |
|
||
|
|-------------|---------|----------|--------------------------------------|
|
||
|
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](index.md#namespaced-path-encoding) owned by the authenticated user. |
|
||
|
| `alert_iid` | integer | yes | The internal ID of a project's alert. |
|
||
|
| `image_id` | integer | yes | The ID of the image. |
|
||
|
|
||
|
```shell
|
||
|
curl --header "PRIVATE-TOKEN: <your_access_token>" --request DELETE "https://gitlab.example.com/api/v4/projects/5/alert_management_alerts/93/metric_images/1"
|
||
|
```
|
||
|
|
||
|
Can return the following status codes:
|
||
|
|
||
|
- `204 No Content`: if the image was deleted successfully.
|
||
|
- `422 Unprocessable`: if the image could not be deleted.
|