Skip to content

Интеграция рекламного блока в Telegram-бота через AdsGram

После того как вы создали рекламный блок в личном кабинете и он прошёл модерацию, вы можете начать показывать рекламу внутри вашего Telegram-бота.

Шаг 1 — Запрос к API

Чтобы получить рекламный контент, отправьте GET-запрос на:
https://api.adsgram.ai/advbot?tgid={TELEGRAM_USER_ID}&blockid={BLOCK_ID}

  • tgid — Telegram ID пользователя
  • blockid — ID рекламного блока (можно найти в личном кабинете)

ВАЖНО

Используйте только числовую часть blockid, без префикса bot-.

Шаг 2 — Обработка ответа

API вернёт JSON со следующими полями:

JSON
{
  "text_html": "<a href='...'>Заголовок</a>\nТекст\nРеклама. 18+",
  "click_url": "https://...",
  "button_name": "Go!",
  "image_url":"https://..."
}

Шаг 3 — Формирование сообщения

Используйте данные из ответа для отправки рекламы:

  • text_html → текст сообщения (caption)
  • image_url → картинка
  • button_name + click_url → инлайн-кнопка
  • ParseMode = HTML

ВАЖНО

  • text_html может содержать HTML, обязательно указывайте ParseMode.HTML.
  • Рекламные посты, размещаемые через бота, не должны быть пересылаемыми.
    Публикация должна использовать формат, который исключает возможность пересылки (например, sendPhoto или sendMessage с параметром protect_content=True в Telegram API).

Мультиязычные боты

Если в вашем боте реализована поддержка нескольких языков, вы можете передавать желаемый язык в запросе получения рекламы с помощью параметра language.

Пример запроса с языком:
https://api.adsgram.ai/advbot?blockid=123&tgid=123&language=en

Если параметр language передан, реклама будет подбираться с учетом указанного языка.
Если параметр отсутствует — будет использоваться язык, определённый по разметке Telegram.


✅ Готово — ваш бот теперь умеет нативно показывать рекламу от AdsGram.