Formato de proveedores WhatsApp
Esta página ofrece una detallada referencia sobre los formatos JSON destinados a los mensajes de proveedores de WhatsApp. Aquí se presentan todos los tipos de mensajes disponibles. Hasta la fecha, la integración ha sido exitosamente llevada a cabo con Gupshup, Infobip y ciertos tipos de mensajes para Whatsapp Business.
- 1 Botones Interactivos
- 1.1 Propiedades
- 1.2 Texto
- 1.3 Documento
- 1.4 Imagen
- 1.5 Video
- 2 Lista de botones interactiva
- 2.1 Propiedades
- 3 Contacto
- 3.1 Propiedades
- 4 Ubicación
- 4.1 Propiedades
- 5 Call to Action (solo Gupshup y Gupshup V3)
- 5.1 Propiedades
- 6 Templates/HSM
- 6.1 Gupshup y Whatsapp Business
- 6.2 Propiedades
- 6.3 Text
- 6.4 Botones
- 6.5 Video
- 6.6 Imagen
- 6.7 Documento
- 6.8 Infobip
- 6.9 Body
- 6.10 Video
- 6.11 Image
- 6.12 Imagen/Button
- 6.13 Location
- 6.14 Documento
- 6.15 Carousel (MM Lite / Gupshup v3 Exclusive)
Botones Interactivos
Propiedades
Propiedad | Descripción | Requerido | Límite de caracteres |
header | Contiene las propiedades de la parte superior del elemento. | Si | N/A (objeto) |
text | Contiene el texto incluido en la cabecera. | Si* | 60 |
imageUrl | Contiene la URL de la imagen en la cabecera. | Si* | N/A (el límite es de tamaño: 5 MB) |
videoUrl | Contiene la URL del video en la cabecera. | Si* | N/A (el límite es de tamaño: 16 MB) |
documentUrl | Contiene la URL de la ubicación del documento. | Si* | N/A (el límite es de tamaño: 100 MB) |
filename | Nombre del archivo para enviar tipo documento. | No | No documentado por Meta |
body | Contiene el texto que aparecerá debajo de la cabecera. | Si | 1024 |
buttonsList | Contiene un array con los botones. (1-3) | Si | N/A (máximo 3 botones) |
button | Información del botón.
| Si Si Si |
|
footer | Contiene el texto que era en el pie del elemento. | No | 60 |
*Solo una de estas propiedades es requerida, dependiendo de cuál será el tipo de la cabecera de los botones interactivos. Ej: imageUrl > Tipo Imagen, text > Tipo texto, etc.
Texto
{
"interactiveButtons": {
"header": {
"text": "text"
},
"body": "body text",
"buttonsList": [
{
"id": "1",
"title": "Si"
},
{
"id": "2",
"title": "No"
}
],
"footer": "footer"
}
}Documento
{
"interactiveButtons": {
"header": {
"documentUrl": "https://integraccs.ucontactcloud.com/attachments/20220201/000ESPMarcadores.pdf",
"filename": "Marcadores"
},
"body": "body text",
"buttonsList": [
{
"id": "1",
"title": "Si"
},
{
"id": "2",
"title": "No"
}
],
"footer": "footer"
}
}Imagen
{
"interactiveButtons": {
"header": {
"imageUrl": "https://integraccs.ucontactcloud.com/attachments/20220201/e2f3323a-2cb3-4ff7-9e81-1ff4ce893d26.logo192.png"
},
"body": "body text",
"buttonsList": [
{
"id": "1",
"title": "Si"
},
{
"id": "2",
"title": "No"
}
],
"footer": "footer"
}
}Video
{
"interactiveButtons": {
"header": {
"videoUrl": "https://integraccs.ucontactcloud.com/attachments/20220201/e2f3323a-2cb3-4ff7-9e81-1ff4ce893d26.sample.mp4"
},
"body": "body text",
"buttonsList": [
{
"id": "1",
"title": "Si"
},
{
"id": "2",
"title": "No"
}
],
"footer": "footer"
}
}Lista de botones interactiva
Propiedades
Propiedad | Descripción | Requerido | Límite de caracteres |
header | Texto ubicado en la cabecera del elemento. | No | 60 |
body | Texto ubicado por debajo de la cabecera. | Si | 4096 |
buttonMenu | Texto en el botón para abrir el menú. | Si | 20 |
sections | Arreglo con las secciones (1-2). | Si | N/A (arreglo) |
title | Título para cada sección. | No* | 24 |
rows | Arreglo con las diferentes opciones. | Si | N/A (máximo 10 filas en total entre todas las secciones) |
row | Información de cada opción:
| Si
|
|
footer | Texto ubicado en el pie del elemento. | No | 60 |
*Requerido en caso de tener más de una sección.
El rango de opciones de cada sección es de 1-10
{
"interactiveList": {
"header": "Header",
"body": "Some text",
"buttonMenu": "Choose one",
"sections": [
{
"title": "First section title",
"rows": [
{
"id": "1",
"title": "first row title",
"description": "first row description"
},
{
"id": "2",
"title": "second row title",
"description": "second row description"
}
]
},
{
"title": "Second section title",
"rows": [
{
"id": "3",
"title": "third row title"
}
]
}
],
"footer": "Footer"
}
}Contacto
Propiedades
Propiedad | Descripción | Requerido | Límite de caracteres |
firstName | Primer nombre. | Si | No documentado por Meta |
lastName | Apellido. | No | No documentado por Meta |
middleName | Nombre del medio. | No | No documentado por Meta |
formattedName | Nombre y apellido sin espacio. | Si | No documentado por Meta |
namePrefix | Prefijo usado en el nombre. | No | No documentado por Meta |
birthday | Fecha de nacimiento. | No | N/A (formato YYYY-MM-DD) |
phones | Arreglo con los distintos teléfonos. | No | N/A (arreglo) |
phone | Número y tipo del teléfono.
| No | No documentado por Meta |
emails | Arreglo con los distintos emails. | No | N/A (arreglo) |
Dirección de correo y el tipo.
| No | No documentado por Meta | |
addresses | Arreglo con los distintas direcciones. | No | N/A (arreglo) |
address | Información de cada dirección.
| No | No documentado por Meta |
org | Información de la organización donde trabaja.
| No | No documentado por Meta |
urls | Arreglo con los diferentes URLs. | No | N/A (arreglo) |
url |
| No | No documentado por Meta |
{
"contact": {
"firstName": "Test",
"lastName": "Integra",
"formattedName": "TestIntegra",
"namePrefix": "Mr",
"middleName": "Algo",
"birthday": "2022-01-21",
"phones": [
{
"type": "WORK",
"phone": "308740239"
}
],
"emails": [
{
"email": "testing@integraccs.com",
"type": "WORK"
}
],
"addresses": [
{
"type": "WORK",
"street": "Paseo de la Carretas",
"city": "Montevideo",
"country": "Uruguay",
"zip": "11800",
"state": "MV"
}
],
"org": {
"company": "Integra",
"department": "Development",
"title": "Senior Developer"
},
"urls": [
{
"url": "https://www.net2phone.com",
"type": "WORK"
}
]
}
}Ubicación
Propiedades
Propiedad | Descripción | Requerido | Límite de caracteres |
address | Dirección del lugar en el mapa: calle y ciudad. | No | No documentado por Meta |
name | Nombre del lugar. | No | No documentado por Meta |
latitude | Coordenada específica norte-sur. | Si | N/A (valor numérico en grados decimales) |
longitude | Coordenada específica este-oeste. | Si | N/A (valor numérico en grados decimales) |
{
"location": {
"address": "Bv. Gral. Artigas 1825 Departamento de Montevideo",
"name": "Tres Cruces Shopping",
"latitude": "-34.8938251",
"longitude": "-56.1685413"
}
}Call to Action (solo Gupshup y Gupshup V3)
Los botones de URL de CTA permiten a una marca asignar cualquier URL a un botón para que la URL sin formato no se incluya directamente en el cuerpo del mensaje interactivo. Después de recibir el mensaje, los consumidores pueden hacer clic en el botón CTA y el enlace proporcionado se abrirá en su navegador predeterminado.
El tipo puede ser video, imagen o texto.
Propiedades
Propiedad | Tipo | Requerido | Descripción | Límite de caracteres |
|---|---|---|---|---|
body | texto | Si | Texto del mensaje | 1024 |
type | texto | Si | Tipo del mensaje | N/A (video, imagen o texto) |
button_text | texto | Si | Texto presente en el botón | 20 |
url | texto | Si | URL donde se redirige el boton | No documentado (debe comenzar con http:// o https://) |
footer | texto | No | Footer del mensaje | 60 |
mediaUrl | texto | No* | Url del video o imagen. | N/A (el límite es de tamaño del archivo) |
*Requerido si el tipo es imagen o video
{
"CTA":{
"body":"prueba",
"type":"video",
"button_text":"Visit page",
"footer":"footer",
"url":"https://www.net2phone.com/",
"mediaUrl":"https://elearning.ucontactcloud.com/attachments/20240909/86aa0229-2b7b-484a-8393-fc8a7c2bf020.uContact.mp4"
}
}
Templates/HSM
Gupshup y Whatsapp Business
Propiedades
Propiedad | Descripción | Requerido | Límite de caracteres |
name | Nombre o id del template aprobado por WhatsApp. | Si | 512 |
type | Tipo del template. | Si | N/A |
language | Lenguaje del template. | Si | N/A (código de idioma, ej: es, en_US) |
contentHeader | URL del archivo del encabezado. | Si: Es requerido para aquellos templates que tengan variables en el encabezado de tipo imagen, video o archivo. | N/A (el límite es de tamaño: imagen 5 MB, video 16 MB, documento 100 MB) |
headerPlaceholders | Arreglo con las variables del texto del encabezado. | Si: Es requerido para aquellos templates que tengan un encabezado y este contenga variables en el texto. | 60 (texto total del encabezado, incluyendo las variables) |
filename | Nombre del documento. | No: En caso de dejarlo vacío el nombre será “null”. | No documentado por Meta |
placeholders | Arreglo con las variables del texto del cuerpo del template. | Si: Es requerido cuando se tienen variables en el cuerpo del template. | 1024 (texto total del cuerpo, incluyendo las variables) |
buttons | Arreglo de objetos que contiene las propiedades:
| Si: Se debe de tener esta arregló solo para los botones que contengan variables. | Texto del botón: 25. URL completa: 2000. Código de COPY_CODE: 15 |
Text
Template con un encabezado con variables y un cuerpo con variables.
{
"template":{
"name":"0e05d104-4efd-4363-8c90-69eaca8b0c0d",
"type":"text",
"language":"en",
"placeholders":[
"phone",
"86565887",
"updates"
]
"headerPlaceholders":[
"Juan",
"Marquez"
]
}
}Botones
Template con un encabezado con variables, cuerpo con variables y botones con variables (tiene 3 botones y solo el primero y el ultimo tienen variables).
{
"template":{
"name":"0e05d104-4efd-4363-8c90-69eaca8b0c0d",
"language":"en",
"type":"text",
"placeholders":[
"phone",
"86565887",
"updates"
],
"headerPlaceholders":[
"Juan",
"Marquez"
],
"buttons" : [
{
"index" : 0,
"text" : "productos",
"type" : "URL"
}, {
"index" : 2,
"text" : "ucontact",
"type" : "COPY_CODE"
}
],
}
}
Video
{
"template":{
"name":"3af461ef-2799-479a-9d8e-d0bff1bf851a",
"type":"video",
"language":"en",
"placeholders":[
"Matias",
"Account"
],
"contentHeader": "https://integraccs.ucontactcloud.com/attachments/20220201/1ae7ef92-0775-4b88-91f8-db2ba1a20000.mp4"
}
}Imagen
{
"template": {
"name": "a730dd25-845c-4f99-823a-a495b751ce67",
"language":"en",
"type": "image",
"placeholders": ["Matias", "07/02/2022","Admin"],
"contentHeader": "https://integraccs.ucontactcloud.com/attachments/20220203/19cd82ad-fb36-4414-8c60-fe1be13b4f2c.jpeg"
}
}Documento
{
"template":{
"name":"a730dd25-845c-4f99-823a-a495b751ce67",
"type":"document",
"language":"en",
"contentHeader": "https://integraccs.ucontactcloud.com/attachments/20220202/d065eed9-dac7-400c-aa38-d9d0b13e1036.000ESPMarcadores.pdf",
"filename":"Marcadores"
}
}