Enviar imágenes, documentos y audios por la API de WhatsApp
Pasa la URL pública del archivo y su tipo. Llega al chat como imagen, video, nota de voz o documento con su nombre.
/send-mediacurl -X POST https://api.kontacto.pro/send-media \
-H "Content-Type: application/json" \
-d '{
"api_key": "TU_API_KEY",
"sender": "51999888777",
"number": "51987654321",
"media_type": "pdf",
"caption": "Factura F001-2045.pdf",
"url": "https://tusistema.com/facturas/F001-2045.pdf"
}'
<?php
$datos = [
'api_key' => 'TU_API_KEY',
'sender' => '51999888777',
'number' => '51987654321',
'media_type' => 'pdf',
'caption' => 'Factura F001-2045.pdf',
'url' => 'https://tusistema.com/facturas/F001-2045.pdf',
];
$ch = curl_init('https://api.kontacto.pro/send-media');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode($datos),
CURLOPT_RETURNTRANSFER => true,
]);
$respuesta = json_decode(curl_exec($ch), true);
const datos = {
api_key: 'TU_API_KEY',
sender: '51999888777',
number: '51987654321',
media_type: 'pdf',
caption: 'Factura F001-2045.pdf',
url: 'https://tusistema.com/facturas/F001-2045.pdf',
};
const respuesta = await fetch('https://api.kontacto.pro/send-media', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(datos),
});
console.log(await respuesta.json());
import requests
datos = {
"api_key": "TU_API_KEY",
"sender": "51999888777",
"number": "51987654321",
"media_type": "pdf",
"caption": "Factura F001-2045.pdf",
"url": "https://tusistema.com/facturas/F001-2045.pdf",
}
respuesta = requests.post("https://api.kontacto.pro/send-media", json=datos, timeout=30)
print(respuesta.json())
Lo que necesitas saber
-
Imagen y video
Con un texto debajo (caption) para explicar lo que envías.
-
Documentos
pdf, xls, xlsx, doc, docx, zip y xml. En documentos, caption es el nombre del archivo.
-
Nota de voz
Con ptt = "vn" el audio llega como nota de voz; sin él, como archivo de audio.
Respuesta de la API
Todas las respuestas son JSON con status y un mensaje. Si algo falla, el detalle viene en errors.
{
"status": true,
"msg": "Mensaje enviado con éxito!"
}
Todos los parámetros y los errores posibles están en la documentación de enviar archivos.
¿Puedo usar un enlace de Google Drive?
No. La URL debe ser el enlace directo al archivo, el que descarga el archivo al abrirlo.
¿Qué tipos de archivo acepta?
image, video, audio, pdf, xls, xlsx, doc, docx, zip, mp3 y xml.
¿Sirve para enviar comprobantes electrónicos?
Sí. Es el uso más común: el PDF y el XML de la boleta o factura salen al cliente apenas se emiten.
Casos de uso con esta función
-
Notificaciones de pedidos por WhatsApp
El cliente compra y recibe la confirmación en su WhatsApp. Cuando sale a reparto, otro aviso. Menos llamadas preguntando "¿dónde está mi pedido?". -
Recordatorios de pago por WhatsApp
El correo se ignora; el WhatsApp se lee. Recordatorios con el monto y la fecha de cada cliente, enviados desde tu sistema. -
Envío de boletas y facturas electrónicas por WhatsApp
Emites el comprobante y el PDF llega al WhatsApp del cliente. Sin imprimir, sin pedir correo y sin que se pierda en la bandeja de spam.
Funciones relacionadas
-
Enviar mensajes de WhatsApp por API
Una petición HTTP con tu API key, tu número y el destino. El mensaje sale desde tu WhatsApp y la respuesta llega en JSON. -
Encuestas de WhatsApp enviadas por API
Una pregunta y de 2 a 5 opciones. Tu cliente responde con un toque, sin escribir. -
API de canales de WhatsApp para publicar automáticamente
Registra el canal una vez con su enlace de invitación y publica en él con los mismos endpoints de mensajes.
Envía tu primer mensaje hoy
Escríbenos por WhatsApp, conectamos tu número con un QR y te damos tu API key para que pruebes desde tu sistema.