Os acompanhamentos estão em beta. Quando o beta for oferecido à sua equipe, um
proprietário ou administrador da equipe seleciona Participar na linha do
beta de acompanhamentos de campanha por confirmação, na etapa de mensagem do
builder de campanhas, revisa os termos e seleciona Aceitar e participar.
Enquanto sua equipe não tiver entrado e o beta não estiver disponível para ela,
solicitações que definem um acompanhamento, ou que lançam ou copiam uma campanha
que tem um, respondem
403 feature_unavailable. Remover um acompanhamento de um
rascunho sempre funciona.Como funciona o tempo de espera
- A entrega inicia a espera. O acompanhamento vence depois do seu intervalo, contado a partir da primeira vez que o WhatsApp informa que a primeira mensagem foi entregue.
- A leitura tem prioridade. Se o WhatsApp informar que a primeira mensagem foi lida antes de o acompanhamento começar a ser enviado, a espera recomeça a partir dessa primeira leitura. Leituras posteriores não a alteram de novo.
- Sem confirmação, sem acompanhamento. Um acompanhamento nunca é enviado apenas por tempo. Destinatários que desativaram as confirmações de leitura informam somente entregas, então a espera deles começa na entrega.
- Um acompanhamento expirado nunca é enviado. A expiração conta a partir do
envio da primeira mensagem. Um acompanhamento que não for enviado até lá é
marcado como
expirede nunca é enviado.
A janela de envio da campanha também vale:
um acompanhamento que vence fora da janela espera a próxima abertura, desde que
não tenha expirado.
O que cancela um acompanhamento
- O destinatário responde ao número que enviou a primeira mensagem.
- O número de telefone entra na sua lista de opt-outs, seja por uma palavra-chave STOP, pela API, por uma importação ou pelo console. Um START posterior não restaura um acompanhamento cancelado.
- Você encerra a campanha.
- O número de envio muda: é renomeado, conectado de novo como uma nova conexão ou troca de tipo de envio. Um acompanhamento só é enviado pelo número e pela conexão originais.
- Sua equipe sai do beta, ou o beta é desativado.
outcome_unknown até conseguir comprovar o resultado.
Requisitos
- A campanha envia uma única primeira mensagem: uma mensagem composta ou um modelo. Uma campanha com uma sequência de mensagens compostas não pode ser lançada com um acompanhamento.
- O acompanhamento é um texto (de 1 a 16.384 caracteres, com os mesmos
marcadores
{{variable}}da campanha) ou um modelo de mensagem (templateId). O texto do acompanhamento não pode conter links rastreados ({{link:key}}). - Em um número da Cloud API, o acompanhamento segue a mesma regra da janela de 24 horas de qualquer mensagem composta: fora dela, um acompanhamento em texto falha. Use um modelo aprovado para alcançar destinatários fora dessa janela.
- O acompanhamento preenche as variáveis da mesma forma que a primeira mensagem,
incluindo o mapeamento de variáveis da campanha. Um destinatário sem valor
para uma variável que não tem fallback inline não recebe o acompanhamento; ele
termina como
failedcom o motivomissing_variable. O console aceita apenas variáveis que a primeira mensagem ou o seu mapeamento já usam. - Você só pode adicionar, alterar ou remover o acompanhamento enquanto a campanha for um rascunho não lançado. O lançamento o congela.
- Testes A/B e variações ponderadas funcionam com acompanhamentos: a primeira mensagem de cada destinatário inicia a espera dele.
Adicione um acompanhamento
Use o console
Na etapa de mensagem do builder de campanhas, ative Enviar um acompanhamento, escreva a mensagem ou escolha um modelo de mensagem e defina quanto tempo esperar e quando parar de esperar. A etapa de revisão mostra o acompanhamento antes do lançamento.Use a API
EnviefollowUp ao criar ou atualizar um rascunho:
"message": { "type": "template", "templateId": "<template UUID>" }. Envie
"followUp": null para remover o acompanhamento. Na Platform API, envie o mesmo
campo para POST /platform/campaigns ou PATCH /platform/campaigns/{campaignId}.
Um acompanhamento que a API recusa responde 400 invalid_parameter com
param: "followUp". Lançar uma campanha que combina um acompanhamento com uma
sequência de mensagens responde 409 state_conflict.
Leia os resultados dos acompanhamentos
Os resultados dos acompanhamentos são contados separadamente da primeira mensagem. As contagens e os webhooks da primeira mensagem mantêm o seu significado.Análises da campanha
GET /messaging/projects/{projectSlug}/campaigns/{id}/analytics e
GET /platform/campaigns/{campaignId}/analytics retornam um objeto followUps:
Todas as contagens são zero para uma campanha sem acompanhamento.
Destinatários
Cada destinatário deGET /messaging/projects/{projectSlug}/campaigns/{id}/recipients
ou GET /platform/campaigns/{campaignId}/recipients tem um objeto followUp,
ou null quando nenhum acompanhamento foi criado para esse destinatário. Ele
inclui status, anchorKind (delivered ou read), firstDeliveredAt,
firstReadAt, dueAt, expiresAt, sentAt, deliveredAt, readAt,
repliedAt, reason e commandId. Os horários estão em milissegundos Unix.
status é um destes valores: waiting_receipt, scheduled, sending, sent,
cancelled, expired, failed ou outcome_unknown. reason explica um
cancelamento, uma expiração, uma falha ou uma espera, por exemplo reply,
opt_out, wait_expired, campaign_stop, sender_changed,
feature_withdrawn, send_window, sender_unavailable ou missing_variable.
A exportação CSV de destinatários adiciona as colunas followUpStatus,
followUpAnchor, followUpDueAt, followUpExpiresAt, followUpSentAt,
followUpReadAt, followUpRepliedAt, followUpReason e followUpCommandId.
Histórico da campanha
GET /platform/campaigns/{campaignId}/events registra cada mudança de estado de
um acompanhamento como um evento followup.<status>, como followup.scheduled
ou followup.cancelled, com o destinatário, o número de envio e o motivo. Ele
nunca contém o texto da mensagem nem números de telefone. As mesmas mudanças de
estado aparecem nos Logs do Console como linhas
campaign.followup.<status>. Os acompanhamentos não adicionam eventos de
webhook.