Saltar al contenido principal

Resumen

Un Bundle agrega las respuestas de varios endpoints en un único payload por secciones. En vez de que el cliente haga una llamada por cada widget de una página, llama a un solo bundle endpoint y recibe los datos de todas las secciones en una sola respuesta. Para el panorama completo, consulta Conceptos básicos.

Dónde encontrarlo

Los bundles se administran desde el APIs Playground: un bundle es propiedad de un endpoint construido desde la library Bundle.

Secciones & configuraciones

Un bundle es una lista de secciones (una por widget/área de la página). Cada sección tiene una o más configuraciones, y una configuración es:
ParteQué hace
EndpointEl endpoint cuya respuesta llena la sección.
ConditionsTargeting opcional — UTM params, query params extra, o un segment.
Parameter mappingRenombra los params entrantes antes de llegar al endpoint.
Parameter configQué params están expuestos (quien llama puede sobrescribir) vs fijos a un default.

Targeting por sección

Cuando una sección tiene varias configuraciones, el bundle elige la mejor coincidencia por sección, en este orden de prioridad:
  1. Coincidencia de params — una configuración cuyas condiciones de UTM / params extra coinciden todas con el request.
  2. Coincidencia de segment — una configuración cuyo segment es uno al que pertenece el contact.
  3. Fallback — la primera configuración (el default, normalmente sin condiciones).
Esto es lo que impulsa el A/B testing y la personalización por segment dentro de una sola sección.

Parámetros

Por configuración, los parámetros se manejan en dos pasos:
  • Mapping — renombra un param entrante al nombre que espera el endpoint.
  • Config — para cada parámetro: expuesto usa el valor de quien llama (o un default si falta); no expuesto siempre usa el default (quien llama no puede sobrescribirlo). Los params no listados pasan tal cual.

Autenticación

El requisito de auth de un bundle es derivado: requiere autenticación si algún endpoint referenciado la requiere. No lo defines directamente — sigue al endpoint de sección más estricto.

Bundle endpoint vs section endpoints

Hay dos roles de endpoint:
  • El bundle endpoint — el punto de entrada que posee el bundle (construido desde la library Bundle). Crearlo, renombrarlo o eliminarlo crea, sincroniza o elimina el bundle.
  • Los section endpoints — los endpoints que cada sección llama para obtener sus datos. Solo se ejecutan los endpoints habilitados.
Un bundle también puede estar acotado a un funnel; un bundle global y uno acotado a un funnel pueden compartir slug.

Ejemplo

Una landing con un hero (A/B por UTM) y un feed (personalizado por segment), obtenidos en una sola llamada. Un bundle se llama como cualquier endpoint, en /api/v1/endpoints/{slug} — donde el slug es el slug del bundle endpoint:
GET /…/api/v1/endpoints/home-page?utm_variant=b
La respuesta devuelve ambas secciones resueltas: el hero usa la variante b (coincidencia de UTM), y el feed usa el endpoint VIP si el contact está en ese segment — si no, el feed por defecto.

Seeds

El soporte de Seeds para bundles está próximamente.

Gobernanza y permisos

Solo un super admin o un Master puede crear, editar y eliminar bundles.

Acceso por API

La User API gestiona los bundles y sus secciones; la Contact API resuelve un bundle por su slug y devuelve la respuesta de cada sección (con una api-key). Consulta la API reference.

Relacionado

APIs Playground

Donde se construyen el bundle y sus endpoints.

Engagement Funnels

Bundles acotados a un funnel.

Segments

Targeting de secciones por segment.