📁 Subir archivos desde la API y obtener una URL pública

Cómo subir imágenes, videos y documentos a Adereso vía API para obtener una URL pública que puedes usar en el campo header.url de un HSM.

Subir archivos desde la API y obtener una URL pública

¿Necesitas enviar un PDF o una imagen en un HSM y no sabes cómo pasar el archivo desde tu sistema? La API de Adereso incluye un endpoint para subir archivos y obtener una URL lista para usar.


¿Para qué sirve?

Cuando envías un HSM con adjunto (imagen, video o documento), el campo header.url espera una URL pública que Meta pueda descargar directamente. Si tu archivo está en tu servidor pero no tiene una URL pública accesible, este endpoint lo resuelve: subes el archivo a Adereso y recibes la URL lista para usar en el mismo request de HSM.


Endpoint

POST /v2/files/{file_type}/

Parámetros de ruta

Parámetro
Valores posibles
Descripción
file_type
image, video, document
Tipo de archivo a subir

Autenticación

Usa el mismo token de API estándar de Adereso:

Authorization: Key <tu_api_token>

Modos de envío

Puedes enviar el archivo de dos maneras — elige una, no ambas.

Opción A — Multipart (archivo binario)

Content-Type: multipart/form-data

Envía el archivo como campo `file` en el formulario. Útil cuando tienes el archivo como binario y haces la request desde un cliente HTTP estándar.

curl -X POST "https://desk.adere.so/v2/files/document/" \
  -H "Authorization: Key TU_TOKEN" \
  -F "file=@/ruta/al/archivo.pdf"

Opción B — Base64 (JSON)

Content-Type: application/json

Envía el archivo codificado en base64 en el body. Acepta dos formatos:

Con Data URI (recomendado): el MIME type va embebido, file_name es opcional.

{
  "file_base64": "data:application/pdf;base64,JVBERi0xLjQK...",
  "file_name": "contrato.pdf"
}

Solo base64 plano: en este caso file_name es obligatorio para que el sistema infiera la extensión.

{
  "file_base64": "JVBERi0xLjQK...",
  "file_name": "contrato.pdf",
  "content_type": "application/pdf"
}
💡
Límite:** el archivo decodificado no puede superar 20 MB.

Formatos soportados por tipo

document

pdf, doc, docx, xls, xlsx, ppt, pptx, txt, csv, odt, ods, odp, rtf

image

jpg, jpeg, png, gif, webp, bmp

video

mp4, 3gp


Respuesta exitosa (200)

{
  "status": 200,
  "message": "File uploaded successfully",
  "data": {
    "url": "https://files.adere.so/p/<token>/contrato.pdf",
    "type": "document"
  }
}

El campo `data.url` es la URL pública lista para usar en el campo `header.url` del endpoint de HSM.

⚠️
Las URLs tienen una vigencia de hasta 7 días. No guardes esta URL como referencia permanente — súbela nuevamente si el enlace vence antes de usarlo.

Errores comunes

Código
Causa
Solución
400
No se envió ningún archivo
Asegúrate de enviar file o file_base64, no ambos ni ninguno
400
Extensión inválida para el tipo
Verifica que la extensión sea compatible con el file_type seleccionado
400
Base64 inválido o mal formado
Verifica que el string base64 sea válido y no esté truncado
400
Archivo supera los 20 MB
Reduce el tamaño del archivo antes de subirlo
401
Token inválido o faltante
Incluye el header Authorization: Key TU_TOKEN
500
Error interno al subir
Contacta al equipo de soporte con el body del request

Flujo completo: subir PDF y enviar HSM

Paso 1 — Subir el archivo:

curl -X POST "https://desk.adere.so/v2/files/document/" \
  -H "Authorization: Key TU_TOKEN" \
  -F "file=@cotizacion.pdf"

Respuesta:

{
  "data": {
    "url": "https://files.adere.so/p/abc123/cotizacion.pdf",
    "type": "document"
  }
}

Paso 2 — Usar la URL en el HSM:

{
  "account": "56900000000",
  "phone": "56911111111",
  "name": "nombre_template",
  "parameters": ["Juan"],
  "header": {
    "type": "document",
    "url": "https://files.adere.so/p/abc123/cotizacion.pdf"
  }
}

Artículos relacionados

  • Envío de HSM vía API — Cómo iniciar una conversación proactiva en WhatsApp usando plantillas aprobadas por Meta.
  • Casos de uso — Ejemplos prácticos de integración: enviar HSM y atender la respuesta, publicar mensajes en tickets existentes.

ℹ️

En caso de que tengas dudas, comunícate con nosotros vía chat, al WhatsApp +56953851610 o al email soporte@adere.so.

¿Esto respondió tu pregunta?
😞
😐
🤩