Every request body shares this outer shape, regardless of message type:

FieldTypeNotes
messaging_productstringAlways "whatsapp".
recipient_typestring"individual" for all samples in this collection. Present on most, omitted on 2 (contact, location) — verify whether it's actually optional or was dropped by omission.
tostringRecipient MSISDN in international format, no leading + is inconsistent in samples (some include it, e.g. "+917039871406", "to" for template/payment samples uses the {{phone_no}} variable instead) — confirm the platform's expected format.
typestringOne of: text, image, video, audio, document, contacts, location, reaction, interactive, template.

Did this page help you?