Direct Send API reference
Updated: Jul 31, 2026
Copy for LLM
Endpoints
| Endpoint | Method | Description | Details |
|---|---|---|---|
/<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/messages | POST | Send a utility or authentication message with the category field | |
/<WABA_ID>/message_templates | GET | List generated templates; filter by source=AUTO_GENERATED and correct_category |
Authentication
Direct Send uses standard WhatsApp Business Platform authentication. Include your access token with each request, the same way you do for other Cloud API calls. See Get started with the Cloud API.
Rate limits
Direct Send supports standard Cloud API throughput. See Cloud API throughput eligibility and Supported features and limits.
Error codes
| Error code | Description |
|---|---|
100 | The request included one or more unsupported or misspelled parameters. Returned when you provide a TTL value on a message that doesn’t use Direct Send. |
100 | The time-to-live value must be lower than or equal to 43200 (TTL over 12 hours). |
100 | The time-to-live value must be higher than or equal to 30 (TTL under 30 seconds). |
100 | Direct Send isn’t enabled for this account. Returned synchronously when an ineligible WhatsApp Business Account sends a message with a category value. See Sending a message with an ineligible account. |
2388330 | Can’t delete a Direct Send template. |
2388318 | Can’t update a Direct Send template. |
139200 | Direct Send utility or authentication access is blocked. Direct Send messaging capability is not available for this WABA due to misclassification-based enforcement. |
131064 | Direct Send messaging limit reached due to category-misclassification enforcement. The WABA is rate-limited for the current 24h window; further utility Direct Send messages are blocked until the next window opens. |
132015 | Template is temporarily unavailable because it was paused due to low quality. |
132021 | A template with the same name already exists. The template_name in direct_send_config conflicts with an existing template not created by Direct Send. Choose a different name. Delivered asynchronously via the error webhook. |
131000 | Generic infrastructure failure (“Something went wrong”). Returned when a template_name template can’t be created after retries — see Business-named templates. |