Conclusiones clave
- Trata el archivo subido como un candidato a revisión, no automáticamente como material gráfico de campaña aprobado.
- Crea una sola variante JPEG predecible para la revisión y conserva por separado el archivo maestro editable o de alta fidelidad cuando sea necesario.
- Haz que un servidor de confianza autorice el identificador de campaña que se usa en la ruta de Box; no expongas al navegador la elección arbitraria de carpetas.
Los equipos creativos suelen recibir material gráfico PNG, TIFF o JPEG de tamaño excesivo que resulta incómodo de previsualizar de forma coherente durante la revisión. Un flujo de trabajo de procesamiento puede crear una variante JPEG acotada y colocarla en una subcarpeta de revisión específica de cada Assembly, dentro de una ruta de campaña controlada en Box, mientras que el archivo maestro editable permanece sujeto a su propia política de origen y retención.
Lo más importante
- Mantén la configuración de JWT de Box en las credenciales de Template y asegúrate de que la Platform App siga autorizada por el administrador de Box.
- Deja create_sharing_link en false para que la exportación no convierta el acceso por colaboración en la posesión de un enlace.
- Guarda el ID de la Assembly y la ruta de destino esperada; después, resuelve el ID del archivo de Box a través de la API de Box antes de notificar a los colaboradores.
Define la variante de revisión y la fuente de referencia
Decide si la subida es un archivo maestro editable, una exportación aplanada o solo un candidato a revisión. Este flujo de trabajo crea un JPEG acotado para una previsualización y una discusión coherentes; no conserva las capas, la transparencia, todas las características de color ni la editabilidad de la fuente. Conserva el archivo maestro en el sistema que elija el equipo creativo cuando esas propiedades sean relevantes.
Crea un registro de revisión de campaña antes del procesamiento. Debería identificar la campaña, la versión de la fuente, la persona que hizo la subida, la política de variantes prevista, la versión del flujo de trabajo y el estado de aprobación actual. Que un archivo aparezca en Box no es, por sí solo, prueba de que la campaña correcta lo haya recibido ni de que un revisor lo haya aprobado.
Construye el Template de revisión de JPEG a Box
El Template recibe una sola subida de material gráfico, crea un derivado JPEG que se ajusta a las dimensiones de revisión elegidas y almacena solo ese derivado en Box. zoom es false, de modo que un archivo de origen pequeño no se amplía, y strip elimina los metadatos incrustados de la copia de revisión. La ruta específica de la campaña también incluye la unicidad de la Assembly para evitar colisiones entre nombres de archivo repetidos.
Mantén allow_steps_override en false. Deja que el navegador envíe únicamente el archivo y un campaign_id acotado que el servidor ya haya autorizado. El cliente no debe elegir la credencial de Box, la carpeta raíz, el comportamiento de compartición, las dimensiones ni el formato. Los límites de subida del Template complementan las comprobaciones propias de la aplicación sobre el tipo, el inquilino, la cuota y el estado de la campaña.
{
"allow_steps_override": false,
"auth": {
"max_number_of_files": 1,
"max_size": 104857600
},
"steps": {
":original": {
"robot": "/upload/handle"
},
"review_jpeg": {
"use": ":original",
"robot": "/image/resize",
"width": 2000,
"height": 2000,
"resize_strategy": "fit",
"zoom": false,
"format": "jpg",
"quality": 88,
"strip": true
},
"box_review": {
"use": "review_jpeg",
"robot": "/box/store",
"credentials": "box-campaign-review",
"path": "campaigns/${fields.campaign_id}/review/${assembly.id}/${file.url_name}",
"create_sharing_link": false,
"result": true
}
}
}Prepara el acceso a Box antes de ejecutar trabajo en producción
Las credenciales de Template de Box usan una Platform App configurada para Server Authentication con JWT. Guarda la configuración de clave JSON descargada en la credencial, no en el control de versiones, el código del navegador ni las Assembly Instructions. Un administrador o coadministrador de Box debe autorizar la app antes de que pueda operar.
La identidad del JWT es la Service Account de la app. /box/store recorre la ruta configurada desde la raíz de esa cuenta y crea los segmentos de carpeta que faltan. Para el ejemplo, pon la raíz campaigns prevista a disposición de la Service Account mediante la colaboración de Box, verifica su ID de carpeta y la identidad de la carpeta hija de la campaña, y concede los permisos necesarios para crear las subcarpetas de revisión y subir archivos. Compartir solo una carpeta de campaña anidada no hace que la ruta campaigns completa del ejemplo se resuelva desde la raíz de la Service Account. Una ruta que falta puede crear un árbol de carpetas privado aparte en lugar de fallar, así que verifica el destino y el acceso de los colaboradores antes de notificar a los revisores.
Si cambian la configuración o los scopes de la app, coordina la reautorización y prueba con una carpeta conocida antes de reanudar el trabajo desatendido. Un JWT válido no garantiza el acceso a todas las carpetas de la empresa.
Mantén separadas la exportación, la colaboración y la publicación
Establece create_sharing_link en false. La pertenencia a la colaboración de Box, la política de la empresa y la autorización de la aplicación deberían determinar quién revisa el archivo. Activar la marca hace que /box/store solicite explícitamente un enlace compartido abierto, destinado a cualquiera que tenga la URL, sujeto a la política de Box. El Robot reemplaza la URL del resultado por ese enlace; no solicita un enlace exclusivo para colaboradores.
Si más adelante una campaña necesita un enlace compartido, créalo como una acción autorizada aparte, con un nivel de acceso, una audiencia, una expiración y un responsable de la revocación explícitos. Verifica el acceso efectivo según la política de Box de la empresa antes de distribuir el enlace.
Exportación
El JPEG normalizado llega al destino autorizado de Box.
Colaboración
Los usuarios o grupos conocidos de Box reciben acceso a la carpeta según la política de la empresa.
Publicación
La aplicación hace avanzar el material gráfico aprobado hacia su destino de entrega.
Revisa la fidelidad y la identidad antes de la aprobación
Prueba con PNG transparentes, imágenes CMYK o con perfil incorporado, material gráfico con mucho texto, degradados, líneas finas, metadatos de orientación, dimensiones muy grandes y archivos de origen inusualmente pequeños. Compara el JPEG con el archivo de origen en tamaños de revisión realistas. Una conversión técnicamente válida aún puede introducir cambios inaceptables de color, transparencia o compresión.
Después de la exportación, persiste el ID de la Assembly y la ruta de destino esperada junto con el registro de revisión de la campaña. /box/store no devuelve el ID del archivo de Box subido; con create_sharing_link en false, el resultado conserva la identidad y la URL de Transloadit del archivo de entrada. Resuelve las carpetas de destino y el nombre de archivo exacto mediante el endpoint de elementos de carpeta de la API de Box, siguiendo la paginación, y luego guarda por separado el ID del archivo de Box correspondiente. No trates el ID ni la URL del resultado de Transloadit como una identidad de Box ni como un enlace de revisión. Los nombres de carpeta y de archivo pueden cambiar, así que concilia antes de mover o renombrar y usa el ID de Box resuelto para las operaciones posteriores. Avisa a los colaboradores solo después de confirmar la campaña prevista y la versión de origen.
Recupérate de las colisiones y del fallo parcial
Prueba con una aplicación no autorizada, la creación de una carpeta inexistente, un destino donde la Service Account no tenga permiso de creación, nombres duplicados en los archivos subidos, un fallo de procesamiento y un redimensionamiento correcto seguido de un fallo de Box. Normalmente, una carpeta que falta se crea en lugar de notificarse como un fallo limpio; comprueba si aparece un árbol de carpetas privado no deseado, además de los errores de exportación explícitos. Box exige que los nombres sean únicos dentro de una carpeta principal; la unicidad de la Assembly en la ruta de ejemplo evita que un archivo existente no relacionado se convierta en destino de una sobrescritura accidental.
Un webhook perdido o un tiempo de espera agotado del cliente no demuestran que la exportación haya fallado. Concilia la Assembly existente antes de reintentar. Si se requiere una nueva variante, regístrala como una nueva fuente de campaña o versión del flujo de trabajo en lugar de reemplazar en silencio el archivo que los revisores ya comentaron. Elimina las copias de revisión rechazadas y sustituidas mediante un proceso de retención deliberado.
Detalles técnicos que conviene conocer
- /image/resize puede convertir a JPEG las imágenes de entrada admitidas, aplicar un redimensionado de tipo fit, evitar la ampliación con zoom en false y eliminar los metadatos incrustados del derivado.
- /box/store acepta una ruta con variables de Assembly y, si no se indica ninguna, usa de forma predeterminada una ruta con prefijo único.
- /box/store resuelve las rutas desde la raíz de la cuenta autenticada y crea los segmentos de carpeta que falten. Con credenciales JWT, se trata de la raíz de la Service Account.
- Las credenciales de Template de Box usan una Platform App configurada para la autenticación de servidor con JWT y contienen su configuración de clave JSON.
- Una Platform App de Box con JWT requiere autorización explícita del administrador. Su Service Account solo puede acceder al contenido disponible para esa cuenta, salvo que se configure un acceso empresarial más amplio.
- En /box/store, create_sharing_link es false de forma predeterminada. Cuando se activa, el Robot solicita un enlace compartido abierto para cualquiera que tenga la URL, sujeto a la política de Box, y reemplaza la propiedad url del archivo de resultado por ese enlace.
- /box/store no devuelve el ID del archivo de Box subido. Con create_sharing_link en false, su resultado conserva la identidad y la URL de Transloadit del archivo de entrada, no una URL de revisión de Box.
- Los nombres de archivo de Box deben ser únicos dentro de una carpeta principal, por lo que este flujo de trabajo incluye la unicidad de la Assembly en la ruta de destino en lugar de basarse únicamente en el nombre del archivo subido.
Un enfoque práctico
- 1
Define los formatos de material gráfico aceptados, las dimensiones de revisión, la calidad JPEG, el rol del archivo de origen y la política de carpetas de campaña.
- 2
Autoriza una Box Platform App, guarda su configuración de JWT como credenciales de Template y bloquea el Template.
- 3
Prueba la fidelidad de la imagen, los nombres duplicados, la creación de carpetas que faltan y un destino donde la Service Account no tenga permiso de creación.
- 4
Concilia el resultado de Box con el registro de revisión de la campaña antes de invitar a la revisión o de avanzar el estado de aprobación.
Cuándo resulta útil Transloadit
Usa /upload/handle para la recepción del material gráfico de los diseñadores, /image/resize para una variante de revisión JPEG acotada y /box/store para una subcarpeta de revisión específica de la campaña. Mantén create_sharing_link en false, autoriza el destino a través de la aplicación y deja que la colaboración de Box, y no una URL creada automáticamente, controle el acceso a la revisión.
Límite de la arquitectura
Transloadit convierte una sola subida de material gráfico de campaña en JPEG normalizado y lo coloca en Box. La aplicación y los administradores de Box siguen controlando la identidad de la campaña, la pertenencia a la colaboración, el estado de revisión, la propiedad del origen, el uso compartido y la decisión de publicar el material gráfico.
Preguntas frecuentes
¿Es la variante JPEG de revisión el archivo maestro editable?
Normalmente no. Es una copia de revisión normalizada. Conserva por separado la fuente con capas, con transparencia o de alta fidelidad cuando el flujo de trabajo creativo lo requiera.
¿Debería /box/store crear un enlace compartido?
No en este flujo de trabajo. Mantén create_sharing_link en false y gestiona el acceso de los revisores mediante la carpeta de colaboración autorizada de Box.
¿Por qué una app de Box válida puede seguir sin poder acceder a una carpeta?
Normalmente, JWT autentica la Service Account de la app. Esa cuenta necesita acceso al contenido de destino, y la Platform App debe tener los scopes adecuados y la autorización del administrador.
¿Puede el navegador enviar cualquier carpeta de campaña?
No. Una aplicación de confianza debería autorizar un identificador de campaña acotado, mientras que el Template bloqueado controla la ruta real de Box.
¿La exportación significa que la imagen de campaña está aprobada?
No. La exportación significa que la variante de revisión llegó a Box. La aprobación y la publicación siguen siendo transiciones independientes de la aplicación.