Skip to content
PaalChat Docs

Use cases

Bulk announcements

Send one announcement to hundreds of parents or customers, safely.

.md

In a nutshell

Write one row per recipient first, then send each from a queue with its own reference, paced under 300 requests per minute. If anything crashes, resend everything unconfirmed - references stop duplicates.

The flow

  1. Choose an approved template - announcements start conversations, so they must be templates.
  2. Create one row per recipient in your database before sending anything.
  3. Queue the sends with reference: "announcement-{id}-{recipient id}".
  4. Pace them under your product's 300 requests per minute - across all your businesses.
  5. Resume after failure by resending every row not yet 202/200: the same references never send twice.

Limits that apply

Limit What happens
PaalChat: 300 requests/minute per product 429 rate_limited - wait Retry-After
Meta: the business's messaging_limit tier Sends beyond it fail as message.status failed
Meta: marketing opt-outs 131050 failures for users who stopped marketing messages

Check the business's messaging_limit with GET .../whatsapp before a large send, and split the audience across days if needed.

Warning

Use UTILITY templates for information parents expect (closures, exams, fees). Promotional content is MARKETING, costs more, and is limited more by Meta.