WhatsApp Cloud API: What It Is and How to Set It Up

What the WhatsApp Cloud API is, why the On-Premises API is gone, and how to set it up: Meta app, test number, permanent system-user token, sending your first message, webhooks, throughput and messaging limits, with direct access vs a provider.

WhatsApp Settings in Automate AI showing the connected display name, phone number, message limit and a GREEN quality rating

The WhatsApp Cloud API is Meta’s hosted version of the WhatsApp Business Platform: you send and receive WhatsApp messages over HTTPS through Meta’s Graph API, and Meta runs the servers. It is now the only way to use the WhatsApp Business API, because the self-hosted On-Premises API stopped working on 23 October 2025.

Meta doesn’t charge for access to the Cloud API itself; you pay per delivered message. This guide walks through setting it up yourself (developer app, test number, permanent token, first message, webhooks), the limits you’ll meet, and when it makes more sense to use a provider such as Automate AI instead.

Key takeaways

  • Cloud API = Meta-hosted. No servers to run; access is free and messages are priced per delivery.
  • The On-Premises API is fully retired: its last client expired on 23 October 2025.
  • Setup: Meta developer account → app with the WhatsApp use case → test number → system-user permanent token → webhooks.
  • Send with POST /v26.0/<PHONE_NUMBER_ID>/messages. Outside the 24-hour window, only approved templates can be sent.
  • Default throughput is 80 messages per second per number, upgraded automatically to 1,000 for eligible high-volume numbers.

What the Cloud API is

Meta describes the Cloud API as the way to “programmatically message and call on WhatsApp”. It runs on the Graph API, so every action is an HTTPS request with an access token, and Meta pushes incoming messages and delivery updates to your webhook.

Before 2023 many providers ran the On-Premises API on their own servers. Meta stopped adding features to it in January 2024, blocked new registrations from July 2024, and its final client expired on 23 October 2025. Numbers left on it can no longer send or receive messages, so any guide that tells you to install a WhatsApp Business API “client” is out of date.

What you need before you start

  • A Meta developer account and a business portfolio (Meta Business Manager).
  • A phone number that can receive an SMS or voice call for verification and is not already registered on WhatsApp, unless you use coexistence to keep the Business app on it.
  • A display name that follows Meta’s rules. See WhatsApp display name rules.
  • For higher limits and up to 6,000 templates: Meta business verification.
  • An HTTPS endpoint with a valid TLS certificate for webhooks (self-signed certificates aren’t accepted).

How to set up the WhatsApp Cloud API, step by step

These are the steps in Meta’s current “Get started” guide:

  1. Register as a Meta developer and open the App Dashboard.
  2. Create an app with the WhatsApp use case (“Connect with customers through WhatsApp”) and pick your business portfolio.
  3. Use the test number. Meta creates a test WhatsApp account and test number automatically, with relaxed limits and no payment method needed to send templates.
  4. Send the `hello_world` template with the temporary access token shown in the dashboard. It expires quickly, so it’s only for testing.
  5. Set up a webhook (see below) so you receive replies and delivery statuses.
  6. Create a system user in Business Settings, give it full control of the app and the WhatsApp account, and generate a permanent token with business_management, whatsapp_business_messaging and whatsapp_business_management.
  7. Add your real number, verify it and register it, then add a payment method before sending templates at scale.

Sending your first message

Every message is a POST to your phone number ID. A template message, which is what you need to start a conversation, looks like this (Graph API v26.0, the latest version as of October 2026):

PartValue
EndpointPOST https://graph.facebook.com/v26.0/<PHONE_NUMBER_ID>/messages
HeaderAuthorization: Bearer <ACCESS_TOKEN>
Bodymessaging_product: "whatsapp", to: "91XXXXXXXXXX", type: "template", template: { name, language: { code }, components }
Reply in an open chattype: "text" with text: { body: "…" }, or an interactive type

The 24-hour customer service window decides what you may send: once a customer messages you, you can reply with any message type for 24 hours; outside it, only approved template messages. Interactive messages such as reply buttons and lists only work inside the window; see WhatsApp buttons and list messages.

Webhooks: receiving messages and statuses

  • Verification: Meta sends a GET request with hub.mode=subscribe, hub.verify_token (a string you choose) and hub.challenge. Reply 200 and echo the challenge.
  • Security: each event POST carries an X-Hub-Signature-256 header, an HMAC-SHA256 of the body using your app secret. Check it before trusting the payload.
  • The `messages` field delivers incoming customer messages and the sent, delivered, read and failed statuses of yours.
  • Other useful fields: template status and quality updates, phone number quality updates, account alerts and user preferences (such as marketing opt-outs).
  • Retries: anything other than HTTP 200 is retried for up to 7 days, so respond fast and process the event in the background.

Limits you’ll meet

LimitWhat it isValue
ThroughputMessages per second per number80 by default; 1,000 automatically for eligible high-volume numbers; 20 for numbers also on the Business app
Messaging limitUnique people you can message outside the 24-hour window per moving 24 hours, per business portfolio250 → 2,000 → 10,000 → 100,000 → unlimited
TemplatesTemplates per WhatsApp account250 unverified; 6,000 verified with an approved display name
Template creationNew templates per hour100
Webhook payloadMaximum size3 MB

Going over throughput returns error 130429. Messaging limits rise automatically when your quality is high and you use at least half your current limit; more in WhatsApp broadcast limits.

Cloud API directly, or through a provider?

Meta offers both: connect directly, or “pick a partner and onboard through their embedded signup”. Direct access costs nothing extra, but you build everything around the API yourself.

You needDirect Cloud APIProvider such as Automate AI
Sending and receivingYour own codeReady: inbox, campaigns, chatbots
TemplatesCreate via API or WhatsApp ManagerTemplate builder with live preview and approval status
Webhooks, retries, storageYou host and secure themHandled
Team inbox, roles, assignmentBuild itIncluded
BillingMeta bills your cardPrepaid wallet in INR
Your own integrationsFull controlREST API and webhooks on top

If you’re comparing providers, our guide to choosing a WhatsApp Business API provider in India lists what to ask.

Using the Cloud API with Automate AI

Automate AI runs on the official Cloud API. You connect your number through Meta’s signup, and Automate AI handles tokens, webhooks, templates and delivery statuses, while your team works in the shared inbox. Developers still get a REST API and webhooks for contacts, messages, templates and campaigns, so your own systems can send order updates or OTPs without hosting the WhatsApp side themselves.

WhatsApp Settings in Automate AI showing the connected display name, phone number, message limit and a GREEN quality rating
A connected number in Automate AI with its display name, messaging limit and quality rating (sample data).

Frequently asked questions

Is the WhatsApp Cloud API free?

Access is free: Meta hosts it and doesn’t charge a platform fee. You pay Meta per delivered message by category and country; see our WhatsApp API pricing in India guide.

Can I still use the WhatsApp On-Premises API?

No. Its final client expired on 23 October 2025, and numbers still on it no longer send or receive messages. The Cloud API is the only option.

How many messages per second can the Cloud API send?

80 per second per number by default. Meta upgrades eligible numbers to 1,000 automatically, at no cost, when the portfolio has an unlimited messaging limit, the number messages at least 100,000 unique users in 24 hours and its quality is yellow or better.

Why does my access token keep expiring?

Temporary and user tokens are short-lived. Create a system user in Business Settings and generate a permanent token with the WhatsApp permissions for production.

Do I need a developer to use WhatsApp Cloud API?

To use it directly, yes. A provider like Automate AI gives you the inbox, templates, campaigns and chatbots without code, and an API for when you do want to integrate.

Sources

  1. Meta: About the WhatsApp Business Platform
  2. Meta: Get started with the Cloud API
  3. Meta: On-Premises API sunset
  4. Meta: Access tokens
  5. Meta: Send messages
  6. Meta: Create a webhook endpoint
  7. Meta: Throughput
  8. Meta: Messaging limits
  9. Meta: Graph API changelog (v26.0)

WhatsApp rules and prices change. We check these guides against Meta’s documentation, but always confirm current terms with Meta before you rely on them. Questions? Message us on WhatsApp at +91 836 977 8812.