Send a marketing message
Protocols: Meta Cloud API
Required scope: messages:write
Requires an explicit STRICT product policy. The connected Meta account must independently meet Marketing Messages eligibility and terms requirements. A simulated Number cannot send this request.
messages:write. Meta must allow that account to use its Marketing
Messages API and accept the required terms. This request does not enroll an
account or accept terms for it. A simulated Number cannot send it.
Set product_policy to STRICT explicitly. The endpoint rejects a missing
policy or CLOUD_API_FALLBACK. Include the recipient, a template name, and a
deterministic language code:
template.components, use the shapes in the API reference.
Carousel components accept 1 to 10 cards with zero-based card_index values from 0 to 9.
For a date-time body parameter, include fallback_value; you may also send
year, month, day_of_month, hour, minute, day_of_week, and calendar
as structured values supported by Meta.
For a limited-time offer template, send one limited_time_offer component
with one limited_time_offer parameter whose expiration_time_ms is the
offer’s expiration as a Unix timestamp in milliseconds:
quick_reply, url, catalog, and copy_code subtypes.
The endpoint rejects other button subtypes, such as Flow or multi-product
buttons.
Send the body as Content-Type: application/json. The endpoint validates the
whole request before sending it to Meta. A 400 response names the field that
failed validation. For a component, it reports the field within the component
matching your type and sub_type, or reports an unsupported component when
none matches.
Meta returns the send response and remains the authority for account
eligibility, template approval, message status, and any charge. This endpoint
does not switch a Campaign send to Marketing Messages. After an uncertain
response, reconcile the message with Meta and your status webhooks before
deciding whether to send again. Do not replay the request blindly.
Set message_activity_sharing only after establishing the required permission
for that recipient and account. Direct Graph requests do not perform Campaign
audience suppression and opt-out checks; use the Campaign workflow when those
controls are required.
Read the WABA’s Marketing Messages status
to see the raw fields Meta exposes. Those fields do not establish eligibility
or accepted terms for a send.Authorizations
Polymorfa organization key (pmfa_ prefix) or project token (pmfa_pt_ prefix). Client tokens are not accepted by Graph operations.
Path Parameters
Specifies version for this path parameter.
"v26.0"
Identifier for the phone number.
"123456789012345"
Body
Messaging product associated with this Graph API object.
Allowed values
whatsapp Category assigned to recipient.
Allowed values
individual Specifies to for this graph graph marketing send request.
Value constraints
1Type discriminator for this object.
Allowed values
template Structured template values for this graph graph marketing send request.
Specifies product policy for this graph graph marketing send request.
Allowed values
STRICT Whether message activity sharing.
Response
Meta's response to the marketing message request
The response is of type unknown.