---
sidebar_position: 12
---
# Сформировать клавиатуру по массиву кнопок
Формирует простую JSON клавиатуру из массив кнопок для сообщения или нижней панели
`Функция СформироватьКлавиатуруПоМассивуКнопок(Знач МассивКнопок, Знач ПодСообщением = Ложь, Знач ОднаПодОдной = Истина) Экспорт`
| Параметр | CLI опция | Тип | Назначение |
|-|-|-|-|
| МассивКнопок | --buttons | Массив из Строка | Массив кнопок |
| ПодСообщением | --under | Булево | Клавиатура под сообщением или на нижней панели |
| ОднаПодОдной | --column | Булево | Истина > кнопки выводятся в столбик, Ложь > в строку |
Возвращаемое значение: Строка - JSON клавиатуры
:::tip
О клавиатурах в документации API: [InlineKeyboardMarkup](https://core.telegram.org/bots/api#inlinekeyboardmarkup)
:::
```bsl title="Пример кода"
МассивКнопок = Новый Массив;
МассивКнопок.Добавить("Кнопка1");
МассивКнопок.Добавить("Кнопка2");
МассивКнопок.Добавить("Кнопка3");
Результат = OPI_Telegram.СформироватьКлавиатуруПоМассивуКнопок(МассивКнопок);
```
```sh title="Пример команды CLI"
oint telegram СформироватьКлавиатуруПоМассивуКнопок --buttons %buttons% --under %under% --column %column%
```
```json title="Результат"
"{\r\n \"keyboard\": [\r\n [\r\n {\r\n \"text\": \"Кнопка1\",\r\n \"callback_data\": \"Кнопка1\"\r\n }\r\n ],\r\n [\r\n {\r\n \"text\": \"Кнопка2\",\r\n \"callback_data\": \"Кнопка2\"\r\n }\r\n ],\r\n [\r\n {\r\n \"text\": \"Кнопка3\",\r\n \"callback_data\": \"Кнопка3\"\r\n }\r\n ]\r\n ],\r\n \"resize_keyboard\": true\r\n}"
```