AI.Product ClubБлог Михаила Карпова
← Все материалы
HOW-TOАвтоматизация5 мин чтения

Telegram API в n8n: webhook, ошибки и проверка доставки

Как диагностировать Telegram Trigger, конфликт тестового webhook, ошибки отправки и повторную обработку событий в n8n.

Если бот молчит или отвечает дважды, проверь путь события по этапам. Ниже — порядок диагностики для уже собранного workflow.

Telegram API в n8n: webhook, ошибки и проверка доставки: Доставка, Обработка, Отправка, Повторы
Последовательность работы: доставка → обработка → отправка → повторы.

Мой подход. Я бы смотрел на первый сломанный переход: событие, обработка или отправка. Когда эти этапы разделены, журнал превращается в план действий, а не в длинный список ошибок.

1. Раздели получение и отправку

У Telegram-автоматизации два независимых направления: Telegram передаёт событие в n8n, а n8n отправляет ответ через Bot API. Если триггер не запустился, изменение текста ответа ничего не исправит. Если execution появился, но отправка упала, webhook уже выполнил свою часть.

Открой последний запуск и найди первый красный узел. Сохрани время, HTTP-код и описание ошибки. Токен бота находится в URL запросов Bot API, поэтому не публикуй полный адрес из журнала. Для расследования обычно достаточно имени метода, кода и очищенного сообщения.

Базовый маршрут без дополнительных API-вызовов описан в создании Telegram-бота в n8n. Здесь разбираем ситуацию, когда маршрут уже есть, но работает нестабильно.

2. Проверь, куда приходят обновления

Метод getWebhookInfo возвращает сведения о зарегистрированном webhook, включая URL, очередь обновлений и последнюю ошибку доставки, когда она есть. Вызови его через собственный защищённый клиент с токеном бота и сравни адрес с рабочим webhook n8n. Не меняй адрес вслепую: сначала зафиксируй текущее состояние. Поля ответа описаны в Telegram Bot API.

Telegram поддерживает один webhook для бота. Если тот же токен используют два workflow или другой сервис, последняя регистрация меняет получателя событий. Тестовый и опубликованный режим n8n также могут заменять адрес друг друга. Разведи рабочий и тестовый бот по разным токенам.

Для self-hosted n8n нужен доступный извне HTTPS-адрес. За reverse proxy проверь публичный WEBHOOK_URL и TLS. Если интерфейс тестирования зависает на ожидании, отдельно проверь поддержку WebSocket у proxy. Это разные настройки; их описывает официальная диагностика n8n.

3. Разбери ошибку конкретного метода

Ошибка или наблюдение Что проверить
Ошибка авторизации Актуален ли токен в credentials нужного узла
Chat not found chat.id из события и доступ бота к этому чату
Bot was blocked by the user Прекратить попытки для этого получателя
Ошибка разбора entities Режим Markdown/HTML и специальные символы
Ограничение частоты retry_after в ответе, очередь и задержку
Execution есть, ответа нет Первый упавший узел после триггера

Сначала отправь простой текст без форматирования. Если он проходит, добавляй разметку отдельно. При ограничении частоты не запускай немедленный цикл повторов: учитывай указанный сервером интервал. Обработка ошибок и параметры методов определены в справке Bot API.

Не включай параллельно getUpdates ради диагностики работающего webhook: эти способы получения обновлений несовместимы. Сначала реши, какой компонент отвечает за приём. В обычном workflow с Telegram Trigger этим занимается n8n.

4. Проверь повторную обработку

Событие может быть доставлено повторно, а execution — перезапущен вручную. Для операции с последствиями, например создания заявки, сохраняй update_id и проверяй, обрабатывался ли он. Если одним хранилищем пользуются несколько ботов, включи идентификатор бота в ключ. Запись и проверка должны учитывать параллельные запуски: простая схема «прочитал — потом записал» может пропустить дубль.

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

Проведи контроль: одно сообщение, два разных сообщения, повторная обработка одного update_id и временная ошибка отправки. Сверь число созданных объектов и полученных ответов. После исправления проверь новый рабочий запуск, а не только старые данные в редакторе. Для чтения каналов пользовательским аккаунтом нужен другой подход — Telethon и Telegram.

Todo: попробуй на своей задачеПрогресс сохраняется в этом браузере.
ПРАКТИКА НА КУРСЕ / AI PRODUCT CLUB

Собери своего ИИ-агента и проверь результат

«AI Agents: от vibe coding к AI-команде»: desktop agents, MCP, skills, evals и harness. Отдельные воркшопы — от подключения инструментов до контроля качества.

7 практических воркшопов · записи · вопросы автору в чате

Посмотреть программу курса ↗

Автор: — практик автоматизации и автор курсов AI Product Club.