Skip to main content

Mensagem

Conceito

Nas mensagens teremos que nós atentarmos para quem eviaremos a mensagem se é para um número individual ou para um grupo.


Métodos

/messages

POST https://api.jlivery.com/api/v1/wa/SEU_TOKEN/messages

Esse método irá enviar a mensagem para o destinatario.

Veja o exemplo:

{
"recipient_type": "group",
"to": "120363045609459594",
"type": "text",
"text": {
"preview_url": false,
"body": "Teste \n https://www.amazon.com.br/ \n ",
"delay": 3,
"delay_typing": 15
}
}

O exemplo acima é de um envio de mensagem para um grupo.

Repare que precisamos passar o recipient_type para sabermos se é para um grupo ou individuo que a mensagem será enviada. Reparando também no tipo de mensagem que será enviada no exempo foi do tipo text.

Podendo também especificar o delay_typing, que tem como padrão o valor de 1 á 3 segundos podendo chegar no maximo 15 segundos.

O mesmo se aplica para o delay, que também tem como padrão o valor de 1 á 3 segundos podendo chegar no maximo 15 segundos.

Se atentar que o tipo delay_typing é o tempo para retornar um "digitando..." ou "gravando audio.." por exemplo. Enquanto o delay se refere ao tempo de uma mensagem para outra.

Veja as duas formas de enviar para um número Individuo e para um Grupos :

Individual

{
"recipient_type": "individual", //Recipient_type com o valor "individual" para um envio individual.
"to": "55xxxxxxxxxxx", // Para o envio Individual passamos o número destinatario.
"type": "text",
"text": {
"preview_url": false,
"body": "Teste \n https://www.amazon.com.br/ \n ",
"delay": 5,
"delay_typing": 15
}
}

Grupo

{
"recipient_type": "group", //Recipient_type com o valor "group" para um envio para um Grupo.
"to": "120363045609459594", // Para o envio de mensagens para o Grupo passamos o ID do grupo.
"type": "text",
"text": {
"preview_url": false,
"body": "Teste \n https://www.amazon.com.br/ \n ",
"delay": 8,
"delay_typing": 5
}
}

Response

200

{
"status": 200,
"message": "",
"data": {
"id": "3EB00644519D47FCE5DCA9", // Ele cria o id da mensagem mas não salva a mensagem
"timestamp": "2023-10-21T13:44:56Z"
}
}

Veja o exemplo de envio de mensagem para uma pessoa individual e o tipo de mensagem image:

{
"recipient_type": "individual",
"to": "55xxxxxxxxxxx",
"type": "image",
"image": {
"link": "https://download.samplelib.com/png/sample-boat-400x300.png",
"caption": "Teste de envio de imagem essa é uma legenda 🤖 ",
"file": "{{imagex}}", // imagex é uma variavel criada no nosso teste usando o postman.
"delay": 1
}
}

200

{
"status": 200,
"message": "",
"data": {
"id": "3EB04AADDF16CCEAB3AA66",
"timestamp": "2023-10-21T13:48:00Z"
}
}

Webhook

{
"type": "status",
"message_id": "3EB00EBB7C31C85E3F8C6B",
"instance_id": "3CD90p178gO4256",
"chat": "55xxxxxxxxxxx",
"display_name": "",
"picture_url": "",
"push_name": "",
"sender": "55xxxxxxxxxxx",
"is_group": false,
"is_edit": false,
"from_me": true,
"broadcast": false,
"timestamp": "2023-10-25T19:14:11Z",
"status": {
"status": "sender"
}
}

Tipos

Veja os tipos que podem ser utilizados:

{
"image": {
"link": "https://download.samplelib.com/png/sample-boat-400x300.png",
"caption": "Teste de envio de imagem essa é uma legenda 🤖 "
},

"video": {
"link": "https://download.samplelib.com/mp4/sample-5s.mp4",
"caption": "Teste de envio de video essa é uma legenda 🤖 "
},

"document": {
"link": "https://www.thecampusqdl.com/uploads/files/pdf_sample_2.pdf",
"caption": "Teste de envio de documento essa é uma legenda 🤖 "
},
"audio": {
"link": "https://getsamplefiles.com/download/ogg/sample-3.ogg"
},
"location": {
"longitude": -7.1430448,
"latitude": -34.909542,
"name": "Bairro XXXX",
"address": "Rua XXXXX, Número XXXXX, João Pessoa - PB, 58090-842"
},
"contact": {
"full_name": "Fulano",
"phone": "+55xxxxxxxxxxx"
},
"sticker": {
"link": "https://mathiasbynens.be/demo/animated-webp-supported.webp",
"animated": true
},
"interactive": {
// nos botões usamos o id como referencia para a açao do mesmo podendo ser entre REPLY, URL e PHONE.
"message": "Bem vindo ao atendimento da empresa X",
"title": "Meu Bot",
"footer": "Atendimento automatico",
"button_actions": [
{
"id": "atendimento1",
"type": "reply",
"label": "Quero ser atendido"
},
{
"url": "https://www.whatsapp.com/otp/copy/1234",
"type": "url",
"label": "Seu código secreto"
},
{
"id": "55xxxxxxxxxxx",
"type": "phone",
"label": "Fulano"
}
]
},
"delay": null, // podendo usar de 1 á 15 segundos.
"delay_typing": 15, // podendo usar de 1 á 15 segundos.
"file": "{{imagex}}" // file é um type que enviar um arquivo em base64.
}
AVISO

Nas últimas atualizações do whatsapp os botões Não estão funcionando como deveria, funcionando apenas nos dispositivos da plataforma Iphone mas estamos trabalhando para solucionar esse problema o mais breve.