Webhooks для платформы WhatsApp Business

Блог WhatsApp Business

Webhooks позволяют в режиме реального времени получать уведомления HTTP об изменениях определенных объектов. Например, мы можем отправить уведомление о том, что пользователь отправляет вам сообщение, или о том, что статус шаблона изменился. Это избавит вас от необходимости запрашивать наши API об изменениях объектов, которые могли произойти, а могли и не произойти, а также поможет вам избежать превышения ограничения числа обращений.

Этот документ содержит обзор Webhooks и способов их применения в WhatsApp Business Management API, облачном API платформы WhatsApp Business и локальном API платформы WhatsApp Business.

Объекты, поля и значения

Каждый API может иметь несколько типов объектов, поэтому при настройке Webhooks необходимо сначала выбрать тип объекта. Поскольку у разных объектов разные поля, после этого необходимо подписаться на конкретные поля для этого типа объекта. Вы будете получать уведомления об изменении значений во всех полях, на которые подпишетесь.

Отправляемые уведомления имеют формат HTTP-запросов POST и содержат полезные данные JSON, описывающие изменение.

Доступные Webhooks

В таблице ниже приведена информация, которую вы можете получать от Webhooks.

APIОбъекты

Облачный API

  • Клиент выполняет действие, например отвечает на сообщение компании.
  • Клиент обновляет номер телефона.
  • Сообщение отправлено компанией, доставлено клиенту или прочитано им (содержит информацию о ценах).
  • Ошибка с сообщением.

Локальный API

  • Клиент выполняет действие, например отвечает на сообщение компании.
  • Клиент обновляет номер телефона.
  • Сообщение отправлено компанией, доставлено клиенту или прочитано им (содержит информацию о ценах).
  • Ошибка с сообщением.

WhatsApp Business Management API

  • Изменен статус официального бизнес-аккаунта и статус отображаемого имени.
  • Изменен статус проверки аккаунта WhatsApp Business.
  • Обновлена информация аккаунта WhatsApp Business, в том числе информация о нарушении правил.
  • Изменены возможности аккаунта WhatsApp Business, например количество переписок на один номер телефона.
  • Утвержден, отклонен или отключен шаблон сообщения.
  • Утверждено или отклонено отображаемое имя, связанное с номером телефона.
  • Изменен связанный с качеством статус номера телефона.

Пример сообщения с уведомлением

Ниже приведены примеры уведомлений Webhooks, которые вы получаете, когда пользователь отправляет вам текстовое сообщение.

Облачный API

Объектом облачного API всегда является whatsapp_business_account, при этом field всегда определяет тип отправляемой информации.

{
  "object": "whatsapp_business_account",
  "entry": [{
    "id": "WHATSAPP_BUSINESS_ACCOUNT_ID",
    "changes": [{
      "value": {
        "messaging_product": "whatsapp",
        "metadata": {
          "display_phone_number": PHONE_NUMBER,
          "phone_number_id": PHONE_NUMBER_ID
        },
        "contacts": [{
          "profile": {
            "name": "NAME"
          },
          "wa_id": PHONE_NUMBER
        }],
        "messages": [{
          "from": PHONE_NUMBER,
          "id": "wamid.ID",
          "timestamp": TIMESTAMP,
          "text": {
            "body": "MESSAGE_BODY"
          },
          "type": "text"
        }]
      },
      "field": "messages"
    }]
  }]
}

Локальный API

В случае локального API объектами являются contacts и messages, errors или statuses и pricing, так как Webhooks отправляет клиент, а не Meta.

{
  "contacts": [{
    "profile": {
      "name": "NAME"
    },
    "wa_id": "WHATSAPP_BUSINESS_ACCOUNT_ID"
  }],
  "messages":[{
    "from": "PHONE_NUMBER",
    "id": "wamid.ID",
    "timestamp": "TIMESTAMP",
    "text": {
      "body": "MESSAGE_BODY"
    },
    "type": "text"
  }]
} 

Сервер с поддержкой HTTPS

Все Webhooks отправляются по HTTPS, поэтому ваш сервер должен иметь возможность получать и обрабатывать запросы HTTPS и иметь действительный сертификат TLS/SSL. Самозаверенные сертификаты не поддерживаются.

Дополнительная информация

Подробнее о Webhooks для конкретных API.

Дальнейшие действия