Перейти к содержанию

Настройка webhook Telegram Bot API через Nginx: руководство и OpenAPI-спецификация

Документация по безопасной интеграции вебхуков Telegram Bot API через обратный прокси Nginx: пошаговая настройка серверной инфраструктуры, валидация входящего трафика и интерактивная спецификация OpenAPI 3.0.


Схема архитектуры

Схема архитектуры Webhook-решения Telegram Bot API

Исходный файл схемы для редактирования: architecture.drawio.

Диаграмма последовательности (Sequence Diagram)

sequenceDiagram
    autonumber
    actor User as Пользователь
    participant TG as Серверы Telegram
    participant Nginx as Nginx (TLS, reverse proxy)
    participant Bot as Сервис бота (127.0.0.1:8000)
    participant Ext as Посторонний клиент

    User->>TG: Сообщение в чат
    TG->>Nginx: POST /bot-webhook (HTTPS, Update JSON,<br/>заголовок X-Telegram-Bot-Api-Secret-Token)
    Note over Nginx: Проверка secret token
    Nginx->>Bot: Проксирование запроса (HTTP)
    Bot-->>Nginx: 200 OK (подтверждение приёма)
    Nginx-->>TG: 200 OK
    Note over TG,Nginx: Если ответ не 2xx или таймаут,<br/>Telegram повторит доставку
    Bot->>TG: sendMessage (HTTPS)
    TG->>User: Ответ в чат

    Ext->>Nginx: POST /bot-webhook (без токена или с неверным)
    Nginx-->>Ext: 403 Forbidden

Разделы документации