message_template_components_update Webhook

Field reference for WhatsApp message_template_components_update webhooks: template component edits, button fields, payload shape, and Dualhook handling.

The message_template_components_update field reports that an existing template's components changed. It is useful when your app caches template body text, headers, footers, or button definitions.

What message_template_components_update Reports

This field can include:

  • template ID, name, and language,
  • body text,
  • text header,
  • footer,
  • button definitions such as URL and phone-number buttons.

It does not replace the need to fetch the template from Meta if your local copy must be canonical; treat it as a change signal and lightweight payload.

When It Fires

Meta sends this webhook when a template is edited.

Payload Shape

{
  "object": "whatsapp_business_account",
  "entry": [
    {
      "id": "<WABA_ID>",
      "time": 1751250234,
      "changes": [
        {
          "field": "message_template_components_update",
          "value": {
            "message_template_id": 1315502779341834,
            "message_template_name": "order_confirmation",
            "message_template_language": "en_US",
            "message_template_title": "Your order is confirmed!",
            "message_template_element": "Thank you for your order, {{1}}.",
            "message_template_footer": "Footer text",
            "message_template_buttons": [
              {
                "message_template_button_type": "URL",
                "message_template_button_text": "View order",
                "message_template_button_url": "https://example.com/orders"
              }
            ]
          }
        }
      ]
    }
  ]
}

Common button types include URL, PHONE_NUMBER, QUICK_REPLY, COPY_CODE, FLOW, VOICE_CALL, catalog and order-related buttons, and other Meta-supported template button types.

Dualhook Handling

Dualhook does not currently track message_template_components_update as one of its normalized management event types. If Meta sends this field to Dualhook's app-level callback, it is treated as an unknown or generic management event rather than as a first-class dashboard state transition.

For your own integration, subscribe your app or endpoint if you need component-change notifications. In Dualhook, template state is primarily maintained through explicit template sync actions and the template status and quality management fields.

Implementation Notes

  • Use message_template_id plus language as the stable lookup key.
  • After receiving this event, fetch the template from Meta if you need the full canonical component model.
  • Do not assume every optional field is present. Headers, footers, and button arrays depend on the template.
  • Review send builders after component changes, especially when variable count or button shape changes.

Related

  • Webhook Subscription FieldsReference list of all 22+ WhatsApp Business Platform webhook subscription fields, what each notifies you of, required permissions, payload size limits, retry policy, mTLS support, and IP allowlisting.
  • TemplatesTemplate lifecycle, categories, and management through Dualhook and Meta Graph API.
  • Template ElementsTemplate structure: headers, body, footer, buttons, variables, and practical limits.
  • message_template_status_update WebhookField reference for WhatsApp message_template_status_update webhooks: template approval, rejection, pause, disablement, archive, deletion, appeal, and Dualhook handling.
Browse more docsStart Free Trial