Resumen
Suba imágenes, videos o documentos para encabezados de plantillas WhatsApp por destinatario. POST multipart/form-data con campo file. Devuelve media_id para header_media_id al enviar. DELETE /api/v2/whatsapp/media/{id} elimina activos no usados.
POST /api/v2/whatsapp/media
Envíe multipart/form-data con campo binario file. No establezca Content-Type manualmente en fetch — FormData define el boundary.
curl --request POST \
'https://app.buzzbip.com/api/v2/whatsapp/media' \
--header 'Authorization: Bearer YOUR_JWT' \
--form 'file=@/path/to/invoice-april.pdf'Notas de uso
⚠️ Nota: los valores media_id son por usuario. Un archivo subido por el usuario A no puede usarse en un envío del usuario B. Suba siempre con la cuenta que enviará el mensaje. 💡 Consejo: use el flujo de dos pasos — suba primero para obtener media_id, luego referencie header_media_id al enviar la plantilla.
Nota: los valores media_id son por usuario. Un archivo subido por el usuario A no puede usarse en un envío del usuario B. Suba siempre con la cuenta que enviará el mensaje.
Notas de integración
Al integrar este endpoint de Buzzbip, use https://app.buzzbip.com como host de producción. Obtenga JWT de POST /api/login_check y envíe Authorization: Bearer en cada solicitud. Confirme que User.hasApiAccess está habilitado en el admin de Buzzbip. Las rutas WhatsApp v2 no usan barra final. Implemente reintentos con backoff ante límites de tasa. Guarde credenciales en el servidor y reautentíquese antes del vencimiento JWT (3600 s).
Seguridad
Buenas prácticas: credenciales solo en servidor, TLS obligatorio, monitorear fallos de autenticación. Separe cuentas staging y producción. Documente plantillas y automatizaciones. Redacte números y contenido en registros compartidos.
¿Qué sigue?
Páginas relacionadas: api/v2/whatsapp-templates/send-template api/v2/whatsapp-templates guides/whatsapp-v2-use-cases
