Broadcasts

Uma campanha.Milhares de contatos.

Monte a lista em lotes de mil, dê a cada destinatário as suas próprias variáveis e envie pelo canal que faz sentido — ou deixe cada contato ser alcançado do jeito que funciona para ele. O custo é reservado antes da primeira mensagem sair, e o envio é legível enquanto acontece.

Canais que uma campanha pode tomar

smartsmssms_onewaywhatsapptelegramemail

Seis valores, e nenhum outro. smart decide contato a contato, e por isso responde à mesma verificação que SMS e email — ele pode rotear para qualquer um dos dois.

O que trava um envio

Rascunhar é grátis. Enviar não.

A verificação trava o envio, nunca o rascunho. Escolha um canal e leia exatamente o que ele exige, o que revisa o conteúdo e o que um envio bloqueado devolve.

Canal
VerificaçãoKYC + KYB

As duas. Verificação de identidade (KYC) e de empresa (KYB), e passar em uma não basta. smart não é exceção: pode rotear um contato para SMS ou para email, então responde à mesma régua que eles.

Revisão

Primeiro revisão automática de conteúdo, depois uma pessoa libera antes de qualquer coisa sair.

Se estiver bloqueado

403 kyc_required ou 403 kyb_required, nomeando a que estiver faltando.

Nada disso toca um rascunho. Crie a campanha, adicione todos os destinatários, reescreva o texto — sem verificação e sem cobrança. Os controles rodam no envio.

A máquina de estados

Doze estados. Percorra-os.

Todo estado que uma campanha pode reportar, e todo movimento entre eles. Clique num estado para lê-lo; pressione uma transição para tomá-la.

BroadcastStatus
Atualdraft

Rascunho

Criada, não submetida. Não custa nada, não pede verificação, e pode ser editada e reabastecida pelo tempo que você quiser.

O que aceita

  • PATCH /v1/broadcasts/{id} — reescreva o texto
  • POST /v1/broadcasts/{id}/contacts — adicione até 1.000 destinatários por chamada
  • DELETE /v1/broadcasts/{id} — descarte-a
  • POST /v1/broadcasts/{id}/send — submeta-a

Cada movimento acima dispara o webhook broadcast.status_changed, então nada disso precisa ser consultado para ser notado.

Uma campanha, uma mensagem para cada

Cada destinatário leva as suas próprias variáveis.

Um lote é uma lista de destinatários, cada um com o seu próprio objeto templateVariables. Edite o corpo ou qualquer linha e veja o que aquela pessoa realmente recebe — e o que o endpoint responderia.

contacts[]
01

added

+14155551234

Hi John, order ORD-001 shipped today.

02

added

+5491133445566

Hi Lucía, order ORD-002 shipped today.

03

added

mara@example.com

Hi Mara, order ORD-003 shipped today.

Resposta

3

added

0

duplicates

0

invalid

Até 1.000 destinatários por requisição, chamada quantas vezes a lista precisar. Duplicados e inválidos voltam contados, com um motivo cada, em vez de serem descartados em silêncio. Templates de WhatsApp aceitam mais dois objetos por destinatário: templateButtonVariables, indexado por botão, e templateHeaderVariables, indexado por 1.

Enquanto roda

Contagens, custo e uma hora de término.

Uma única chamada responde com o quadro inteiro. Arraste o envio para a frente, ou cancele-o em pleno voo e veja o que acontece com os destinatários que ainda não tinham saído.

status sending

48%

percentComplete

5,000 destinatários

startedAt 10:30 · eta 10:45

2,500

pending

100

sending

2,352

delivered

48

failed

0

skipped

$75.00

estimatedCost

$75.00

reservedAmount

$35.28

actualCost

O custo estimado é reservado do seu saldo quando o envio começa, para que uma campanha não fique pela metade por falta de fundos. actualCost acumula sobre o que foi entregue, e a diferença volta.

Quatro chamadas

Broadcasts está no SDK.

Crie, preencha, envie, acompanhe. Métodos reais em TypeScript e Python, e os mesmos quatro passos sobre HTTP puro.

create.ts
npm add @zavudev/sdk
import Zavudev from '@zavudev/sdk';

const zavu = new Zavudev({ apiKey: process.env['ZAVUDEV_API_KEY'] });
// channel: smart | sms | sms_oneway | whatsapp | telegram | email
const broadcast = await zavu.broadcasts.create({
  name: 'October update',
  channel: 'smart',
  text: 'Hi {{name}}, order {{order_id}} shipped today.',
});

console.log(broadcast.id, broadcast.status); // -> "draft"

Escreva uma vez. Alcance todos.

Comece grátis, sem cartão. Rascunhos não custam — a verificação só é pedida no envio, e nunca no WhatsApp.

Broadcasts | Campanhas para milhares de contatos — Zavu | Zavu