Skip to main content
Enviar un archivo por la API son dos llamadas: primero sube el archivo y recibe un identificador, luego envía el mensaje referenciando ese identificador.
No existe una llamada única que reciba el archivo y lo envíe. Intentar mandar el archivo directo al endpoint de envío resulta en error. Todo esto usa el scope messages:create, el mismo del envío de texto. Si su API key ya envía mensajes, ya envía archivos.

Paso 1: subir el archivo

1

Envíe el archivo en multipart/form-data

Dos campos obligatorios: file con el binario y fileType con la categoría.
cURL
2

Guarde el _id de la respuesta

La respuesta trae el registro del adjunto. El campo que importa para el paso 2 es el _id:
El adjunto queda guardado y puede reutilizarse. Para enviar el mismo archivo a varios contactos, súbalo una vez y use el mismo _id en cada envío.

Valores de fileType

El fileType de la subida debe coincidir con el endpoint de envío. Subir como DOCUMENT e intentar enviar por send-image no funciona.

Paso 2: enviar a la conversación

El cuerpo es JSON, con la conversación de destino y el objeto message:

Campos de message

El campo contentAttributes.inReplyToExternalId está descontinuado y sin efecto. Para responder citando un mensaje, use quoteSourceId.

Citar un mensaje

quoteSourceId espera el id del mensaje en el canal, no el _id de Nuvia. Enviar el _id no cita nada y no devuelve error. Ese valor llega en el campo source_id de cada mensaje devuelto por GET /v1/messages/conversation/{id}. Léalo de ahí y envíelo de vuelta en quoteSourceId. El mensaje citado tiene que pertenecer a la misma conversación.

Límites

  • Subida: hasta 100 MB por archivo.
  • WhatsApp: imagen hasta 5 MB, audio y video hasta 16 MB, documento hasta 100 MB. El límite del canal aplica aunque la subida haya aceptado el archivo, así que un video de 50 MB se sube pero no llega al contacto.
  • Formatos: solo los aceptados por WhatsApp, listados en la tabla anterior.

Errores comunes

Próximos pasos

Referencia de la API

Todos los endpoints de envío, con parámetros y respuestas.

Ejemplos de integración

Casos completos de principio a fin.