Rate limit
Each API key may send up to 60 messages a minute. Above that the API answers 429 rate_limited with a Retry-After header in seconds. The limit is per key, so a second system on its own key has its own allowance. Need more? Contact us.
File uploads have an allowance of their own. Each API key may upload 30 files a minute; above that the API answers 429 rate_limited with a Retry-After header. Uploads are free and never touch your credits.
Credits
Sends are paid for with the same prepaid credits as campaigns: utility and authentication templates cost 1 credit, marketing templates cost 4. The debit happens before the send. If our messaging platform refuses the message, or WhatsApp later reports it failed, the credits come back automatically and the message shows FAILED.
When the balance cannot cover a send the API answers 402 insufficient_credits and nothing is sent. Top up in the app under Credits. Before your first payment the API sends free test messages to your own verified number only — the number you signed in with — from the same free allowance as the app. Those sends answer credits 0, sandbox true and free_sends_remaining; any other number answers 402 until you add credits.