WhatsApp

Connect your AI agents to WhatsApp.

Authentication: OAuth or access token. See Magic Link for the runtime auth flow, or Application credentials to bring your own OAuth app.

Sample use cases

  • Send an approved order-confirmation template to a customer’s phone number
  • Create a new message template for appointment reminders
  • Report conversation analytics for the last 30 days by phone number

Available Tools

get_conversation_analytics

Get WhatsApp conversation analytics (volume and cost per category/direction/type) for a time range. start and end…

get_pricing_analytics

Get WhatsApp pricing analytics (cost and volume per pricing category and type) for a time range. Granularity…

list_blocked_users

List WhatsApp users blocked from messaging the credential’s phone number. Cursor-paginated.

block_users

Block one or more WhatsApp users from messaging the credential’s phone number. Pass user phone numbers in E.164…

unblock_users

Unblock one or more previously-blocked WhatsApp users on the credential’s phone number.

get_business_profile

Get the WhatsApp business profile for the credential’s phone number. Returns about, address, description, email…

update_business_profile

Update the WhatsApp business profile (about, address, description, email, websites, vertical). Only provided fields…

upload_media

Upload a media file (image/video/audio/document/sticker, up to 100MB) to WhatsApp. Returns a media_id usable in…

get_media_url

Get a signed download URL and metadata for a WhatsApp media ID. The URL is valid for ~5 minutes and must be fetched…

delete_media

Delete a WhatsApp media object by ID. Deletion is permanent.

send_text_message

Send a plain-text WhatsApp message. The recipient must have messaged the business in the last 24 hours, or you must…

send_media_message

Send a WhatsApp media message (image, video, audio, document, or sticker). Provide either media_id (from…

send_location_message

Send a location pin as a WhatsApp message. Requires latitude and longitude; name and address are optional.

send_contacts_message

Send one or more vCard-style contacts as a WhatsApp message. Each contact must have a ‘name’ object…

send_template_message

Send an approved WhatsApp template message. Use list_message_templates to find valid names and languages. Components…

send_interactive_message

Send a WhatsApp interactive message (reply buttons, list picker, CTA URL button, flow, catalog, product). Pass the…

send_reaction

React to an incoming WhatsApp message with a single emoji. Pass an empty emoji string to remove an existing reaction.

mark_message_as_read

Mark an incoming WhatsApp message as read. Optionally also send a typing indicator so the recipient sees that the…

list_phone_numbers

List all WhatsApp phone numbers on the WhatsApp Business Account. Cursor-paginated; pass page_info.cursor as ‘after’…

get_phone_number

Get details of a WhatsApp phone number. Defaults to the credential’s configured phone number ID. Returns…

list_message_templates

List message templates on the WhatsApp Business Account. Use name_or_content to search by substring; name is…

get_message_template

Get a single WhatsApp message template by ID. Use list_message_templates to find template IDs.

create_message_template

Create a WhatsApp message template (AUTHENTICATION, MARKETING, or UTILITY). Template goes through WhatsApp review…

update_message_template

Edit an existing WhatsApp message template. Edit rules vary by template status and field. Approved templates may be…

delete_message_template

Delete a WhatsApp message template. Without hsm_id, deletes every language variant of the named template. Pass…

get_waba

Get WhatsApp Business Account details: name, currency, timezone, status, template namespace, verification status…

list_subscribed_apps

List apps subscribed to webhooks on the WhatsApp Business Account. Useful for confirming which Meta apps receive…