{"schema_version":"1.0","service":"Publicasta","type":"article","id":225,"slug":"routehook_telegram_bot_api_relay","title":"RouteHook: Telegram Bot API relay для стабильной работы бота","excerpt":"RouteHook ставится между Telegram и вашим сервером: сохраняет текущий webhook, выдает персональный Bot API URL и помогает боту работать стабильнее без переписывания webhook-кода.","language":"ru","default_language":"ru","canonical_url":"https://publicasta.com/routehook/routehook_telegram_bot_api_relay?lang=ru","image":{"url":"https://publicasta.com/storage/projects/26/pages/225/2026/07/81a00e95-cc42-4ba4-9646-e83093b7798a.webp","alt":"RouteHook relay diagram: Telegram updates go through RouteHook to your webhook, Bot API requests use routehook.ipcfg.com"},"publisher":{"id":26,"slug":"routehook","name":"RouteHook","url":"https://publicasta.com/routehook"},"author":{"name":"anton r"},"published_at":"2026-07-29T15:11:25+00:00","updated_at":"2026-07-29T15:11:25+00:00","content_markdown":"![RouteHook relay diagram: Telegram updates go through RouteHook to your webhook, Bot API requests use routehook.ipcfg.com](https://publicasta.com/storage/projects/26/pages/225/2026/07/81a00e95-cc42-4ba4-9646-e83093b7798a.webp)\n\n Если у вас уже есть Telegram-бот, скорее всего, вокруг него давно сложилась простая рабочая схема: Telegram отправляет updates на ваш webhook, а ваш код отвечает пользователям через Bot API.\n\n Проблемы начинаются, когда прямые запросы к Bot API становятся нестабильными: где-то не проходит исходящее соединение, где-то серверное окружение ведет себя по-разному, где-то хочется добавить понятную инфраструктурную прослойку без переезда всего проекта.\n\n RouteHook решает именно эту задачу. Это Telegram Bot API relay на Cloudflare Workers.\n\n Начать подключение можно прямо в Telegram: [@RouteHookBot](https://t.me/RouteHookBot).\n\n ## Как это работает\n\n RouteHook ставится между Telegram и вашим сервером:\n\n ```text\nTelegram -> RouteHook -> ваш webhook\n```\n\n Для исходящих запросов к Bot API вы используете персональный relay URL:\n\n ```text\nhttps://routehook.ipcfg.com/<public_id>/bot<TOKEN>/<method>\n```\n\n То есть вместо:\n\n ```text\nhttps://api.telegram.org/bot<TOKEN>/sendMessage\n```\n\n вызываете:\n\n ```text\nhttps://routehook.ipcfg.com/<public_id>/bot<TOKEN>/sendMessage\n```\n\n Остальная логика бота остается прежней.\n\n ## Что обычно не нужно менять\n\n Если у бота уже есть рабочий webhook, его код можно не трогать. При подключении RouteHook сам проверит текущий webhook и предложит оставить его.\n\n В этом режиме схема выглядит так:\n\n ```text\nTelegram отправляет update в RouteHook\nRouteHook проверяет внутренний secret\nRouteHook пересылает update на ваш текущий webhook\nваш сервер обрабатывает update как раньше\n```\n\n Вам не нужно добавлять SDK, переносить проект, подключать npm-пакеты или переписывать обработчики.\n\n ## Когда подойдет API-only\n\n Иногда бот не принимает входящие updates через webhook, а только отправляет сообщения: уведомления, алерты, служебные отчеты, сообщения из CRM или админки.\n\n Для такого сценария есть API-only режим. RouteHook не назначает webhook и выдает только Bot API relay URL.\n\n ## Что делает RouteHook с безопасностью\n\n RouteHook не хранит тела updates и тексты сообщений. Bot token нужен для настройки relay, но не показывается обратно в интерфейсе.\n\n На участке Telegram -> RouteHook используется внутренний secret. На участок RouteHook -> ваш webhook можно дополнительно добавить свой заголовок:\n\n ```text\nX-RouteHook-Secret\n```\n\n Это необязательно для обычного подключения, но полезно, если ваш webhook хочет принимать запросы только от RouteHook.\n\n ## Как подключиться\n\n 1. Откройте бота RouteHook в Telegram.\n2. Купите relay для одного бота.\n3. Отправьте bot token вашего Telegram-бота.\n4. Если webhook уже найден, выберите `Оставить текущий webhook`.\n5. Получите персональный `API base URL`.\n6. Замените `https://api.telegram.org` в своем коде на выданный URL.\n\n После подключения можно проверить состояние командой:\n\n ```text\n/checkbot <public_id>\n```\n\n Она покажет текущий Telegram webhook, количество pending updates и подскажет, где искать проблему, если бот не отвечает.\n\n ## Для кого это\n\n RouteHook подойдет небольшим и средним Telegram-ботам, которые уже работают на PHP, Node.js, Python или любом другом backend, и которым нужен простой relay без переезда проекта.\n\n Главная идея простая: оставить webhook как есть, заменить базовый адрес Bot API и продолжить работу.\n\n Попробовать RouteHook можно через Telegram-бота: [@RouteHookBot](https://t.me/RouteHookBot).","available_translations":[{"language":"en","title":"RouteHook: a Telegram Bot API relay for stable bot delivery","html_url":"https://publicasta.com/routehook/routehook_telegram_bot_api_relay?lang=en","markdown_url":"https://publicasta.com/routehook/routehook_telegram_bot_api_relay.md?lang=en","json_url":"https://publicasta.com/routehook/routehook_telegram_bot_api_relay.json?lang=en","api_url":"https://publicasta.com/api/public/v1/channels/routehook/articles/routehook_telegram_bot_api_relay?lang=en"},{"language":"ru","title":"RouteHook: Telegram Bot API relay для стабильной работы бота","html_url":"https://publicasta.com/routehook/routehook_telegram_bot_api_relay?lang=ru","markdown_url":"https://publicasta.com/routehook/routehook_telegram_bot_api_relay.md?lang=ru","json_url":"https://publicasta.com/routehook/routehook_telegram_bot_api_relay.json?lang=ru","api_url":"https://publicasta.com/api/public/v1/channels/routehook/articles/routehook_telegram_bot_api_relay?lang=ru"}],"_links":{"self":"https://publicasta.com/routehook/routehook_telegram_bot_api_relay.json?lang=ru","api":"https://publicasta.com/api/public/v1/channels/routehook/articles/routehook_telegram_bot_api_relay?lang=ru","html":"https://publicasta.com/routehook/routehook_telegram_bot_api_relay?lang=ru","canonical":"https://publicasta.com/routehook/routehook_telegram_bot_api_relay?lang=ru","markdown":"https://publicasta.com/routehook/routehook_telegram_bot_api_relay.md?lang=ru","json":"https://publicasta.com/routehook/routehook_telegram_bot_api_relay.json?lang=ru","channel":"https://publicasta.com/api/public/v1/channels/routehook","channel_articles":"https://publicasta.com/api/public/v1/channels/routehook/articles","search":"https://publicasta.com/api/public/v1/search","documentation":"https://publicasta.com/api-docs#reading-publicasta","openapi":"https://publicasta.com/api-docs/openapi.json","llms":"https://publicasta.com/llms.txt"}}