Contenido multimedia

/v1/media

Usa el nodo media para subir, recuperar o eliminar archivos multimedia.

Perímetros

Los siguientes perímetros están conectados a este nodo:

PerímetroDescripción

/{media-id}

Usa este perímetro para recuperar y eliminar contenido multimedia.

Antes de empezar

Cuando se envía un mensaje de contenido multimedia, se almacena en los servidores de WhatsApp durante 14 días. Si un usuario solicita descargar el contenido multimedia luego de 14 días, los servidores de WhatsApp solicitarán dicho contenido al cliente de instalaciones locales de WhatsApp Business. Si el contenido multimedia se eliminó, se notificará al usuario que dicho contenido no se encuentra disponible.

No hay que dar por sentado que los archivos multimedia se descargaron simplemente porque se recibieron confirmaciones de entrega y lectura. En el caso de los archivos multimedia salientes, por lo general, resulta seguro eliminarlos luego de 30 días, pero utiliza la estrategia que mejor se adecúe a tu empresa.

Restricciones

  • Si utilizas el proceso de carga de contenido multimedia en vez de incluir un enlace a una URL de un archivo multimedia, el archivo debe subirse al volumen de contenido multimedia. Una vez que se completa la carga, puedes enviar un mensaje con el identificador de archivos multimedia.
  • Nota: La app procesa los archivos multimedia que se suben antes de que se envíen al servidor. Si bien el tamaño máximo de archivos multimedia que se pueden subir al nodo media es de 100 MB, existen límites de posprocesamiento para los distintos tipos de archivos multimedia. Puedes consultar dichos límites en la tabla de tamaño de archivos multimedia de posprocesamiento.
  • La administración del almacenamiento de archivos multimedia se encuentra a cargo de la propia empresa. Si el volumen de archivos multimedia se llena, el envío de mensajes comenzará a fallar.
  • No se admiten las siguientes funciones:
    • Enviar contenido multimedia por flujos de bytes.
    • Enviar mensajes con stickers animados.

Carga

Haz una solicitud POST a /v1/media para cargar tu contenido multimedia. El cuerpo de la solicitud de instalaciones locales debe contener datos de archivos multimedia binarios y el encabezado Content-Type debe estar configurado en el tipo de archivo multimedia que se está cargando. Consulta la sección sobre tipos de contenido admitidos para conocer las opciones disponibles.

Enviar datos binarios en una solicitud POST HTTP es un método estándar para subir datos binarios. Por ejemplo, si quieres subir una imagen, envía una solicitud POST con los bytes de la imagen en la carga. También puedes usar cURL si quieres que --data-binary lea y use el archivo específico en formato binario, tal como se proporciona.

Ejemplo:

Subir archivos multimedia:

POST /v1/media
Content-Type: image/jpeg or other appropriate media type

your-binary-media-data

Subir archivos multimedia con cURL:

curl -X POST \
https://your-webapp-hostname:your-webapp-port/v1/media \
-H 'Authorization: Bearer your-auth-token' \ 
-H 'Content-Type: image/jpeg'  \ # or other appropriate media type
--data-binary @your-file-path

En ambos casos, si la respuesta es satisfactoria, se devolverá el campo id, que necesitas para recuperar contenido multimedia o enviar mensajes con archivos a tus clientes.

{
    "media": [
        {
            "id": "f043afd0-f0ae-4b9c-ab3d-696fb4c8cd68"
        }
    ]
}

En caso de que ocurra un error, consulta Mensajes de error y de estado para obtener más información.

Tipos de contenido admitidos

Contenido multimedia Tipos de contenido admitidos

audio

audio/aac, audio/mp4, audio/amr, audio/mpeg,
audio/ogg; codecs=opus


Nota: En el caso de ogg/opus, los clientes de WA solo admiten archivos de audio de un solo canal.

document

Cualquier tipo MIME válido.

image

image/jpeg, image/png


Por el momento, no ofrecemos compatibilidad con imágenes con fondos transparentes.

sticker

image/webp

video

video/mp4, video/3gpp


Notas:

  • Solo se admiten el códec de video H.264 y el códec de audio AAC.
  • Ofrecemos compatibilidad con videos que tengan o no un stream de audio.

Tamaño de archivos multimedia de posprocesamiento

Este es el tamaño máximo permitido para los archivos multimedia después de la compresión y el cifrado.

Tipo de archivo Size (Tamaño)

audio

16 MB

document

100 MB

image

5 MB

sticker

100 KB

video

16 MB

Preguntas frecuentes

En las imágenes, el texto se agregará como descripción. El texto aparece con su extensión completa en las imágenes de Android y iPhone.

En los documentos, el texto reemplaza el nombre del archivo. No tiene la finalidad de mostrarse en el dispositivo del usuario como texto de descripción, sino la de mostrar el nombre del archivo. En iPhone, se muestra el texto completo, mientras que en Android el nombre del archivo se trunca. Tales situaciones se deben a una limitación técnica en la implementación actual de WhatsApp en ambos dispositivos.

Tú eliges cuándo eliminar el contenido multimedia.

Luego de subir un archivo multimedia, recibirás un identificador, el cual puedes usar para enviar un mensaje que incluye el elemento de contenido multimedia subido. Al enviar el mensaje de contenido multimedia, la API de WhatsApp Business cifrará y subirá el contenido a los servidores de WhatsApp, donde permanecerá durante 14 días. Luego, puedes decidir eliminar el contenido multimedia mediante su identificador correspondiente o conservar dicho contenido para usarlo más tarde. Si bien la recomendación es conservar el contenido multimedia durante 30 días, queda en ti decidir la política de retención en base a la política de tu empresa o tus casos de uso.

No existe un mecanismo de limpieza para los archivos multimedia entrantes o salientes. Puedes borrar tus archivos multimedia de forma manual localizándolos en tu sistema de archivos.

Para encontrar el punto de montaje del volumen de tu contenido multimedia, puedes ejecutar un comando de docker.

Solicitud

docker volume inspect whatsappMedia

Respuesta

[
    {
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/whatsappMedia/_data",
        "Name": "whatsappMedia",
        "Options": {},
        "Scope": "local"
    }
]

Luego, para ver todos los archivos multimedia entrantes, puedes ejecutar el comando ls con la ruta de archivo Mountpoint recibida:

ls /var/lib/docker/volumes/whatsappMedia/_data/

Para la configuración de AWS, el volumen del contenido multimedia se encuentra montado en la ruta /mnt/wa/media del host.

Al enviar imágenes como un álbum desde la API de WhatsApp Business, deberás enviar al menos 4 imágenes en forma sucesiva. Si la vista de conversación del usuario está activada al recibir las imágenes, la vista de álbum no estará disponible hasta la próxima visita.

No se puede crear un álbum si se cumple alguno de los siguientes criterios:

  1. Imágenes con texto
  2. Línea que separa los mensajes no leídos: el usuario ve algunas imágenes, pero no todas
  3. Encabezado de fecha: mensajes entregados en distintos días

No, actualmente, tenemos que usar el sistema EFS de AWS para compartir el volumen del contenido multimedia entre la app principal y la app web.

El tamaño máximo para la subida de archivos es de 64 MB, lo cual significa que dicho límite también se aplica a cualquier imagen, documento o video que envíes con un mensaje.