Envía un mensaje de WhatsApp que no es una plantilla: texto, o media de tipo imagen, documento, audio o video, con texto opcional como caption. Funciona tanto con la conexión oficial (BSP/Gupshup) como con una línea QR.
- El destinatario se identifica con
phone_numberocustomer_id. Si se envían ambos, se usacustomer_id; si esecustomer_idno existe, se usaphone_number. Si el cliente no existe, se crea. - El cliente debe tener teléfono o
user_id; si no, responde 422. - La línea se elige con
integration_id, el mismoidque devuelveGET /retailers/api/v1/whatsapp_templates/integrations(que incluye BSP, Gupshup y QR). Con una sola línea no es necesario; con varias es obligatorio unintegration_idválido. - Media permitida: imágenes JPG/JPEG/PNG, documentos PDF/DOC/DOCX/XLS/XLSX, audio MP3/OGG/OGA/OPUS/M4A/AAC/WAV y video MP4/3GP/MOV/M4V.
- Mercately no valida la ventana de 24 horas: intenta el envío y, si el proveedor lo rechaza, devuelve su mensaje de error tal cual. En QR no existe esa ventana.
POST /retailers/api/v1/whatsapp/send_message(QR, JPG/PNG/PDF) yPOST /retailers/api/v1/whatsapp/send_notification_by_id(plantillas) mantienen su contrato.
Número de teléfono del destinatario (formato internacional con +). Se usa cuando no se envía customer_id o cuando ese customer_id no existe. Si no existe, se crea el cliente.
web_id del cliente (obtenido del endpoint de clientes). Tiene prioridad sobre phone_number. Si no existe, se usa phone_number.
Id de la línea de WhatsApp, tal como lo devuelve GET /retailers/api/v1/whatsapp_templates/integrations. Obligatorio si el retailer tiene varias líneas; con una sola línea no hace falta.
Texto del mensaje. Si se envía media_url, se usa como caption.
URL pública del archivo. Permitidos: imágenes JPG/JPEG/PNG, documentos PDF/DOC/DOCX/XLS/XLSX, audio MP3/OGG/OGA/OPUS/M4A/AAC/WAV y video MP4/3GP/MOV/M4V.
- Production serverhttps://app.mercately.com/retailers/api/v1/whatsapp/send_open_message
- Shops API Production serverhttps://mercately.shop/retailers/api/v1/whatsapp/send_open_message
curl -i -X POST \
https://app.mercately.com/retailers/api/v1/whatsapp/send_open_message \
-H 'Content-Type: application/json' \
-H 'api-key: YOUR_API_KEY_HERE' \
-d '{
"phone_number": "+593999999999",
"customer_id": "1713huaxq1352",
"integration_id": "int-1",
"message": "Hola, ¿cómo estás?",
"media_url": "https://mercately.com/example.png",
"first_name": "John",
"last_name": "Doe",
"email": "john@example.com",
"address": "123 Main St",
"city": "Quito",
"state": "Pichincha",
"zip_code": "170101",
"notes": "Customer notes"
}'{ "message": "Ok", "info": { "channel": "whatsapp", "content": { … }, "direction": "outbound", "status": "submitted", "destination": "+593999999999", "country": "EC", "created_time": "2022-09-23T16:34:16.768-04:00", "error": null } }