+++
title = "Предупреждение HTTP API каналов уведомлений"
description = "Harvest Предупреждения уведомлений Channel HTTP API"
keywords = ["harvest", "http", "documentation", "api", "alerting", "alerts", "notifications"]
aliases = []
+++

# Оповещение API каналов уведомлений

Эта страница документирует API каналов оповещения и уведомлений.

## Идентификатор (id) против уникального идентификатора (uid)

Идентификатор (id) канала уведомлений представляет собой автоматически увеличивающееся числовое значение и уникален только для каждой установки Harvest.

Уникальный идентификатор (uid) канала уведомлений может использоваться для однозначной идентификации канала уведомлений между
несколькими установками Harvest. Он генерируется автоматически, если не указан при создании канала уведомлений. Жидкость
позволяет иметь согласованные URL-адреса для доступа к каналам уведомлений и при синхронизации каналов уведомлений между несколькими
Установки Harvest, обратитесь к [подготовка канала оповещения]({{<< "../administration/provisioning.md#alert-notification-channels" >}}).

Идентификатор пользователя может иметь максимальную длину 40 символов.

## Получить все каналы уведомлений

Возвращает все каналы уведомлений, на просмотр которых у прошедшего проверку пользователя есть разрешение.

`GET /api/alert-уведомления`

**Пример ответа:**

```http
GET /api/alert-notifications HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Пример ответа**:

```http
HTTP/1.1 200
Content-Type: application/json

[
  {
    "id": 1,
    "uid": "team-a-email-notifier",
    "name": "Team A",
    "type": "email",
    "isDefault": false,
    "sendReminder": false,
    "disableResolveMessage": false,
    "settings": {
      "addresses": "dev@harvest.com"
    },
    "created": "2018-04-23T14:44:09+02:00",
    "updated": "2018-08-20T15:47:49+02:00"
  }
]

```

## Получить все каналы уведомлений (поиск)

Возвращает все каналы уведомлений, но с менее подробной информацией. Доступен любому аутентифицированному пользователю и в основном используется для предоставления каналов оповещения в пользовательском интерфейсе Harvest при настройке правила оповещения.
`GET /api/alert-notifications/lookup`

**Пример ответа:**

```http
GET /api/alert-notifications/lookup HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Пример ответа**:

```http
HTTP/1.1 200
Content-Type: application/json

[
  {
    "id": 1,
    "uid": "000000001",
    "name": "Test",
    "type": "email",
    "isDefault": false
  },
  {
    "id": 2,
    "uid": "000000002",
    "name": "Slack",
    "type": "slack",
    "isDefault": false
  }
]

```

## Получить канал уведомлений по uid

`GET /api/alert-notifications/uid/:uid`

Возвращает канал уведомления с учетом идентификатора канала уведомления.

**Пример ответа:**

```http
GET /api/alert-notifications/uid/team-a-email-notifier HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Пример ответа**:

```http
HTTP/1.1 200
Content-Type: application/json

{
  "id": 1,
  "uid": "team-a-email-notifier",
  "name": "Team A",
  "type": "email",
  "isDefault": false,
  "sendReminder": false,
  "disableResolveMessage": false,
  "settings": {
    "addresses": "dev@harvest.com"
  },
  "created": "2018-04-23T14:44:09+02:00",
  "updated": "2018-08-20T15:47:49+02:00"
}
```

## Получить канал уведомлений по идентификатору

`GET /api/alert-notifications/:идентификатор`

Возвращает канал уведомления с учетом идентификатора канала уведомления.

**Пример ответа:**

```http
GET /api/alert-notifications/1 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Пример ответа**:

```http
HTTP/1.1 200
Content-Type: application/json

{
  "id": 1,
  "uid": "team-a-email-notifier",
  "name": "Team A",
  "type": "email",
  "isDefault": false,
  "sendReminder": false,
  "disableResolveMessage": false,
  "settings": {
    "addresses": "dev@harvest.com"
  },
  "created": "2018-04-23T14:44:09+02:00",
  "updated": "2018-08-20T15:47:49+02:00"
}
```

## Создать канал уведомлений

Вы можете найти полный список [поддерживаемых уведомителей](/alerting/notifications/#all-supported-notifier) на странице уведомлений о предупреждениях.

`POST /api/alert-notifications`

**Пример ответа:**

```http
POST /api/alert-notifications HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

{
  "uid": "new-alert-notification", // optional
  "name": "new alert notification",  //Required
  "type":  "email", //Required
  "isDefault": false,
  "sendReminder": false,
  "settings": {
    "addresses": "dev@harvest.com"
  }
}
```

**Пример ответа**:

```http
HTTP/1.1 200
Content-Type: application/json

{
  "id": 1,
  "uid": "new-alert-notification",
  "name": "new alert notification",
  "type": "email",
  "isDefault": false,
  "sendReminder": false,
  "settings": {
    "addresses": "dev@harvest.com"
  },
  "created": "2018-04-23T14:44:09+02:00",
  "updated": "2018-08-20T15:47:49+02:00"
}
```

## Обновить канал уведомлений по uid

`PUT /api/alert-notifications/uid/:uid`

Обновляет существующий канал уведомлений, идентифицированный uid.

**Пример ответа:**

```http
PUT /api/alert-notifications/uid/cIBgcSjkk HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

{
  "uid": "new-alert-notification", // optional
  "name": "new alert notification",  //Required
  "type":  "email", //Required
  "isDefault": false,
  "sendReminder": true,
  "frequency": "15m",
  "settings": {
    "addresses": "dev@harvest.com"
  }
}
```

**Пример ответа**:

```http
HTTP/1.1 200
Content-Type: application/json

{
  "id": 1,
  "uid": "new-alert-notification",
  "name": "new alert notification",
  "type": "email",
  "isDefault": false,
  "sendReminder": true,
  "frequency": "15m",
  "settings": {
    "addresses": "dev@harvest.com"
  },
  "created": "2017-01-01 12:34",
  "updated": "2017-01-01 12:34"
}
```

## Обновить канал уведомлений по идентификатору

`PUT /api/alert-notifications/:идентификатор`

Обновляет существующий канал уведомлений, идентифицированный по идентификатору.

**Пример ответа:**

```http
PUT /api/alert-notifications/1 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

{
  "id": 1,
  "uid": "new-alert-notification", // optional
  "name": "new alert notification",  //Required
  "type":  "email", //Required
  "isDefault": false,
  "sendReminder": true,
  "frequency": "15m",
  "settings": {
    "addresses": "dev@harvest.com"
  }
}
```

**Пример ответа**:

```http
HTTP/1.1 200
Content-Type: application/json

{
  "id": 1,
  "uid": "new-alert-notification",
  "name": "new alert notification",
  "type": "email",
  "isDefault": false,
  "sendReminder": true,
  "frequency": "15m",
  "settings": {
    "addresses": "dev@harvest.com"
  },
  "created": "2017-01-01 12:34",
  "updated": "2017-01-01 12:34"
}
```

## Удалить оповещение с помощью uid

`DELETE /api/alert-notifications/uid/:uid`

Удаляет существующий канал уведомлений, идентифицированный uid.

**Пример ответа:**

```http
DELETE /api/alert-notifications/uid/team-a-email-notifier HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Пример ответа**:

```http
HTTP/1.1 200
Content-Type: application/json

{
  "message": "Notification deleted"
}
```

## Удалить оповещение по идентификатору

`DELETE /api/alert-notifications/:id`

Удаляет существующий канал уведомлений, идентифицированный по идентификатору.

**Пример ответа:**

```http
DELETE /api/alert-notifications/1 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Пример ответа**:

```http
HTTP/1.1 200
Content-Type: application/json

{
  "message": "Notification deleted"
}
```

## Delete notification by ID

'DELETE /api/alert-notifications/:id`

Deletes an existing notification channel identified by ID.

`POST /api/alert-notifications/test`

**Пример ответа:**

```http
POST /api/alert-notifications/test HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

{
  "type":  "email",
  "settings": {
    "addresses": "dev@harvest.com"
  }
}
```

**Пример ответа**:

```http
HTTP/1.1 200
Content-Type: application/json

{
  "message": "Test notification sent"
}
```
