При внедрении бизнес-процессов важно получать данные от внешних сервисов при наступлении того или иного события. Мы упростили процесс получения статусов при массовых рассылках по API — теперь нашим клиентам доступны Вебхуки (Webhooks). Расскажем подробнее, что это и как это работает.
Webhook — это HTTP-запрос, который передаёт информацию на указанный вами URL-адрес, если произошло целевое событие или действие.
Таким образом, Webhooks позволяют приложениям или системам быть «в курсе» событий друг друга без постоянной отправки запросов. Это делает их эффективным помощником в интеграциях и автоматизации различных системам.
Шаги по созданию Вебхука:
- Владелец сервера или приложения определяет URL-адрес, на который будут направляться данные от app.sms.by методом POST:
channel — канал отправки,
message_id — ID-сообщения
status — статус доставки.
Этот URL-адрес указывается в личном кабинете app.sms.by.
- Когда на сервере происходит событие, Вебхук формирует HTTP-запрос и отправляет его на URL-адрес, определенный на первом шаге.
- Получатель Вебхука (т.е. ваш скрипт) ожидает HTTP-запрос на указанном URL-адресе и при поступлении запроса обрабатывает полученные данные. Для этого вашим разработчикам необходимо написать код обработки указанных выше данных из POST-запроса.
Пример Вебхука от нашей системы:
curl —location ‘https://your-domain.test/…’ \
—header ‘Content-Type: application/x-www-form-urlencoded’ \
—data-urlencode ‘channel=VIBER’ \
—data-urlencode ‘message_id=2892295’ \
—data-urlencode ‘status=SENT’
Советы по обеспечению безопасности:
✅ Подтверждение подлинности запросов и проверка того, что только источники, которым доверяете, могут отправлять Вебхуки.
✅ Использование защищенного соединения для передачи данных между серверами с применением протокола HTTPS.
✅ Ведение журнала событий для мониторинга работы Вебхуков и реагирования на возможные проблемы.