mark_message_as_read | Mark a received message (and earlier ones in the conversation) as read — within 30 days of receipt. Args: phone_number_id (numeric string, the number that received it), message_id (string wamid of the received message, e.g. “wamid.HBgL…”). |
send_document_message | Send a document (PDF, Office file, text…) by public https URL; WhatsApp downloads it. Args: phone_number_id (numeric string), to (recipient phone string, e.g. “+33612345678”), link (https URL string), filename (string with extension, optional, e.g. “invoice.pdf”), caption (string, optional, max 1024 chars), reply_to_message_id (string wamid, optional). Meta rule: outside the 24-hour customer service window (opened by the customer’s last message), only an approved template (send_template_message) can be sent. |
send_image_message | Send an image by public https URL (JPEG or PNG, max 5 MB; WhatsApp downloads it). Args: phone_number_id (numeric string), to (recipient phone string, e.g. “+33612345678”), link (https URL string), caption (string, optional, max 1024 chars), reply_to_message_id (string wamid, optional). Meta rule: outside the 24-hour customer service window (opened by the customer’s last message), only an approved template (send_template_message) can be sent. |
send_template_message | Send an approved message template — the only message type allowed outside the 24-hour customer service window. Args: phone_number_id (numeric string), to (recipient phone string, e.g. “+33612345678”), template_name (string, as in list_message_templates), language (string language code of the template, e.g. “fr” or “en_US” — a bare string, not an object), components (optional array of objects, one per template part with variables): { type: “header” | “body” | “button”, sub_type (“quick_reply” | “url” | “copy_code”, required for a button), index (button position as a string, e.g. “0”, required for a button), parameters: array of { type: “text” | “currency” | “date_time” | “image” | “document” | “video” | “payload” | “coupon_code”, text (for text), parameter_name (for named variables {{first_name}}; omit for positional {{1}}, given in order), currency: { fallback_value, code (ISO 4217), amount_1000 (integer = amount x 1000) }, date_time: { fallback_value }, image/video: { link (https URL) }, document: { link, filename }, payload (string, quick_reply button), coupon_code (string, copy_code button) } }. Example body variables: [{ “type”: “body”, “parameters”: [{ “type”: “text”, “text”: “Jessica” }] }]. |
send_text_message | Send a text message. Args: phone_number_id (sender number id, numeric string), to (recipient phone number string, international format e.g. “+33612345678”), body (string, 1-4096 chars), preview_url (boolean, optional: render a preview of the first URL), reply_to_message_id (string wamid, optional: quote a received message). Meta rule: outside the 24-hour customer service window (opened by the customer’s last message), only an approved template (send_template_message) can be sent. |