Перейти к основному содержимому

Кнопки в постах

Под текстом поста можно показать до 8 кнопок. Они работают как способ перехода: внешняя ссылка, Mini App или (в будущем) подписочная гата.

Структура​

type PostButton = {
text: string; // надпись на кнопке (до 40 символов)
url?: string; // внешняя ссылка
web_app_url?: string; // URL Mini App
subscribers_only?: boolean; // показать пометку «подписчикам»
};

Хотя бы одно из url / web_app_url обязательно. Если указаны оба — приоритет у web_app_url.

Передача в createPost / editPost​

{
"text": "Анонс конференции",
"buttons": [
{"text": "Регистрация", "url": "https://example.com/reg", "subscribers_only": true},
{"text": "Программа", "web_app_url": "https://example.com/app"},
{"text": "Сайт", "url": "https://example.com"}
]
}

Поведение​

  • url — открывает внешнюю ссылку в новой вкладке/браузере.
  • web_app_url — открывает Mini App. На вебе — iframe в модальном окне; на мобильных клиентах — встроенный WebView с поддержкой Telefon.WebApp SDK (см. Mini Apps).
  • subscribers_only: true — кнопка отображается с пометкой «подписчикам». Backend gate в работе: пока кнопка кликабельна для всех, в будущем будет проверять Follow-связь с автором поста.

Лимиты​

  • До 8 кнопок на пост.
  • Текст кнопки до 40 символов.
  • URL должен быть валидным https://-URL (или http:// в dev).

Удаление и редактирование​

Чтобы убрать все кнопки — передайте buttons: [] в editPost.