# Интеграции

[Перейти в личный кабинет](https://my.tuna.am/team_integrations)

Интеграции позволяют отправлять уведомления о событиях мониторов и отчётов в различные мессенджеры и системы оповещения.

![Главная страница интеграций](/docs/img/team/integrations.png)

к сведению

Доступно только по [подписке](https://tuna.am/#pricing) в тарифе **Легенда**.

***

## Поддерживаемые интеграции

| Интеграция       | Описание                                  |
| ---------------- | ----------------------------------------- |
|  **Telegram**    | Уведомления в Telegram чат или группу     |
|  **Slack**       | Уведомления в Slack канал через Webhook   |
|  **Discord**     | Уведомления в Discord канал через Webhook |
|  **VK Teams**    | Уведомления в VK Teams (бывший MyTeam)    |
|  **Google Chat** | Уведомления в Google Chat через Webhook   |
|  **Webhook**     | Произвольный HTTP Webhook                 |

***

## Telegram

Отправка уведомлений в Telegram чат или группу.

<!-- -->

### Настройка

1. Откройте Telegram и найдите бота **@TunaAmBot**
2. Начните диалог с ботом командой `/start`
3. Для группового чата — добавьте бота в группу и выполните `/start@TunaAmBot`
4. Бот отправит ссылку для подтверждения
5. Перейдите по ссылке — интеграция будет создана автоматически

### Параметры

| Параметр     | Описание                                       |
| ------------ | ---------------------------------------------- |
| **Название** | Имя интеграции для идентификации               |
| **Chat ID**  | Идентификатор чата (заполняется автоматически) |

***

## Slack

Отправка уведомлений в Slack канал через Incoming Webhook.

<!-- -->

### Настройка

1. Перейдите в настройки вашего Slack workspace
2. Создайте новый Incoming Webhook: [Документация Slack](https://docs.slack.dev/messaging/sending-messages-using-incoming-webhooks/)
3. Скопируйте URL webhook
4. В Tuna создайте интеграцию Slack и вставьте URL

### Параметры

| Параметр        | Описание                            |
| --------------- | ----------------------------------- |
| **Название**    | Имя интеграции для идентификации    |
| **Канал**       | Название канала (например, #alerts) |
| **Webhook URL** | URL Incoming Webhook                |

***

## Discord

Отправка уведомлений в Discord канал через Webhook.

<!-- -->

### Настройка

1. Откройте настройки Discord канала
2. Перейдите в раздел **Integrations** → **Webhooks**
3. Создайте новый Webhook: [Документация Discord](https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks)
4. Скопируйте URL webhook
5. В Tuna создайте интеграцию Discord и вставьте URL

### Параметры

| Параметр        | Описание                         |
| --------------- | -------------------------------- |
| **Название**    | Имя интеграции для идентификации |
| **Webhook URL** | URL Discord Webhook              |

***

## VK Teams

Отправка уведомлений в VK Teams (бывший MyTeam).

<!-- -->

### Настройка

1. Откройте VK Teams и найдите бота **@metabot**
2. Создайте нового бота и получите токен
3. Получите Chat ID чата, куда будут отправляться уведомления
4. В Tuna создайте интеграцию VK Teams

Подробнее: [Получение токена VK Teams](https://teams.vk.com/profile/70001)

### Параметры

| Параметр     | Описание                                                    |
| ------------ | ----------------------------------------------------------- |
| **Название** | Имя интеграции для идентификации                            |
| **Chat ID**  | Идентификатор чата                                          |
| **Token**    | Токен бота (формат: `000.0000000000.0000000000:0000000000`) |

***

## Google Chat

Отправка уведомлений в Google Chat через Webhook.

<!-- -->

### Настройка

1. Откройте нужный чат в Google Chat
2. Перейдите в настройки чата → **Webhooks**
3. Создайте новый Webhook: [Документация Google](https://developers.google.com/workspace/chat/quickstart/webhooks#create-webhook)
4. Скопируйте URL webhook
5. В Tuna создайте интеграцию Google Chat и вставьте URL

### Параметры

| Параметр        | Описание                         |
| --------------- | -------------------------------- |
| **Название**    | Имя интеграции для идентификации |
| **Webhook URL** | URL Google Chat Webhook          |

***

## Webhook (Generic)

Отправка уведомлений на произвольный HTTP endpoint.

<!-- -->

### Настройка

1. Создайте endpoint на вашем сервере для приёма уведомлений
2. В Tuna создайте интеграцию Webhook и укажите URL

### Параметры

| Параметр        | Описание                         |
| --------------- | -------------------------------- |
| **Название**    | Имя интеграции для идентификации |
| **Webhook URL** | URL вашего endpoint              |

### Формат запроса

При событии Tuna отправляет POST запрос с JSON телом:

```json
{
  "monitor_id": "2aB3cD4eF5gH6iJ7kL8m",
  "monitor_name": "My Service",
  "event_type": "fail",
  "message": "Monitor is down",
  "timestamp": "2024-01-15T10:30:00Z"
}

```

***

## Тестирование интеграции

Перед сохранением интеграции вы можете отправить тестовое сообщение, чтобы убедиться в корректности настройки.

1. Заполните параметры интеграции
2. Нажмите кнопку **Тест**
3. Проверьте получение сообщения в целевом сервисе
4. Сохраните интеграцию

***

## Использование в контактах

После создания интеграции её можно добавить в [группу контактов](https://tuna.am/docs/team/contacts.md). При событии монитора уведомления будут отправлены во все интеграции, добавленные в выбранные группы контактов.
