API de Centro multimedia

La API de Centro multimedia permite a los integradores insertar objetos multimedia como archivos de video y audio, y datos de consumo de medios en HubSpot. También crea las siguientes características en la cuenta de HubSpot del usuario: 

  • Módulos para incrustar objetos multimedia en los editores de arrastrar y soltar de HubSpot para páginas y correos electrónicos. 
  • Eventos de la cronología del CRM que se muestran cuando los prospectos o clientes han interactuado con videos, audio y otros tipos de medios. 
  • Listas segmentadas para experiencias específicas y personalizadas.
  • Workflows para automatizar interacciones, según eventos de consumo de elementos multimedia.
  • Informes para medir el impacto de los materiales multimedia.

El centro multimedia utiliza tanto objetos personalizados como eventos unificados, el sistema de seguimiento de eventos de HubSpot. Esto significa que puedes usar tanto la API de Centro multimedia como la API de objetos personalizados para crear tu integración. 

Usar la API de Centro multimedia

Necesitas una cuenta de desarrollador de HubSpot para registrar tu aplicación de Centro multimedia y configurar tus definiciones iniciales de objetos multimedia antes de conectar tu aplicación a la cuenta de un usuario de HubSpot. 

Crear y personalizar tus definiciones de objetos multimedia

Para definir un objeto multimedia, realiza una solicitud POST a /media-bridge/{appId}/settings/object-definitions. Usarás el parámetro mediaTypes para definir el objeto: VIDEO, AUDIO, DOCUMENTIMAGE u OTHER

Después de definir los objetos multimedia, crea y modifica las propiedades del objeto multimedia realizando una solicitud PATCH a /media-bridge/v1/{appId}/schemas/{objectType} y una solicitud POST a /media-bridge/v1/{appId}/properties/{objectType}

Cualquier llamada a la API realizada incluirá su ID de cuenta de desarrollador como el parámetro de consulta portalID

Conectar la aplicación de centro multimedia con la cuenta de un usuario de HubSpot

Para conectar tu aplicación de centro multimedia con la cuenta de un usuario de HubSpot, debes crear una definición de aplicación en la cuenta de tu desarrollador de HubSpot para la aplicación. Las definiciones de la aplicación incluyen:

  • Detalles como el logotipo y el texto que se mostrarán al usuario de HubSpot cuando tu integración intente realizar una conexión inicial a su cuenta.
  • Examina tus necesidades de integración en la cuenta de HubSpot del usuario. 

Para conectar tu aplicación de centro multimedia con la cuenta de un usuario de HubSpot: 

  • Crea una definición de aplicación en tu cuenta de desarrollador para la aplicación de centro multimedia.
  • Incluye los siguientes alcances al definir tu aplicación: 
    • media_bridge.read
    • media_bridge.write
  • Utiliza la autenticación OAuth al autenticar las llamadas realizadas por tu aplicación. Más información sobre métodos de autentificación.

Para verificar que la aplicación está instalada correctamente en el portal de un cliente:

  • Visita https://app.hubspot.com/media-bridge-demo/{HubID}, reemplazando {HubID} con el ID de la cuenta.
  • En la esquina superior derecha, haz clic en el menú desplegable Aplicación y selecciona la aplicación de centro multimedia
  • En la aplicación, puedes ver los tipos de medios compatibles de la aplicación y crear elementos multimedia de ejemplo.

Una vez que la aplicación de centro multimedia se ha instalado en el portal de un cliente, puedes:

Create your media objects

Después de crear tus definiciones de objetos multimedia e instalar tu aplicación de centro multimedia en la cuenta de un usuario, puedes usar el token OAuth para crear y modificar objetos multimedia en la cuenta. Como los objetos multimedia son objetos personalizados, usa los puntos de terminación de la API de objetos personalizados para crearlos:

  • Haz una solicitud GET a /media-bridge/v1/{appId}/settings/object-definitions/{mediaType} para encontrar el objectType.
  • Haz una solicitud POST a /crm/v3/objects/{objectType} para crear el objeto multimedia en la cuenta del usuario. 

Un objeto multimedia representa un fragmento de contenido incrustable en un sistema de tercero. Una vez que se agrega un objeto multimedia al centro multimedia, se puede incrustar en el contenido de CMS de HubSpot y asociarlo con eventos multimedia.

Para los objetos multimedia VIDEO y AUDIO, las tablas a continuación indican todas las propiedades predeterminadas y requeridas (* denota requerido): 

Default Required properties of the audio video media types
ParameterTypeDescription
id
Number

Un ID utilizado para identificar el elemento específico de medios en el sistema del Centro multimedia de HubSpot. Esto es autogenerado por HubSpot, y no pueden configurarlo los desarrolladores.

hs_duration
Number

La duración de los medios en milisegundos.

hs_oembed_url*
String

Una URL que debe devolver una respuesta oEmbed válida que sigue la especificación oEmbed. Requiere video o tipo enriquecido con un iframe en html.

hs_file_url
String

La URL del archivo multimedia sin procesar. Esto puede utilizarse en el futuro para admitir la incrustación en redes sociales.

hs_thumbnail_url
String

URL de una imagen utilizada como miniatura para incrustar los elementos multimedia en el contenido. El tamaño ideal para esta miniatura es de 640x480 píxeles.

hs_poster_url
String

URL de una imagen que representa los medios. Esta imagen debe tener las mismas dimensiones que los medios originales y se puede usar en lugares donde se necesita un parámetro de sustitución de imagen (por ejemplo, cuando se insertan los medios en un correo electrónico).

hs_external_id
String

El ID de los medios en el sistema del tercero. Esto les da a los integradores la capacidad de recuperar medios del Centro multimedia según el mismo ID que usan en su propio sistema. (Este es el punto de terminación de API que aprovecha esta asignación)

hs_folder_path
String

Ruta suministrada por el proveedor al objeto, destinada a representar la ubicación del objeto en el sistema de carpetas del tercero (si existe). HubSpot intentará representar esta estructura de directorios al mostrar estos objetos al usuario, pero puede anidar los objetos y carpetas de cada proveedor dentro de una carpeta de nivel superior con el nombre del proveedor.

hs_title*
String

El nombre de los medios. Esto se mostrará dentro de la interfaz de usuario de HubSpot en lugares como el selector de medios.

hs_details_page_link
String

Una URL que permite a un usuario ver los elementos multimedia o interactuar con ellos en el sistema del proveedor de elementos multimedia . Esto se utiliza en la interfaz de usuario de HubSpot para dar a los usuarios la capacidad de identificar los medios sin depender solo del título.

Para los objetos multimedia de IMAGE, las tablas a continuación indican todas las propiedades predeterminadas y requeridas (* denota requerido): 

Default Required properties of the audio video media types
ParameterTypeDescription
id
Number

Un ID utilizado para identificar el elemento específico de medios en el sistema del Centro multimedia de HubSpot. Esto es autogenerado por HubSpot, y no pueden configurarlo los desarrolladores.

hs_oembed_url*
String

Una URL que debe devolver una respuesta oEmbed válida que sigue la especificación oEmbed. Requiere video o tipo enriquecido con un iframe en html.

hs_file_url*
String

La URL del archivo de medios sin procesar. Esto puede utilizarse en el futuro para admitir la incrustación en redes sociales.

hs_thumbnail_url
String

URL a una imagen que se utilizará como la miniatura para incrustar los medios en el contenido en lugares como el selector de medios. El tamaño ideal para esta miniatura es de 640x480 píxeles.

hs_poster_url
String

URL de una imagen que representa los medios. Esta imagen debe tener las mismas dimensiones que los medios originales y se puede usar en lugares donde se necesita un parámetro de sustitución de imagen (por ejemplo, cuando se insertan los medios en un correo electrónico).

hs_external_id
String

El ID de los medios en el sistema del tercero. Esto les da a los integradores la capacidad de recuperar medios del Centro multimedia según el mismo ID que usan en su propio sistema. (Este es el punto de terminación de API que aprovecha esta asignación)

hs_folder_path
String

Ruta suministrada por el proveedor al objeto, destinada a representar la ubicación del objeto en el sistema de carpetas del tercero (si existe). HubSpot intentará representar esta estructura de directorios al mostrar estos objetos al usuario, pero puede anidar los objetos y carpetas de cada proveedor dentro de una carpeta de nivel superior con el nombre del proveedor.

hs_title*
String

El nombre de los medios. Esto se mostrará dentro de la interfaz de usuario de HubSpot en lugares como el selector de medios.

hs_details_page_link
String

Una URL que permite a un usuario ver los medios o interactuar con ellos en el sistema del proveedor de medios. Esto se utiliza en la interfaz de usuario de HubSpot para dar a los usuarios la capacidad de identificar los medios sin depender solo del título.

Crear módulos del CMS para incrustar elementos multimedia

Cada proveedor es responsable de crear su propio módulo para representar sus medios en el CMS de HubSpot. 

Cuando se instala una aplicación de centro multimedia en una cuenta de HubSpot, el campo Insertar en el módulo tiene un tipo de fuente Integración de elementos multimedia adicional. Esto le permite al usuario seleccionar elementos multimedia de la aplicación instalada para incrustarlos en la página de su sitio web.

Después de que el usuario selecciona un elemento multimedia específico que se va a incrustar, la oembed_url y la oembed_response de los medios están disponibles en HubL para renderizar fácilmente los reproductores. Además, el id y el media_type de los medios seleccionados se almacenan para habilitar la consulta del objeto del CRM subyacente a través de la función crm_objects de Hubl. Esto se puede usar para extraer cualquiera o todas las propiedades que son parte de un objeto multimedia.

Un ejemplo de uso de la función crm_objects HubL con un objeto multimedia donde los ID son 459 y 922:

{% set objects = crm_objects("a123_Videos", [459,922]) %} {{ objects }}

Para buscar una imagen específica con el mismo objeto: {% set object = crm_object("a123_Images", 459) %}{{ object }}

Las aplicaciones pueden buscar el tipo de objeto ("a123_Videos" en el ejemplo) haciendo una solicitud GET a /media-bridge/{appId}/settings/object-definitions/{mediaType}.

Los desarrolladores deben usar los puntos de terminación de la API del código fuente de CMS para insertar su código de módulo personalizado en las cuentas de los clientes una vez que los clientes se hayan conectado a través de oAuth. Una vez que el código del módulo se introduce en la cuenta del cliente, automáticamente podrán comenzar a usar el módulo del desarrollador en su contenido.

 

Configurar un dominio oEmbed

Para utilizar la función HubL oEmbed, el dominio que se utiliza para obtener la respuesta oEmbed debe registrarse haciendo una solicitud a /media-bridge/v1/{appId}/settings/oembed-domains. Se deben incluir los siguientes parámetros:

  • Esquema: el patrón de URL para las URL de los elementos multimedia. Este patrón de URL se usa para hacer coincidir la URL pasada a la función oEmbed HubL con tu API de oEmbed. Los valores comodín son compatibles con * (por ejemplo, www.domain.com/*).
  • URL: la URL de la API de oEmbed. La URL del elemento multimedia se pasa a esta URL a través de un parámetro de URL
  • Descubrimiento (booleano): determina si tu API de oEmbed admite o no la función Discovery de oEmbed. 

Por opción predeterminada, los dominios oEmbed registrados estarán disponibles para todos los clientes que hayan instalado tu aplicación. Si tienes dominios personalizados que son únicos para cada cliente, puedes especificar en qué cuenta se debe permitir el uso de un dominio oEmbed pasando un valor portalId a la solicitud de API al configurar el dominio oEmbed. Esto garantizará que solo la cuenta de HubSpot especificada pueda usar ese dominio oEmbed. 

Crear un módulo personalizado

Para crear un módulo personalizado:

  • Navega a Marketing > Archivos y plantillas > Herramientas de diseño
  • En la parte superior izquierda, haz clic en Archivo Archivo nuevo.
  • En el cuadro de diálogo, haz clic en el menú desplegable ¿Qué te gustaría construir hoy? y selecciona Módulo
  • Haz clic en Siguiente
  • Selecciona la casilla de comprobación junto a cada tipo de contenido en el que se utilizará el módulo: páginas, publicaciones de blog, anuncios de blogs, correos electrónicos o cotizaciones. Los módulos utilizados en plantillas de correo electrónico no pueden incluir CSS o JavaScript. 
  • Selecciona si este módulo será un módulo local o un módulo global. Si creas un módulo global, editar el contenido de este módulo actualizará cada ubicación donde se use el módulo. 
  • Introduce un nombre de archivo para tu módulo y haz clic en Crear.
  • En la sección Campos a la derecha, haz clic en el menú desplegable Agregar campo y selecciona Incrustar

  • En la sección Tipos de fuentes compatibles, selecciona Integración multimedia.
  • En la sección Contenido incrustado predeterminado, haz clic en Seleccionar desde [media bridge app].
    • En el panel derecho, selecciona el elemento multimedia que deseas incrustar en el módulo. 
    • Establece cualquiera de las opciones de editor, condiciones de presentación de campos y opciones de repetidor de campos. 
  • En Nombre de la variable HubL, haz clic en Copiar > Copiar fragmento.
  • Pega el fragmento en la sección module.html.
  • Para obtener una vista preliminar de cómo se verá el módulo en tu página, haz clic en Vista preliminar.
  • En la sección de la izquierda, haz clic en Seleccionar desde [media bridge app] y luego selecciona el elemento multimedia que deseas previsualizar. 

Envía tus eventos de elementos multimedia

Un evento multimedia es un evento que ocurre en relación con un objeto multimedia, como un evento de reproducción. Una vez que se envía un evento multimedia a la aplicación de centro multimedia, se puede usar en informes y en tarjetas CRM de línea de tiempo. 

Hay tres tipos de eventos multimedia:

  • Evento reproducción: representa cuándo un usuario comienza a reproducir un elemento multimedia. 
  • Evento de cuartil: representa cuándo un usuario alcanzó hitos trimestrales (0%, 25%, 50%, 75%, 100%) en términos de cuántos elementos multimedia ha consumido. 
  • Evento de período de atención: representa cuando un usuario haya consumido completamente un elemento multimedia o cuando el usuario haya completado su sesión.

Los eventos se pueden enviar haciendo una solicitud POST a /media-bridge/v2/events/media-played, /media-bridge/v2/events/media-played-percent y /media-bridge/v2/events/attention-span respectivamente

Para que los eventos multimedia se muestren en la cronología de contacto del usuario en HubSpot, se debe enviar un evento de reproducción a la aplicación de centro multimedia para cada sesión. Los eventos de una sola sesión se mostrarán en una tarjeta en la cronología de actividad de contacto. 

Cuando los eventos se envían utilizando los puntos de terminación de eventos v2, se procesan de forma asíncrona, a diferencia de los enviados a través de los puntos de terminación v1. Como tal, recomendamos lo siguiente:

  • La versión v1 de los puntos de terminación debe usarse para cualquier prueba, ya que una solicitud errónea se eliminará inmediatamente.
  • La versión v2 de los puntos de terminación debe usarse en la producción, ya que su naturaleza asíncrona ayudará a evitar retrasos en el cliente mientras se escribe el evento en el centro multimedia. Los eventos también se retienen y se vuelven a intentar en caso de una falla temporal en el servidor del centro multimedia.

Conectar un evento con un contacto

Para conectar un evento multimedia con un registro de contacto, los integradores deben proporcionar un contactId o un contactUtk. Si solo se proporciona un contactUtk, se convertirá en un contactId. Si ambos se proporcionan en la solicitud, el contactId se utilizará como fuente de la verdad. Este parámetro permite a la aplicación de centro multimedia crear una asociación entre el registro de contacto y el evento.

Una vez que un evento multimedia se ha conectado a un registro de contacto, el evento se puede usar en informes de objetos cruzados. Esto permite a los clientes vincular sus eventos multimedia con los registros de contacto, así como con las empresas y negocios asociados.

Conexión de un evento con un elemento multimedia

Para asociar un evento multimedia a un elemento multimedia específico, se deben incluir en la solicitud los parámetros mediaID o externalID. Si se proporcionan ambos, el mediaID se utilizará como fuente de la verdad.

Conectar un evento con una página

Para asociar un evento multimedia a una página de HubSpot, se deben incluir los siguientes parámetros en la solicitud:

  • Si la página está alojada en el CMS de HubSpot, se debe proporcionar el pageId.
  • Si la página no está alojada en el CMS de HubSpot, se debe incluir pageName y pageUrl.

La siguiente tabla describe las propiedades compatibles para los tres eventos multimedia:

Use this table to describe parameters / fields
PropiedadTipo de eventoDescription
mediaBridgeObjectId
All Events

El ID de los medios con los que se relaciona este evento.

externalId
String

El ID de los medios en el sistema del tercero. Esto les da a los desarrolladores la capacidad de referirse a los medios en el Centro multimedia basándose en el mismo identificador que usan en su propio sistema. Esto se puede usar en lugar del mediaBridgeObjectId en eventos. Si se proporcionan tanto un externalId como un mediaBridgeObjectId, se usará el mediaBridgeObjectId y se ignorará el externalId.

sessionId
All Events

Un identificador único para representar una sesión de visualización. Esto puede significar cosas diferentes para diferentes proveedores, y HubSpot permite que los proveedores decidan qué significa una sesión para ellos. Esto se utilizará para agrupar eventos que ocurrieron en la misma sesión. Se espera que esto lo genere el sistema del tercero.

contactId
All Events

El ID del contacto en el sistema de HubSpot que consumió los medios. Esto se puede buscar utilizando la API Get contact by usertoken (utk) de HubSpot. La API también admite el suministro de un usertoken, y se encargará de convertirlo en un ID de contacto automáticamente.

contactUtk
All Events

El usertoken (utk) que identifica qué contacto consumió los medios.

pageId
All Events

El ID de contenido de la página en la que se produjo un evento.

pageName
All Events

El nombre o el título de la página en la que se produjo un evento.

pageUrl
All Events

La URL de la página en la que se produjo un evento.

occurredTimestamp
All Events

La marca de tiempo en la que ocurrió este evento, en milisegundos en tiempo Unix.

attentionSpanMapString / attentionSpanMap
Attention Span

Estos son los datos sin procesar que proporcionan los datos más detallados sobre los períodos de los medios y cuántas veces cada período fue consumido por el usuario. 

Ejemplo: considera un video de 10 segundos donde cada segundo es un período. Si un visitante ve los primeros 5 segundos del video, luego reinicia el video y vuelve a ver los primeros 2 segundos, el attentionSpanMapString resultante sería "0=2;1=2;2=1;3=1;4=1;5=0;6=0;7=0;8=0;9=0;".

totalPercentPlayed
Attention Span

El porcentaje de los medios que el usuario consumió. Los proveedores pueden calcular esto de manera diferente según la forma en que consideren las vistas repetidas de la misma parte de los medios. Por esta razón, la API no intentará validar totalPercentWatched con respecto a la información del período de atención del evento. Si falta, HubSpot calculará esto a partir del mapa del período de atención de la siguiente manera: (número de períodos con un valor de 1 o más)/(número total de períodos).

totalSecondsPlayed
Attention Span

Los segundos que un usuario pasó consumiendo los medios. El Centro multimedia calcula esto como TotalPercentPlayed*mediaDuration. Si un proveedor desea que esto se calcule de manera diferente, puede proporcionar el valor precalculado cuando crea el evento

playedPercent
Quartile Event

Un valor de porcentaje del cuartil (0, 25, 50, 75, 100) para cuánto de los medios se ha consumido hasta ahora.

iframeUrl
Played Event

Una URL que se puede usar para mostrar datos de un sistema externo usando un iFrame. Cuando se incluya, el evento de la cronología del contacto mostrará un enlace que abrirá una ventana modal que muestra el contenido del iFrame cuando se hace clic.

mediaType
String

El tipo de elemento multimedia al que pertenece el evento (por ejemplo, VIDEO, AUDIO) Esto nos permite asignar adecuadamente el evento a los objetos correctos cuando un solo proveedor admite varios tipos de elementos multimedia.


¿Te resultó útil este artículo?
Con este formulario puedes enviar tu opinión sobre nuestros documentos para desarrolladores. Si tienes comentarios sobre el producto de HubSpot, puedes enviarlos al Foro de ideas.