
## Клавиатура

Интерактивные кнопки, прикрепляемые к сообщению через поле `fields.keyboard`. Каждая кнопка — объект в массиве.

## Поля кнопки

| Поле | Тип | По умолч. | Описание |
|------|-----|-----------|---------|
| `TEXT` | string | — | Текст кнопки. Обязателен для всех кнопок кроме `TYPE: "NEWLINE"` |
| `TYPE` | string | — | Специальный тип: `NEWLINE` (перенос на новую строку) |
| `LINK` | string | — | URL — кнопка становится ссылкой |
| `COMMAND` | string | — | Команда бота (вызывает событие `ONIMBOTV2COMMANDADD`) |
| `COMMAND_PARAMS` | string | — | Параметры команды |
| `ACTION` | string | — | Действие при нажатии: `PUT` (вставить в поле ввода), `SEND` (отправить текст), `COPY` (скопировать), `CALL` (позвонить), `DIALOG` (открыть чат) |
| `ACTION_VALUE` | string | — | Значение для `ACTION` (текст, номер телефона, ID чата) |
| `BG_COLOR` | string | — | Цвет фона в формате HEX (`#ff6600`) |
| `BG_COLOR_TOKEN` | string | `base` | Токен цвета (см. [таблицу ниже](#токены-цветов)) |
| `TEXT_COLOR` | string | — | Цвет текста в формате HEX |
| `DISPLAY` | string | `BLOCK` | Отображение: `LINE` (в строке с другими) или `BLOCK` (на всю ширину) |
| `DISABLED` | string | `N` | Неактивная кнопка: `Y` или `N` |
| `BLOCK` | string | `N` | Блокировка после нажатия: `Y` (деактивируется после клика) или `N` |
| `WIDTH` | integer | — | Ширина кнопки в пикселях |
| `CONTEXT` | string | `ALL` | Контекст: `MOBILE`, `DESKTOP`, `ALL` |
| `OFF_BG_COLOR` | string | — | Цвет фона в неактивном состоянии (после нажатия при `BLOCK: "Y"`) |
| `OFF_TEXT_COLOR` | string | — | Цвет текста в неактивном состоянии |

## Токены цветов

| Токен | Цвет | Назначение |
|-------|------|-----------|
| `primary` | Синий | Основное действие |
| `secondary` | Серый | Дополнительное действие |
| `alert` | Красный | Деструктивное действие |
| `base` | Белый | Нейтральная кнопка (по умолчанию) |

## Пример

```json
{
  "dialogId": "chat123",
  "fields": {
    "message": "Подтвердите действие:",
    "keyboard": [
      {
        "TEXT": "Одобрить",
        "BG_COLOR_TOKEN": "primary",
        "ACTION": "SEND",
        "ACTION_VALUE": "/approve",
        "BLOCK": "Y"
      },
      {
        "TEXT": "Отклонить",
        "BG_COLOR_TOKEN": "alert",
        "ACTION": "SEND",
        "ACTION_VALUE": "/reject",
        "BLOCK": "Y"
      },
      { "TYPE": "NEWLINE" },
      {
        "TEXT": "Подробнее",
        "LINK": "https://portal.bitrix24.ru/tasks/42/",
        "BG_COLOR_TOKEN": "secondary",
        "DISPLAY": "LINE"
      },
      {
        "TEXT": "Позвонить менеджеру",
        "ACTION": "CALL",
        "ACTION_VALUE": "+79161234567",
        "DISPLAY": "LINE",
        "CONTEXT": "MOBILE"
      }
    ]
  }
}
```

## Смотрите также

- [Отправить сообщение](/docs/bots/messages/send)
- [Обновить сообщение](/docs/bots/messages/update)
- [Форматирование текста](/docs/bots/messages/formatting)
- [ATTACH-блоки](/docs/bots/messages/attach)
