How it works
1
Export your consent changes
Produce the list of contacts to suppress and the list to re-enable. Repeats inside one list are fine β the same contact listed twice counts once.
2
Suppress
Call Add opt-outs with up to 10,000 contacts. Campaigns and messages skip them from that point on.
3
Re-enable
Call Remove opt-outs for contacts who consented again. This reverses only the suppressions this API recorded.
4
Reconcile
Each response reports what changed, what was already in that state, and which entries could not be read. Unreadable entries are dropped and counted rather than failing the whole batch.
Identifying a contact
Every entry names one contact through either field:client takes precedence when both are set. userId is read only when client is empty.
These are the same identifier rules as Send Campaigns, so a system that already targets contacts for campaigns can suppress them without a second identifier mapping.
Opt-outs are recorded per channel. Both routes act on WhatsApp.
Endpoints
Add opt-outs
POST /v1/businesses/{businessId}/add/opt_outs β suppress up to 10,000 contacts.Remove opt-outs
POST /v1/businesses/{businessId}/remove/opt_outs β re-enable contacts this API suppressed.