O que são mensagens livres?
Mensagens livres são mensagens que você envia sem precisar de um template aprovado. Você pode enviar texto, imagem, áudio, vídeo, documento — qualquer formato suportado — com total liberdade de conteúdo. A única condição: a janela de conversa de 24 horas precisa estar aberta.Quando posso usar?
A janela abre quando o cliente envia uma mensagem para você. A partir desse momento, você tem 24 horas para enviar mensagens livres. Cada nova mensagem do cliente reinicia o timer.E se a janela estiver fechada?
Se o cliente não enviou mensagem nas últimas 24 horas, a janela está fechada. Nesse caso, a única opção é enviar um template aprovado pela Meta através do endpoint Enviar template. Depois que o cliente responder o template, a janela reabre e você volta a poder usar mensagens livres.Precisa enviar um template? Veja como na página Enviar template. Para criar e gerenciar seus templates, acesse a seção Templates.
Tipos disponíveis
Todos os endpoints desta seção utilizam a mesma rota:POST /v1/channels/{channelId}/messages
O que muda é o campo content.type:
Resposta da API
Quando o envio é aceito, a API responde200 com o identificador da mensagem:
messageId é uma string hexadecimal de 32 caracteres maiúsculos. Guarde esse valor: ele é necessário para responder, reagir ou deletar a mensagem depois.
Esse é o mesmo valor que chega no seu webhook como
message._id. Use-o para reconciliar a chamada de envio com o evento recebido — veja a estrutura dos payloads.Erros no envio
Quando a API recusa o envio, a mensagem não é enviada. A resposta traz o status HTTP do motivo e o código do erro:Canal desconectado
Se o canal não estiver conectado no momento da chamada, a API responde422 com code BUSINESS_RULE_VIOLATION e subCode CHANNEL_DISCONNECTED, o corpo do exemplo acima. A mensagem não é enviada e não fica guardada para sair depois.
Para voltar a enviar, conecte o canal de novo (veja Conectar um canal) e repita a chamada.
Outros erros
Recusas feitas antes de a mensagem seguir para o envio, como Secret Key inválida ou assinatura inativa, vêm em outro formato, só com o campo
error.