Огляд webhook api: інтеграція та автоматизація

Вебхуки

Використовуйте вебхуки, щоб миттєво отримувати події повідомлень у своїй системі.

Доступно два типи вебхуків:

  1. Вебхук статусу доставки для вихідних повідомлень.
  2. Вебхук вхідних повідомлень для SMS та інших підтримуваних каналів.

1. Вебхук статусу доставки

Налаштуйте цей вебхук у параметрах пристрою, щоб отримувати оновлення статусу без опитування API.

{
  "sms_id": int,
  "status_id": int,
  "status_message": string,
  "sendto": string,
  "senttime": datetime,
  "channel_id": int,
  "device_id": int
}
  • 1 - Очікувані SMS
  • 2 - SMS, узяті телефоном
  • 3 - У черзі на надсилання. Certainly, it would have been more logical to place the status "queued for sending" before "SMS taken by phone," but for backward compatibility, the statuses are in the following order: 1, 3, 2."
  • 5 - Вхідні SMS
  • 6 - SMS надіслані телефоном
  • 7 - SMS доставлено
  • 8 - SMS НЕ доставлено
  • 9 - SMS узагалі не надіслана — Generic Failure. (Прочитайте, що робити з цією помилкою тут)
  • Інші, рідкісніші помилки:
  • 10 - SMS не надіслано - No Service
  • 11 - SMS не надіслано - Null PDU
  • 12 - SMS не надіслано - Radio Off
  • 100, 101 - SMS не надіслано - NOT ALLOWED. (Застосунку не надано дозволи на надсилання SMS)

2. Вебхук вхідних повідомлень

Налаштуйте цей вебхук, щоб пересилати вхідні повідомлення в CRM, службу підтримки або бекенд.

У корисному навантаженні є поле «type», яке вказує, чи є вхідне повідомлення текстом або зображенням (наприклад, із WhatsApp).

Текстове повідомлення (type = «text»)

Надсилається для вхідних SMS і вхідних текстових повідомлень із WhatsApp / WhatsApp Business / RCS.

{
  "address": string,
  "date": datetime,
  "date_sent": datetime,
  "body": string,
  "internal_id": int,
  "channel_id": int,
  "sms_id": int,
  "device_id": int,
  "device_name": string,
  "type": "text"
}

Повідомлення із зображенням (type = «img»)

Надсилається для вхідних зображень із WhatsApp / WhatsApp Business. Зображення вже завантажено в наше сховище S3 — вашому бекенду потрібно лише зберегти URL, завантажувати та перезаливати файл не потрібно.

{
  "address": string,
  "date": datetime,
  "date_sent": datetime,
  "body": "",
  "internal_id": null,
  "sim": int,
  "sms_id": int,
  "type": "img",
  "img_url": "https://smsgateway24.s3.eu-central-1.amazonaws.com/..."
}

Примітки:

  • «img_url» — постійне публічне посилання на зображення в нашому S3-бакеті.
  • У повідомлень із зображенням «body» порожній, а «internal_id» дорівнює null — використовуйте «sms_id» як унікальний ідентифікатор.
  • URL вебхука береться з того самого налаштування слота каналу, що й для текстових повідомлень (WhatsApp = слот 3, WhatsApp Business = слот 2).
Доступність вебхуків залежить від вашого тарифу підписки.