La publicación de mapas convierte un mapa editable en una experiencia estable que otras personas pueden abrir, insertar o usar dentro de un producto. Las opciones principales son un enlace compartido independiente, un visor insertado o una integración más profunda con una aplicación. Un mapa de producción también necesita reglas de acceso, dominios de inserción permitidos, una versión activa, diseño móvil, vías de lanzamiento y retirada, y medición; no solo una URL.
Las secciones siguientes abarcan modelos de publicación, controles de acceso y dominio, diseño de la inserción, mensajería, versiones, analítica y las superficies de Kaleidr Studio y Viewer. El contexto del producto está en Kaleidr Studio. Para la mecánica de inserción, consulte Cómo insertar un mapa interactivo. Para comparar la responsabilidad del constructor y la API, consulte Constructor de mapas sin código frente a API de mapas. Para montajes del SDK, consulte ¿Qué es un SDK de mapas con IA?.
Aspectos esenciales de la publicación
- Creación ≠ publicación: Los borradores pueden cambiar; los mapas publicados necesitan una superficie de consumo estable.
- Elija el acoplamiento: Los enlaces son ligeros; las inserciones viven en una página; la integración comparte el estado de la aplicación.
- Proteja el host: Los dominios permitidos y las comprobaciones de origen forman parte del contrato de publicación.
- Reserve espacio: Una inserción contraída es un error de diseño, no del mapa.
- Versione tras un ID estable: Mida, revise, publique y revierta sin reescribir cada página host.

¿Qué significa publicar un mapa?
Crear un mapa y publicarlo son etapas distintas. Durante la creación, un equipo puede modificar lugares, capas, etiquetas, colores, teselas, cámara, filtros, interacciones y fuentes de datos. Publicar crea una superficie de consumo: una página independiente, una inserción web, un localizador SaaS, un mapa editorial o una vista interna de solo lectura. Una herramienta de autoría puede admitir borradores. Un mapa publicado necesita acceso, diseño, rendimiento, comportamiento, versiones, atribución y supervisión predecibles. Kaleidr Studio describe actualmente la autoría como Prompt → Process → Refine → Deploy e indica que los mapas terminados pueden publicarse como páginas independientes o insertarse como widgets (Studio).
¿Deben los equipos compartir, insertar o integrar un mapa publicado?
Tres modelos cubren la mayoría de los lanzamientos. Un enlace compartido es la vía más rápida para revisiones, campañas y guías porque el sitio host casi no requiere implementación. Un visor insertado es apropiado para sitios web, páginas de destino, CMS y portales de clientes cuando el mapa debe aparecer junto al texto y una llamada a la acción. La integración en el producto sirve para SaaS, mercados y flujos personalizados en los que filtros, registros seleccionados y estado de la aplicación permanecen sincronizados con el mapa. La elección depende de si el mapa es principalmente contenido, una experiencia insertada o parte del estado de la aplicación. Puede comenzar como enlace y convertirse después en inserción o componente del producto.
| Modelo | Ideal para | Desarrollo del host | Acoplamiento al producto |
|---|---|---|---|
| Enlace compartido | Revisiones, campañas y guías | Mínimo | Bajo |
| Visor insertado | Sitios web, CMS y portales | Bajo | Medio |
| Integración en el producto | SaaS y flujos personalizados | Mayor | Alto |
La documentación actual para desarrolladores de Kaleidr describe los mapas publicados de Viewer como protegidos por enlace y dirigidos mediante un identificador compartido, no una clave de API general (Viewer Embed). Un ID compartido identifica una experiencia publicada; no es un secreto del servidor ni debe tratarse como tal. Studio indica actualmente que los mapas pueden insertarse como widgets tras publicarlos. Chat puede conectarse a un mapa host existente, mientras que Viewer está diseñado en torno a una experiencia de mapa publicada (kaleidr.js).

¿Cómo deben gestionar las inserciones de producción el diseño, el acceso y la mensajería?
Defina el contrato de publicación antes del lanzamiento: acceso público o restringido, dominios de inserción permitidos, estados de borrador, publicado o archivado, y si la superficie activa muestra una instantánea revisada de los datos. Los controles de dominio deben usar orígenes simples como https://www.example.com y https://app.example.com. La documentación actual de Viewer describe dominios permitidos definidos por el editor para mapas publicados insertados. Una página host protegida por inicio de sesión no convierte automáticamente en privada una URL de mapa accesible de forma independiente; los datos empresariales privados requieren una arquitectura de autorización diseñada para ese caso.
Reserve altura y anchura para evitar que la inserción se contraiga. La especificación HTML recomienda un title conciso en el iframe para que la tecnología de asistencia pueda nombrar el contexto de navegación anidado (HTML Standard); el requisito normativo de un nombre determinable por programa para los marcos está en WCAG 4.1.2. Aplique carga diferida a inserciones fuera de pantalla mediante loading="lazy"; el estándar HTML define estos atributos y web.dev recomienda aplazar iframes fuera de pantalla para reducir red y trabajo inicial. En cambio, un mapa principal visible al cargar debe formar parte de la experiencia crítica. Mantenga una alternativa textual —nombres, direcciones o una lista— para que la página funcione si falla el visor.
La comunicación entre orígenes debe usar un canal controlado. window.postMessage() es el mecanismo estándar entre ventanas e iframes (HTML Standard). Valide event.origin en mensajes entrantes y establezca un origen objetivo específico en los salientes; no use "*" de forma predeterminada. La documentación de Viewer describe una interfaz de mensajes kaleidr-embed:* para el comportamiento compatible. Los estados del visor y el host deben permanecer separados: el mapa publicado controla la cámara y la selección dentro del visor; la página host controla la navegación, los formularios y la conversión.
// Published Viewer mount: share ID, not a server key
Kaleidr.mount("#published-map", {
product: "viewer",
shareId: "YOUR_SHARE_ID"
});

¿Cómo deben versionar, medir y revertir los equipos los mapas publicados?
Guardar un borrador no equivale a publicar una versión activa. Mantenga identificadores estables para los lugares y la inserción, de modo que las páginas host no se rompan cuando cambie el contenido. Versione detrás de ese ID estable: edite un nuevo borrador, revise la calidad de los datos y el diseño móvil, publique, verifique producción y revierta si falla. Mida más que las cargas del mapa. Señales útiles incluyen mapa listo, selección de lugar, CTA y errores; considere esos nombres recomendaciones editoriales salvo que el producto los documente como eventos automáticos. Separe la analítica de autoría y la del visor para que los experimentos de borrador no contaminen los embudos de producción.
Pruebe estados de fallo: dominio bloqueado, ID compartido sin publicar, red lenta y ausencia de alternativa textual. Dominios de producción, Content Security Policy, atribución y seguridad de enlaces salientes forman parte de la misma versión. Las páginas CMS necesitan un contenedor reservado y una instantánea revisada. Los productos SaaS deben acoplar el mapa al estado de la aplicación. Las páginas de marketing necesitan una vía de conversión que no dependa solo de la interacción con el mapa. Los mapas en tiempo real y 3D añaden mayores requisitos de rendimiento y contingencia; publíquelos solo si la página host puede asumir el coste.

¿Qué errores de publicación deben evitar los equipos?
| Error | Riesgo | Mejor enfoque |
|---|---|---|
| Tratar una URL de borrador como producción | Contenido inestable e inserciones rotas | Publicar una instantánea revisada |
| Publicar sin altura reservada | Cambio de diseño y mapa contraído | Fijar relación de aspecto o tamaño |
| Cargar el mapa principal de forma diferida | Primera pantalla vacía | Cargar inmediatamente mapas visibles |
Usar postMessage("*") |
Suplantación entre orígenes | Validar y dirigir el origen |
| Tratar un ID compartido como clave secreta | Modelo de acceso confuso | Mantener claves del servidor en backend |
| Omitir controles de dominio | Reutilización inesperada | Restringir orígenes de inserción |
| Publicar filas privadas en un enlace público | Filtración de datos | Autorizar antes de publicar |
| Cambiar el ID con cada edición | Páginas host rotas | Versionar tras un ID estable |
| Medir solo cargas | Calidad del producto desconocida | Medir listo, selección, CTA y errores |
| No ofrecer texto alternativo | Página vacía si falla el visor | Repetir hechos clave en HTML |
Veredicto final
La publicación funciona cuando el equipo trata el mapa activo como una superficie de producto, no como una exportación. Elija compartir, insertar o integrar según cuánto deba acoplarse el mapa al contenido host y al estado de la aplicación. Añada después el contrato de producción: acceso, dominios permitidos, diseño reservado, mensajería con origen validado, versiones, medición y reversión. Kaleidr Studio publica actualmente páginas independientes y widgets insertables, y Kaleidr Viewer dirige un mapa publicado mediante un ID compartido. Esta separación mantiene ágil la autoría, mientras la página host conserva la responsabilidad de la conversión, la accesibilidad y la disciplina de lanzamiento.
Publique mapas con Kaleidr Studio
Cree, revise y despliegue un mapa como página independiente o widget insertable y monte inserciones publicadas de Viewer donde las necesite el sitio host. Abra Kaleidr Studio para publicar y consulte la documentación para desarrolladores sobre ID compartidos de Viewer, dominios permitidos y montajes del SDK.
Preguntas frecuentes
¿Qué es la publicación de mapas?
Es el proceso de convertir un mapa editable en una experiencia estable que otros pueden abrir, insertar o usar dentro de un producto, con controles de acceso, diseño, versiones y medición.
¿Qué diferencia hay entre un enlace compartido y una inserción?
El enlace abre el mapa publicado como página propia. La inserción coloca ese mapa dentro del diseño de un sitio o producto host.
¿Cuándo debe usarse integración en el producto en vez de una inserción?
Cuando filtros, registros seleccionados o estado del flujo deban permanecer sincronizados con el mapa y no solo rodear un visor independiente.
¿Kaleidr Viewer necesita una clave de API?
La documentación actual describe los mapas publicados de Viewer como protegidos por enlace, no por clave de API. Consulte la documentación vigente antes del despliegue, pues los modelos de acceso pueden evolucionar.
¿Un ID compartido equivale a una clave de API?
No. Identifica una experiencia publicada. Una clave de API de servidor autoriza operaciones privilegiadas y debe permanecer secreta.
¿Debo cargar de forma diferida una inserción de mapa?
Normalmente, si está fuera de la primera pantalla o es secundaria. Si el mapa es la interacción principal, cárguelo como parte de la experiencia crítica y optimice su inicio.
¿Cómo hago accesible un mapa en iframe?
Asigne al iframe un title conciso, aporte HTML circundante útil, permita tareas con teclado y ofrezca información textual que no exija arrastrar el mapa.
¿Pueden comunicarse dos páginas de distinto origen con un mapa insertado?
Sí, si la integración lo admite. window.postMessage() permite mensajería controlada entre orígenes. Use un origen objetivo concreto y valide los mensajes entrantes.
¿Puedo publicar datos empresariales privados mediante una inserción?
Solo si la arquitectura de publicación y autorización está diseñada para ello. Proteger la página host con inicio de sesión no hace privada automáticamente una URL de mapa independiente.
¿Debe tener versiones un mapa publicado?
Sí, cuando los cambios puedan afectar a clientes, inserciones, informes o flujos empresariales. Las versiones hacen más seguras la reversión y la depuración.
¿Puede Kaleidr Studio publicar mapas sin código?
Sí. La página actual de Studio indica que los autores pueden crear y perfeccionar mapas visualmente y publicarlos como páginas independientes o widgets insertables.
Referencias
- Kaleidr. Design Custom Maps, Powered by Spatial AI. Kaleidr Studio. Consultado el 19 de agosto de 2026. https://kaleidr.com/studio
- Kaleidr. kaleidr.js Loader. Kaleidr Developer Documentation. Consultado el 19 de agosto de 2026. https://docs.kaleidr.com/sdk/kaleidr-js
- Kaleidr. Viewer Embed. Kaleidr Developer Documentation. Consultado el 19 de agosto de 2026. https://docs.kaleidr.com/sdk/viewer-embed
- WHATWG. HTML Standard — Lazy loading attributes. Consultado el 19 de agosto de 2026. https://html.spec.whatwg.org/multipage/urls-and-fetching.html#lazy-loading-attributes
- WHATWG. HTML Standard — The iframe element. Consultado el 19 de agosto de 2026. https://html.spec.whatwg.org/multipage/iframe-embed-object.html#the-iframe-element
- W3C. Understanding Success Criterion 4.1.2: Name, Role, Value. WCAG 2.2. Consultado el 19 de agosto de 2026. https://www.w3.org/WAI/WCAG22/Understanding/name-role-value.html
- WHATWG. HTML Standard — Posting messages. Consultado el 19 de agosto de 2026. https://html.spec.whatwg.org/multipage/web-messaging.html#posting-messages
- web.dev. Lazy load images and iframe elements. Consultado el 19 de agosto de 2026. https://web.dev/learn/performance/lazy-load-images-and-iframe-elements
@misc{kaleidr_studio_publish_2026,
title = {Design Custom Maps, Powered by Spatial AI},
author = {{Kaleidr}},
note = {Kaleidr Studio; accessed 19 August 2026},
url = {https://kaleidr.com/studio}
}
@misc{kaleidr_viewer_embed_2026,
title = {Viewer Embed},
author = {{Kaleidr}},
note = {Kaleidr Developer Documentation; accessed 19 August 2026},
url = {https://docs.kaleidr.com/sdk/viewer-embed}
}
@misc{kaleidr_js_loader_2026,
title = {kaleidr.js Loader},
author = {{Kaleidr}},
note = {Kaleidr Developer Documentation; accessed 19 August 2026},
url = {https://docs.kaleidr.com/sdk/kaleidr-js}
}
@misc{whatwg_iframe_2026,
title = {HTML Standard -- The iframe element},
author = {{WHATWG}},
note = {Accessed 19 August 2026},
url = {https://html.spec.whatwg.org/multipage/iframe-embed-object.html#the-iframe-element}
}
@misc{wcag_412_2026,
title = {Understanding Success Criterion 4.1.2: Name, Role, Value},
author = {{W3C}},
note = {WCAG 2.2; accessed 19 August 2026},
url = {https://www.w3.org/WAI/WCAG22/Understanding/name-role-value.html}
}
@misc{whatwg_lazy_loading_2026,
title = {HTML Standard -- Lazy loading attributes},
author = {{WHATWG}},
note = {Accessed 19 August 2026},
url = {https://html.spec.whatwg.org/multipage/urls-and-fetching.html#lazy-loading-attributes}
}
@misc{whatwg_postmessage_2026,
title = {HTML Standard -- Posting messages},
author = {{WHATWG}},
note = {Accessed 19 August 2026},
url = {https://html.spec.whatwg.org/multipage/web-messaging.html#posting-messages}
}
@misc{webdev_lazy_iframe_2026,
title = {Lazy load images and iframe elements},
author = {{web.dev}},
note = {Accessed 19 August 2026},
url = {https://web.dev/learn/performance/lazy-load-images-and-iframe-elements}
}