CMSCommercial ยท Meta

WhatsApp Business Cloud API

Meta-hosted API for sending and receiving WhatsApp messages at scale, the dominant business messaging channel in Singapore. Supports templates, interactive messages, media and webhooks.

How to authenticate

5 stops to a working call

  1. 1Create a Meta developer account and a Business app at developers.facebook.com.
  2. 2Add the WhatsApp product; you get a test number and temporary token instantly.
  3. 3Verify your business and register your own number to go beyond the 5-recipient test limit.
  4. 4Generate a permanent system-user token with whatsapp_business_messaging permission.
  5. 5Configure a webhook (with verify token) to receive inbound messages.

Example request

Request
curl -X POST 'https://graph.facebook.com/v21.0/PHONE_NUMBER_ID/messages' -H 'Authorization: Bearer TOKEN' -H 'Content-Type: application/json' -d '{"messaging_product":"whatsapp","to":"65XXXXXXXX","type":"text","text":{"body":"Hello from SG"}}'

Example response

Response (truncated)
{"messaging_product":"whatsapp","contacts":[{"input":"65XXXXXXXX","wa_id":"65XXXXXXXX"}],"messages":[{"id":"wamid.HBg..."}]}

WhatsApp Business Cloud API: common questions

Is the WhatsApp Business Cloud API free?

The WhatsApp Business Cloud API is listed as freemium. Check the official Meta docs for current pricing.

Does the WhatsApp Business Cloud API need an API key?

Yes. It uses OAuth 2.0. Create a Meta developer account and a Business app at developers.facebook.com. Add the WhatsApp product; you get a test number and temporary token instantly. Verify your business and register your own number to go beyond the 5-recipient test limit. Generate a permanent system-user token with whatsapp_business_messaging permission. Configure a webhook (with verify token) to receive inbound messages.

What is the WhatsApp Business Cloud API endpoint?

The base URL is https://graph.facebook.com/v21.0. A working example: curl -X POST 'https://graph.facebook.com/v21.0/PHONE_NUMBER_ID/messages' -H 'Authorization: Bearer TOKEN' -H 'Content-Type: application/json' -d '{"messaging_product":"whatsapp","to":"65XXXXXXXX","type":"text","text":{"body":"Hello from SG"}}'

Notes for AI agents

Business-initiated conversations outside the 24-hour window require pre-approved template messages. Per-conversation pricing applies once past the free tier; free-form replies only within 24h of the user's last message.

Machine-readable version: /api/apis/whatsapp-cloud-api

On the same line