Sign inGet started

Enviando reações no WhatsApp

Reaja à mensagem de um contato com um emoji, como um joinha para confirmar a resposta. Você pode substituir sua reação ou removê-la depois.

Pré-requisitos

Você precisa de uma chave API com permissão de escrita em WhatsApp e o ID de mensagem Bird (wam_…) de uma mensagem recebida pelo seu espaço de trabalho. Use data.whatsapp_id de whatsapp.received, ou o id da mensagem no log de WhatsApp.
Substitua o ID de mensagem de exemplo pelo ID de uma mensagem recebida pelo seu espaço de trabalho. Inicialize o client para a sua linguagem usando o guia de SDK do TypeScript, Python, Go ou PHP. Para exemplos em CLI, instale e autentique o CLI com acesso de escrita em WhatsApp. Use o host API da sua região do espaço de trabalho nas requisições cURL.

1. Adicionar uma reação

Chame Reagir a uma mensagem WhatsApp com um emoji:
const reaction = await bird.whatsapp.reaction.set("wam_01krdgeqcxet5s7t44vh8rt9mg", {
  emoji: "👍",
});
console.log(reaction.id, reaction.emoji);
O API retorna 202 com o id (war_…) e o emoji da reação aceita. Salve o ID da reação para encontrar o resultado no log de reações. A aceitação não confirma que WhatsApp aplicou a reação.
Você mantém uma reação por mensagem. Para substituí-la, repita a requisição PUT com um emoji diferente. Reações não são cobradas.

2. Verificar o resultado da reação

Recupere a mensagem para ver as reactions atuais, com uma entrada por remetente. Para o resultado de uma alteração específica, liste os eventos de reação da mensagem e encontre o ID da reação salvo.
O log de reações registra resultados terminais: sent significa que WhatsApp aceitou sua alteração, failed significa que WhatsApp a recusou, e rejected significa que Bird a recusou antes da transmissão. Inspecione o error do evento para uma alteração com falha ou recusada. Uma reação pendente ainda não tem entrada no log. Reações não possuem confirmações de entrega ou leitura nem webhook de reação de saída.

3. Remover sua reação

Chame Remover uma reação WhatsApp com o mesmo ID de mensagem:
await bird.whatsapp.reaction.remove("wam_01krdgeqcxet5s7t44vh8rt9mg");
O API retorna 202 sem corpo na resposta. A remoção é processada de forma assíncrona; verifique as reactions atuais da mensagem ou o log de reações para confirmar o resultado. Uma entrada de remoção no log tem emoji: null. Remover uma reação inexistente é seguro, e essa operação remove a reação do seu espaço de trabalho, não a do contato.

Solução de problemas

  • 404 (E15071): Verifique o ID da mensagem alvo e o espaço de trabalho. Bird retém a referência da mensagem necessária para adicionar ou remover uma reação por 15 dias.
  • 422 (E01001): Use uma mensagem recebida e um único emoji. Você não pode reagir a uma mensagem enviada pelo seu espaço de trabalho. Um emoji combinado conta como um emoji; dois emoji separados não.
  • Reação inalterada após 202: Inspecione o log de reações para uma alteração com falha ou recusada. Uma resposta HTTP bem-sucedida confirma a aceitação para processamento.

Próximos passos