Rate limits

Each API key is limited to 60 requests per minute at the merchant level. The limit protects stability and is independent of your other systems — but keys belonging to the same merchant share the budget, so use exponential backoff when you receive a 429.

429 too many requests
{
  "message": "Too Many Attempts."
}

Handling 429

  • Wait for the Retry-After header, then retry.
  • Use exponential backoff (1s, 2s, 4s…) with a maximum attempt count.
  • For bulk sends, use a queue in your system instead of parallel loops.
  • Pairing sends with an Idempotency-Key makes retried requests safe.

WhatsApp's own limits

Meta enforces separate per-number tier limits on the WhatsApp side, independent of the Nabbih API limit; sends may be rejected by the provider — track message status to see the final outcome.