Sign inGet started

Suppressions

Een suppression is een adres dat je werkruimte niet zal berichten, vastgelegd met een bereik. Bird blokkeert een verzending naar een onderdrukt adres voordat deze WhatsApp bereikt.
Open de Suppressions-pagina om met de lijst te werken, of gebruik de API hieronder. Records die door ontvangers zijn opgegeven staan op het tabblad Preferences van dezelfde pagina en volgen andere regels.
Een lijst van vier geblokkeerde nummers, elk gekoppeld aan alle zakelijke accounts of aan één specifiek account

Een business account onderdrukken

Maak vanuit het tabblad Suppressions een suppression aan voor een telefoonnummer en kies het business account waarvoor het geldt. Bird blokkeert berichten van dat account, en je andere accounts kunnen het nummer nog steeds berichten. De kolom Business account in de lijst vermeldt het account waarvoor een suppression geldt, of toont All accounts als het je hele werkruimte dekt.
POST /v1/whatsapp/suppressions legt hetzelfde vast vanuit code. waba is het account waarvoor je het wilt laten gelden; laat het weg om het adres te blokkeren voor je hele werkruimte, inclusief accounts die je later koppelt:
// Omit waba to block the address for the whole workspace, whichever account
// sends. With it, your other accounts keep reaching them, and the same
// address for two accounts is two records.
const suppression = await bird.whatsapp.suppressions.add({
  address: "+15550001234",
  waba: "102290129340398",
});
console.log(suppression.id, suppression.applies_to);
Een dialoogvenster voor het blokkeren van een nummer, met het bereik ingesteld op één zakelijk account

Eén bereik, één record

Een suppression heeft één bereik, dus hetzelfde adres geblokkeerd voor twee accounts levert twee records op in plaats van één. Om je hele werkruimte te dekken, doe je één aanroep zonder waba.
Een adres toevoegen dat al onderdrukt is voor dat bereik geeft 200 terug met het bestaande record, in plaats van een tweede aan te maken. Een nieuw record geeft 201 terug.
Een suppression wordt gesleuteld op het adres dat je vastlegt. Een ontvanger bereikt via telefoonnummer en dezelfde ontvanger bereikt via een business-scoped user ID zijn twee sleutels, dus het onderdrukken van het ene onderdrukt het andere niet. Leg beide vast als je dezelfde persoon op beide manieren aanspreekt.

Je suppressionlijst lezen

GET /v1/whatsapp/suppressions geeft de actieve suppressions terug, nieuwste eerst, als een cursorpagina. address filtert op prefix en negeert hoofdletters: een gedeeltelijke waarde matcht elk adres eronder, en een volledige waarde matcht alleen dat adres. reason beperkt tot een categorie, zoals manual voor de suppressions die je zelf hebt toegevoegd:
// address is a prefix, so a partial value matches every address under it.
const suppressions = await bird.whatsapp.suppressions.list({ address: "+1555" });
for (const suppression of suppressions.data ?? []) {
  console.log(suppression.address, suppression.waba ?? "every account");
}
De lijst bevat wat actief is; beëindigde records worden weggelaten. Een ontbrekend adres bewijst niet dat de werkruimte het nooit heeft onderdrukt; het record kan beëindigd zijn. Lees het op ID om het te bevestigen.

Eén record lezen

GET /v1/whatsapp/suppressions/{suppression_id} geeft zowel een beëindigd record als een actief record terug, met vermelding van wanneer het is beëindigd en waardoor:
// Resolves a record that has already ended, which the list leaves out.
const suppression = await bird.whatsapp.suppressions.get("was_01krdgeqcxet5s7t44vh8rt9mg");
console.log(suppression.reason, suppression.ended_at ?? "still in force");

Een suppression beëindigen

De actie Delete op een suppressionrij beëindigt de suppression in plaats van deze te verwijderen. De blokkering stopt. Het record blijft leesbaar en toont wanneer het is beëindigd en door wie. DELETE /v1/whatsapp/suppressions/{suppression_id} doet hetzelfde en geeft 204 terug:
// Only a manual suppression can be ended; a recipient's own opt-out is
// theirs to reverse. The record is kept and still reads back by id.
await bird.whatsapp.suppressions.remove("was_01krdgeqcxet5s7t44vh8rt9mg");
Een suppression die je zelf hebt toegevoegd heeft reden manual en kan worden beëindigd. De eigen opt-out van een ontvanger kan alleen door henzelf worden teruggedraaid, en de poging geeft 422 terug. Opnieuw aanroepen op een suppression die al beëindigd is slaagt en verandert niets, en een ID dat de werkruimte niet bevat geeft 404 terug.
Het beëindigen van een suppression vereist het ID ervan, dus zoek het eerst op via de lijst.

Nieuwe suppressions volgen

whatsapp_suppression.created wordt geactiveerd wanneer een suppression wordt vastgelegd, zodat je eigen systeem nieuwe blokkeringen kan zien zonder te pollen. De payload bevat:
  • suppression_id, de identifier van het record.
  • address, het onderdrukte nummer in E.164-formaat.
  • waba, het account waartoe de blokkering beperkt is, of null wanneer het de hele werkruimte dekt.
  • reason en workspace_id.
Er wordt geen event geactiveerd wanneer een suppression eindigt, dus lees de lijst opnieuw voordat je een kopie vertrouwt die je bewaart. Zie WhatsApp events voor de volledige payload.

Volgende stappen