Pular para o conteúdo principal

Conceituação

Troca o texto de uma mensagem de texto que o seu canal já enviou. O destinatário vê o texto novo no lugar do antigo, com a marca de editada do aplicativo. Nenhuma mensagem nova é enviada.
  • channelId: o canal que enviou a mensagem.
  • messageId: o messageId que o envio devolveu. O contents[].identifier recebido no webhook também é aceito.
Só o WhatsApp Web e o Telegram permitem edição. Em WhatsApp Meta, Instagram e Messenger, a API recusa o pedido com 422 e subCode EDIT_NOT_SUPPORTED, e nada é enviado ao contato. Veja Limitações por canal.

Corpo da requisição

Destinatário e remetente não são pedidos: valem os da mensagem original. Só texto pode ser editado: a legenda de imagem, vídeo ou documento não é editável e recebe 422 MESSAGE_NOT_EDITABLE.

Resposta

200 com o messageId da mensagem editada:
O 200 confirma que a edição foi aceita e encaminhada ao canal, não que o aplicativo do contato já mostra o texto novo. Se o canal recusar depois (por exemplo, o contato bloqueou o bot no Telegram ou a mensagem foi apagada), o texto do contato não muda e a API não envia aviso dessa recusa.

Erros

Trate as recusas pelo subCode. O texto de message pode mudar. O formato do corpo de erro está em Erros no envio.

Editar pelo envio

O envio (POST /v1/channels/{channelId}/messages) com content.body.editMessageId também é tratado como edição da mensagem indicada, com as mesmas regras e as mesmas recusas desta página. Ele nunca envia uma mensagem nova. Prefira o PUT, que deixa a intenção explícita.

Limitações por canal

No Telegram, um texto acima de 4.096 caracteres também recebe 200, mas o Telegram recusa a edição e o texto do contato não muda. Mantenha a edição dentro desse limite.