--- title: "❌ Ошибка 400 при добавлении InlineKeyboardButton в Telegram" date: 2023-01-22T21:33:01+03:00 draft: false tags: [tips, telegram, python] --- ## Ошибка 400 ```text Error code: 400. Description: Bad Request: can't parse inline keyboard button: Text buttons are unallowed in the inline keyboard ``` Имеем такой код ```python keyboard = types.InlineKeyboardMarkup() types_buttons = ( types.InlineKeyboardButton('\U0001f44d'), types.InlineKeyboardButton('\U0001f44e'), ) for type_button in types_buttons: keyboard.add(type_button) bot.send_message(message.chat.id, 'text', reply_markup=keyboard) ``` ## Решение Инлайн кнопки должны иметь хотя бы одно опциональное поле: `callback_data`, `url`, `switch_inline_query` и т.д. You must use exactly one of the optional fields (https://core.telegram.org/bots/api#inlinekeyboardbutton) Если нужны текстовые кнопки, необходимо использовать класс `ReplyKeyboardMarkup`. Thanks [GrAnd](https://ru.stackoverflow.com/a/1354497).