Sube imágenes, videos, audios o documentos directamente a Meta CDN.
Casos de Uso
- Archivos grandes: Videos o documentos que excedan los límites del proxy automático
- Reutilización: Enviar el mismo archivo a múltiples destinatarios sin re-subirlo
- Control: Subir archivos de forma asíncrona antes de enviar mensajes
El media_id expira después de aproximadamente 30 días en Meta CDN.
| Header | Valor |
|---|
Authorization | Bearer wha_TU_API_KEY |
Content-Type | multipart/form-data |
No uses application/json. Este endpoint requiere multipart/form-data porque envía archivos binarios.
Parámetros del Body
El archivo binario a subir. Debe enviarse como multipart/form-data.
Tipo de media: image, video, audio, document, sticker
Límites de Tamaño
| Tipo | Formatos | Tamaño Máximo |
|---|
image | JPEG, PNG, WebP | 5 MB |
video | MP4, 3GPP | 16 MB |
audio | AAC, MP3, OGG, AMR | 16 MB |
document | PDF, DOC, XLS, PPT, TXT | 100 MB |
sticker | WebP | 500 KB |
Ejemplo con cURL
curl -X POST https://api.whaapy.com/media/v1 \
-H "Authorization: Bearer wha_TU_API_KEY" \
-F "file=@/ruta/a/imagen.jpg" \
-F "type=image"
Respuesta Exitosa
{
"media_id": "123456789012345",
"mime_type": "image/jpeg",
"file_size": 1048576,
"type": "image"
}
Flujo Completo
Paso 1: Subir el archivo
curl -X POST https://api.whaapy.com/media/v1 \
-H "Authorization: Bearer wha_TU_API_KEY" \
-F "file=@video.mp4" \
-F "type=video"
Respuesta:
{
"media_id": "123456789012345",
"mime_type": "video/mp4",
"file_size": 15728640,
"type": "video"
}
curl -X POST https://api.whaapy.com/messages/v1 \
-H "Authorization: Bearer wha_TU_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"to": "+5215512345678",
"type": "video",
"video": {
"id": "123456789012345",
"caption": "Mira este video"
}
}'
Puedes usar el mismo media_id para enviar el archivo a múltiples destinatarios. El ID es válido por 30 días.
Cuándo usar este endpoint
| Escenario | Recomendación |
|---|
| Imagen pequeña con URL pública | Usa image.link directamente |
| Video de cualquier tamaño | Usa /media/v1 |
| Documento grande | Usa /media/v1 |
| Enviar a múltiples personas | Usa /media/v1 y reutiliza el media_id |
| URL privada o protegida | Usa /media/v1 |
Para imágenes que excedan 5MB por URL, Whaapy las comprime automáticamente. No necesitas usar este endpoint solo por el tamaño.
Errores Comunes
Tipo de archivo no permitido
{
"error": "Tipo de archivo no permitido",
"message": "Para video, los formatos permitidos son: video/mp4, video/3gpp"
}
Archivo demasiado grande
{
"error": "Archivo demasiado grande",
"message": "El tamaño máximo para video es 16MB"
}
WhatsApp no configurado
{
"error": "WhatsApp no configurado",
"message": "No se encontró configuración de WhatsApp activa para este negocio"
}
Próximos Pasos