Webhooks for WhatsApp Business Accounts

Attivando l'iscrizione al livello di account WhatsApp Business, puoi ricevere notifiche in tempo reale quando vengono apportate modifiche al tuo account WhatsApp Business (WABA). Per configurare i webhook per gli account WhatsApp Business:

  1. Configura il tuo endpoint e i webhook. È la stessa procedura che utilizzi per configurare i webhook per le Pagine Facebook.
  2. Attiva l'iscrizione per la tua app nell'account WhatsApp Business. Devi attivare l'iscrizione per un'app di proprietà della tua azienda: le app condivise con la tua azienda non possono ricevere notifiche webhook.
  3. Assicurati che l'app abbia completato la procedura di Analisi dell'app e che abbia richiesto l'autorizzazione whatsapp_business_management.

GET, POST, and DELETE calls to /{whats-app-business-account-id}/subscribed_apps are now subject to Business Use Case Rate Limits.

Set up Your Endpoint and Webhooks

Follow our Webhooks Getting Started guide to create your endpoint and configure your webhook endpoint. When you configure your endpoint, make sure to choose WhatsApp Business Account and subscribe to individual WhatsApp Business Account (WABA) fields.

Available Subscription Fields

Campi relativi all'iscrizione disponibili

Nome del campo Descrizione

account_review_update

Ricevi una notifica quando viene completato il controllo di un account WhatsApp Business.

account_update

Ricevi una notifica in caso di modifica al tuo account WhatsApp Business. Le modifiche possono includere aggiornamenti del numero di telefono, violazioni delle normative, ban dell'account WhatsApp Business e altro ancora.

business_capability_update

Ricevi una notifica in caso di aggiornamento di una funzionalità. Questo può includere la modifica del numero massimo di numeri di telefono che un account WhatsApp Business può avere o di conversazioni per numero di telefono.

message_template_status_update

Ricevi una notifica in caso di approvazione, rifiuto o disabilitazione del modello di messaggio.

messages

Ricevi una notifica quando la tua azienda riceve un messaggio da un cliente, quando invii un messaggio a un cliente, quando viene consegnato un messaggio a un cliente e quando il tuo messaggio viene letto dal cliente.

phone_number_name_update

Ricevi una notifica in caso di approvazione o rifiuto del nome associato a un numero di telefono.

phone_number_quality_update

Ricevi una notifica in caso di aggiornamento dello stato associato alla qualità di un numero di telefono.

security

Ricevi una notifica nei seguenti casi:

  • Hai richiesto di disabilitare il codice di verifica in due passaggi.
  • Il codice di verifica in due passaggi è stato disabilitato.
  • Il codice di verifica in due passaggi è stato aggiornato.
  • Consulta il riferimento per i webhook dell'account WhatsApp Business per maggiori informazioni su ciascun campo di payload e il riferimento per i webhook dell'API Cloud di WhatsApp per maggiori informazioni sui diversi tipi di notifiche messages che puoi ricevere.

    Subscribe Your App

    You need to subscribe your app to webhooks on a given WABA. We only send notifications if your webhooks-configured app is subscribed to webhooks on a given WABA, and only if the app has permission to edit that WABA.

    Create a Subscription

    Request

    To subscribe your app to webhooks on a WABA, send a POST request to the WABA > Subscribed Apps endpoint.

    curl -X POST 'https://graph.facebook.com/<API_VERSION>/<WHATSAPP_BUSINESS_ACCOUNT_ID>/subscribed_apps' \
    -H 'Authorization: Bearer <ACCESS_TOKEN>'

    Response

    Upon success:

    {
      "success": "true"
    }
    

    Get Subscribed Apps

    To get a list of apps subscribed to webhooks on a WABA, send a GET request to the WABA > Subscribed Apps endpoint.

    Request

    curl 'https://graph.facebook.com/<API_VERSION>/<WHATSAPP_BUSINESS_ACCOUNT_ID>/subscribed_apps' \
    -H 'Authorization: Bearer <ACCESS_TOKEN>'

    Response

    A successful response will list the subscribed apps:

    {
      "data": [
        {
          "whatsapp_business_api_data": {
            "link": "<APP_1_URL>",
            "name": "<APP_1_NAME>",
            "id": "<APP_1_ID>"
          }
        },
        {
          "whatsapp_business_api_data": {
            "link": "<APP_2_URL>",
            "name": "<APP_2_NAME>",
            "id": "<APP_2_ID>"
          }
        },
        ...
      ]
    }

    Delete a subscription

    To unsubscribe your app from webhooks on a WABA, send a DELETE request to the subscribed_apps endpoint.

    Request

    curl -X DELETE 'https://graph.facebook.com/<AP_VERSION>/<WHATSAPP_BUSINESS_ACCOUNT_ID>/subscribed_apps' \
    -H 'Authorization: Bearer <ACCESS_TOKEN>'

    Response

    A successful response will read:

    {
      "success": "true"
    }
    

    Subscribe with Graph API Explorer

    If you don't want to subscribe your app with direct API calls, you can easily do it with Graph API Explorer.

    Replace the me?fields=id,name query with <WHATSAPP_BUSINESS_ACCT_ID>/subscribed_apps. It will subscribe the app you use to send the POST request in Graph Explorer.

    Your app must have permission to edit the WhatsApp business account in order to successfully subscribe.

    Example Webhook payload:

    [
      {
        "object": "whatsapp_business_account",
        "entry": [
          {
            "id": "0",
            "time": 1602782939,
            "changes": [
              {
                "field": "phone_number_name_update",
                "value": {
                  "display_phone_number": "16505551111",
                  "decision": "APPROVED",
                  "requested_verified_name": "WhatsApp",
                  "rejection_reason": null
                }
              }
            ]
          }
        ]
      }
    ]

    Enabling mTLS on a WhatsApp Business Account

    Enabling and disabling mTLS is not supported at the Business Phone Number or WABA level. It is only available for object Webhook subscriptions.

    You can enable Mutual TLS (mTLS) on the webhooks you receive from WhatsApp for added security.

    You must verify the callback URL before enabling mTLS. If you have more than one application accessing WhatsApp Cloud API, you will need to enable mTLS for each application.

    mTLS toggle for WhatsApp Business accounts