WhatsApp Cloud API
Official WhatsApp Business Platform Cloud API message profile. Create a Meta business app, add WhatsApp, register a business phone number, obtain a system-user or business access token, and send it as Authorization: Bearer TOKEN. Use a phone-number ID and a versioned Graph API path. Webhooks deliver inbound messages and delivery/read status; WhatsApp does not expose arbitrary edit/delete operations for delivered messages in this message reference.
Connect this API to an AI agent Browse all specs
What you can do with WhatsApp Cloud API via MCP
Every endpoint below becomes a governed tool your AI agent (Claude, ChatGPT, or a customer-facing VX agent) can call — with scoped permissions, sandbox testing, and audit logs.
| Method | Path | Operation | Description |
|---|---|---|---|
| POST | /{version}/{phone-number-id}/messages |
send_whatsapp_message | Send a WhatsApp message Method: POST Path: /{version}/{phone-number-id}/messages IMPORTANT: This function has 5 REQUIRED parameter(s) and 5 OPTIONAL parameter(s) REQUIRED parameters MUST be provided OPTIONAL parameters can be omitted if not needed Parameters: Path Parameters: REQUIRED: - version: Graph API version, for example v23.0 - phone-number-id: WhatsApp Business phone number ID Request Body: REQUIRED: - messaging_product: messaging_product parameter from application/json - to: Recipient phone number in international format. - type: Message type. OPTIONAL: - text: text parameter from application/json - template: template parameter from application/json - image: image parameter from application/json - video: video parameter from application/json - document: document parameter from application/json |
| POST | /{version}/{phone-number-id}/media |
upload_whatsapp_media | Upload WhatsApp media Method: POST Path: /{version}/{phone-number-id}/media IMPORTANT: This function has 5 REQUIRED parameter(s) and 0 OPTIONAL parameter(s) REQUIRED parameters MUST be provided OPTIONAL parameters can be omitted if not needed Parameters: Path Parameters: REQUIRED: - version: Graph API version - phone-number-id: WhatsApp Business phone number ID Request Body: REQUIRED: - messaging_product: messaging_product parameter from application/json - type: type parameter from application/json - file: file parameter from application/json |
| GET | /{version}/{media-id} |
get_whatsapp_media | Get media URL Method: GET Path: /{version}/{media-id} IMPORTANT: This function has 2 REQUIRED parameter(s) and 0 OPTIONAL parameter(s) REQUIRED parameters MUST be provided OPTIONAL parameters can be omitted if not needed Parameters: Path Parameters: REQUIRED: - version: Graph API version - media-id: WhatsApp media ID |
| DELETE | /{version}/{media-id} |
delete_whatsapp_media | Delete media Method: DELETE Path: /{version}/{media-id} IMPORTANT: This function has 2 REQUIRED parameter(s) and 0 OPTIONAL parameter(s) REQUIRED parameters MUST be provided OPTIONAL parameters can be omitted if not needed Parameters: Path Parameters: REQUIRED: - version: Graph API version - media-id: WhatsApp media ID |
Usage guide
## Authentication Official WhatsApp Business Platform Cloud API message profile. Create a Meta business app, add WhatsApp, register a business phone number, obtain a system-user or business access token, and send it as Authorization: Bearer TOKEN. Use a phone-number ID and a versioned Graph API path. Webhooks deliver inbound messages and delivery/read status; WhatsApp does not expose arbitrary edit/delete operations for delivered messages in this message reference. ## Endpoint coverage This listing contains 3 documented path(s) and 4 operation(s). Review each operation's required OAuth scope or token type before use. ## Official documentation [WhatsApp developer documentation](https://developers.facebook.com/documentation/business-messaging/whatsapp/reference/whatsapp-business-phone-number/message-api)
How to use this spec
- Create a free VX Agents account (sandbox tools included).
- Open the marketplace and connect “WhatsApp Cloud API” to an agent.
- Expose it as an MCP server for Claude/ChatGPT, or chat with it directly.