Ir a contenido principal
Nota: Este contenido se tradujo a través de un software y es posible que no haya sido revisado. La versión en inglés se considera, por tanto, la versión oficial y es posible que haya sido actualizada. Para acceder a la versión en inglés, haz clic aquí.

Consultar datos de HubSpot en Snowflake

Última actualización: mayo 31, 2024

Disponible con cualquiera de las siguientes suscripciones, a no ser que se indique de otro modo:

Operations Hub   Enterprise

Después de conectar Snowflake a tu cuenta de HubSpot, puedes utilizar Data Share de Snowflake para consultar los datos de HubSpot desde tu cuenta de Snowflake.

Retraso de datos y región de su cuenta Snowflake

Tendrá acceso al esquema V2_LIVE, que se actualiza cada 15 minutos, y al esquema V2_DAILY, que se actualiza todos los días.

Por favor, ten en cuenta: que las siguientes vistas del esquema V2_LIVE sólo se actualizan diariamente: association_definitions, owners, pipelines y pipeline_stages.

Configura tu entorno Snowflake

Para consultar tus datos de HubSpot en Snowflake, tendrás que seleccionar el almacén, la base de datos y el esquema que quieres consultar. Puedes establecerlos a nivel de hoja de trabajo para incluirlos automáticamente en tus consultas, o puedes agregarlos manualmente.

Para seleccionar el almacén, la base de datos y el esquema a nivel de hoja de cálculo:

  • En la fila superior de la hoja de trabajo, haga clic en la barra de acciones de la hoja de trabajo

    snowflake-worksheet-settings0
  • En la ventana emergente:
    • Haz clic en el menú desplegable Almacén y selecciona tu almacén.
    • Haz clic en el menú desplegable Base de datos y selecciona tu base de datos de HubSpot.
    • Haz clic en el menú desplegable Esquema y selecciona el esquema que deseas utilizar:
        • V2_DAILY: el esquema diario para consultar datos basados en tablas. Los datos de este esquema se actualizan una vez al día. El uso de este esquema dará lugar a consultas más rápidas, y se recomienda para consultar directamente en Snowflake.
        • V2_LIVE: el esquema en vivo basado en Secure Views de los datos de HubSpot. Los datos de este esquema se actualizan hasta cada 15 minutos. Si estás consultando un gran conjunto de datos, las consultas pueden ser lentas. En este caso, se recomienda copiar los datos en tu propia tabla primero con un proceso ETL, y luego consultar esa tabla.


      snowflake-worksheet-settings-window0

Con tu entorno configurado, puedes hacer consultas a tus datos de HubSpot sin necesidad de agregar tu base de datos o tipo de esquema a las consultas manualmente.

Para añadir manualmente tu base de datos y tipo de esquema a las consultas, añade el nombre de la base de datos seguido del esquema al principio del campo FROM campo Por ejemplo:


SELECT objectTypeId, property_createddate
FROM hubspot_share_name.V2_LIVE.objects_deals

LIMIT 1

Resumen de datos

Las consultas se construyen utilizando SQL, y se pueden utilizar para recuperar datos de HubSpot tales como:

  • Objetos: objetos estándar y personalizados, como contactos, empresas, productos. 
  • Registros: registros individuales, como un contacto individual o una empresa. 
  • Asociaciones: todos los tipos de asociación disponibles y los registros asociados actualmente.
  • Eventos: datos de eventos tanto para eventos estándar de HubSpot, como aperturas de correos electrónicos, como para eventos de comportamiento personalizados.
  • Listas: Listas de contactos y empresasde HubSpot.
  • Propietarios: usuarios de tu cuenta de HubSpot, en relación con los registros de los que son propietarios.
  • Pipelines: pipelines de negocios y tickets, incluyendo las etapas del pipeline.
  • Propiedades: propiedades y sus valores en los registros CRM, incluido el historial de propiedades.

Más información sobre el Modelo de datos del CRM de HubSpot

Tenga en cuenta: A medida que vayamos evolucionando el intercambio de datos, iremos introduciendo cambios, algunos de ellos de última hora. Es muy recomendable suscribirse al registro de cambios para desarrolladores de HubSpot. Estos cambios se publicarán siempre en el registro de cambios antes de cualquier actualización.

Limitación y ordenación de los datos devueltos

Al elaborar consultas, puedes controlar cuántos datos se devuelven, junto con el orden en que se devuelven incluyendo LIMIT y ORDER BY en tu consulta. Por ejemplo, para consultar todos los contactos con sus propiedades, pero devolver sólo tres resultados y ordenarlos por el ID del contacto, podrías construir tu consulta de la siguiente manera:


SELECT objectTypeId, updatedAt, ingestedAt
FROM objects_deals
ORDER BY objectId
LIMIT 10;

Tipos de datos de columnas

Cuando se consultan datos en Snowflake, las columnas que se devuelven dependen de los datos que se están consultando. Puedes ver las columnas disponibles para una tabla o vista determinada en Snowflake seleccionando la vista en la barra lateral izquierda.

Tenga en cuenta quepara el resto de este documento, utilizamos el término objeto de base de datos cuando el contexto se aplica tanto a las tablas como a las vistas.

snowflake-sidebar-view-column-details0


Para devolver una columna concreta, incluye esa columna en el campo SELECT de tu consulta. Por ejemplo, la siguiente consulta sólo devolverá los OBJECTID y UpdatedAt columnas:


SELECT
objectId, updatedAt
FROM objects_contacts

A continuación se presentan las definiciones generales de las columnas que puede devolver una consulta. Para otras definiciones no incluidas a continuación, consulta las definiciones de vistas individuales en el artículo anterior.

  • OBJECTTYPEID: un valor VARCHAR que representa el tipo de un objeto. Por ejemplo, 0-1 representa el objeto contactos, 0-2 representa el objeto empresas, y 2-1232 podría representar un objeto personalizado en tu cuenta. En las listas, se refiere al tipo de lista (por ejemplo, contacto o empresa). Puedes consultar todos los ID de objetos y eventos de tu cuenta utilizando la vista object_and_event_type_definitions.
  • OBJECTID: un número BIGINT que representa un único registro de un determinado tipo de objeto en tu cuenta de HubSpot. Para identificar un registro, es necesario utilizar tanto el ID del tipo de objeto como el ID del objeto.
  • INGESTEDAT: la marca de tiempo de cuándo se añadió una fila de datos a Snowflake, representada por un valor TIMESTAMP_NTZ. No está relacionado con la marca de tiempo lógica de una operación de creación o actualización en HubSpot.
    • Debido al procesamiento interno de HubSpot, la marca de tiempo de ingesta de una fila puede actualizarse incluso si ninguna otra columna de la fila ha cambiado.
    • Cuando se construyen procesos ETL que copian datos modificados recientemente, se recomienda basar las consultas en la marca de tiempo de ingesta. Además, si tu flujo copia los datos diariamente, se recomienda copiar los datos de los dos días anteriores para tener en cuenta los retrasos.
  • CREATEDAT y UPDATEDAT: la marca de tiempo lógica de cuándo se crearon o actualizaron los datos en HubSpot, representada por un valor TIMESTAMP_NTZ . Estas marcas de tiempo coincidirán con las marcas de tiempo en HubSpot. Por ejemplo, la hora mostrada en HubSpot para la fecha de creación de un registro será la misma que la marca de tiempo en la columna CREATEDAT en Snowflake. Estas no están directamente relacionadas con la marca de tiempo de ingestión, y no se recomienda basar los procesos ETL en estas propiedades.
  • COMBINEDASSOCIATIONTYPE: valor VARCHAR que identifica unívocamente una definición de asociación.

Transformación de tipos de datos

A veces, se devuelven datos de una consulta con columnas VARCHAR cuando sería deseable que fueran de otro tipo. En casos como éste, se recomienda convertir el tipo de datos VARCHAR a los tipos deseados utilizando las funciones de Snowflake. Por ejemplo, las propiedades de un registro de objeto se almacenan como tipos de datos VARCHAR en la mayoría de los objetos de la base de datos, pero a veces contienen valores numéricos y de fecha. Se pueden utilizar funciones como:
try_to_number, try_to_timestamp_ntz para convertir estos datos VARCHAR a sus tipos NUMBER y DATETIME respectivamente:


SELECT objectid, value AS amount_str, try_to_number(value) AS amount

FROM object_properties
WHERE objecttypeid='0-3' AND name='amount'
LIMIT 1

Consultas de objetos

A continuación, aprende a consultar datos de objetos y registros específicos de HubSpot, junto con los datos que se devuelven. 

Los datos de los objetos de diferentes tipos están organizados y disponibles de dos maneras: 

  • Individual: Cada tipo de objeto se almacena en su propia vista y contiene sólo registros del mismo tipo de objeto, por ejemplo, objects_contacts contiene sólo registros de contactos. Esto elimina la necesidad de especificar un objecttypeid durante la consulta. Estas vistas son más fáciles de consultar ya que no es necesario conocer los ObjectTypeIds. También devuelven los datos en un formato más utilizable, en el que cada fila corresponde a un objeto y a la versión actual de sus propiedades. Mientras no experimente consultas lentas, es aconsejable utilizar estas vistas para recuperar los datos de los objetos. Vea más en las vistas de Objects_X más abajo. 
  • Combinado: Todos los registros de todos los tipos de objetos se combinan en un objeto de la base de datos. Por lo tanto, al realizar la consulta, es necesario especificar un filtro como "WHERE objectTypeId='0-1'. Por ejemplo, puede utilizar los siguientes objecttypeids al consultar:
Nombre del objeto objectTypeId
Contactos 0-1
Empresas 0-2
Elementos de pedido 0-8

A losobjetos personalizados se les asignará un ID en el momento de su creación, y se identificarán como 2-unique_ID. Por ejemplo, 2-12345. Más información sobre object_and_event_type_definitions.

Estos objetos de la base de datos suelen ser adecuados si se desea un mejor rendimiento de las consultas que el que se puede obtener con las vistas objects_x. Ver más detalles en object_with_object_properties, object_properties, objects y object_properties_history más abajo.

objetos_x vistas

En este objeto de la base de datos, cada tipo de objeto disponible, incluidos los objetos personalizados, tiene su propia vista específica, y cada vista contiene sólo los registros de los objetos de ese tipo de objeto específico. Estas vistas se nombran siguiendo el formato OBJECTS_<object type name> donde <object type name> es la etiqueta de la forma plural deltipo de objeto.(Tenga en cuenta que si el tipo de objeto no tiene forma plural, entonces <object type name> será simplemente la etiqueta de la forma singular del nombre del tipo de objeto concatenada con "S").

Las consultas a esta vista devuelven una fila para cada registro dentro de un objeto con cada propiedad del objeto disponible como una columna separada.

A continuación encontrará la lista completa de los tipos de objetos disponibles en HubSpot (es decir, no personalizados), una breve descripción de los datos que representan y sus correspondientes vistas:

 

Tipo de objeto HubSpot

objectTypeId

Descripción

CONTACTO

0-1

Información sobre las personas que interactúan con su empresa

EMPRESA

0-2

Información sobre empresas u organizaciones individuales

NEGOCIO

0-3

Detalles sobre las oportunidades de ingresos con un contacto o empresa. 

COMPROMISO

0-4

Almacena datos de acciones de CRM, incluidas notas, tareas, correos electrónicos, reuniones y llamadas.

ENTRADA

0-5

Representar las solicitudes de ayuda o apoyo de los clientes.

CITA

0-14

Se utiliza para compartir la información sobre los precios con los posibles compradores.

FORMULARIO_SOMETIMIENTO

0-15

Detalles para los envíos individuales de un formulario de HubSpot.

LINE_ITEM

0-8

Representan un subconjunto de productos vendidos en una operación. Cuando un producto está adjunto a un negocio, se convierte en elemento de línea.

CONVERSACIONES

0-11

Detalles de los mensajes entrantes de múltiples canales.

PÁGINA DE ATERRIZAJE

Entre 0 y 25

Detalles de sus páginas de destino

 TAREA

0-27

Almacena información sobre las listas de tareas pendientes

FORMULARIO

0-28

Se utiliza para recopilar información sobre sus visitantes y contactos

MARKETING_EMAIL

0-29

Detalles sobre los correos electrónicos del Marketing Hub

AD_ACCOUNT

0-30

Almacena información sobre sus cuentas de publicidad en Linkedin, Facebook y Google

AD_CAMPAÑA

0-31

Detalles sobre sus campañas publicitarias. Una campaña publicitaria puede contener uno o varios anuncios

AD_GROUP

0-32

Agrupación lógica de anuncios dentro de una campaña publicitaria

ANUNCIO

0-33

Detalles sobre los anuncios individuales

CAMPAÑA

0-35

Información sobre los activos y contenidos de marketing relacionados, para que pueda medir fácilmente la eficacia de sus esfuerzos colectivos de marketing.

PÁGINA DEL SITIO

0-38

Datos sobre las páginas individuales de sus sitios web

BLOG_POST

0-39

Datos sobre las entradas del blog

OBJETO LISTA

0-45

Información sobre agrupaciones de registros de objetos en función de sus propiedades o actividades

LLAMAR A

0-48

Llamadas realizadas por otros registros del CRM, por ejemplo, contactos

FACTURA

0-53

Gestionar y sincronizar las facturas con los sistemas contables externos

MEDIA_BRIDGE

0-57

Información sobre los activos de medios importados en Hubspot

SECUENCIA

0-58

Una secuencia es una serie de plantillas de correo electrónico dirigidas y programadas para nutrir a los contactos a lo largo del tiempo

DEAL_SPLIT

0-72

Los repartos de tratos se utilizan para compartir el crédito de los tratos entre varios usuarios

DOCUMENTO_DE_VENTA

0-83

Los documentos de ventas construyen una biblioteca de contenidos para que todo su equipo cargue y comparta documentos con sus contactos.

ENVÍO_DE_COMENTARIOS

0-19

Almacena la información enviada a una encuesta de opinión.

SUSCRIPCIÓN

0-69

Las suscripciones contienen detalles de los pagos recurrentes

COMERCIO PAGO

0-101

Contiene datos sobre los fondos recaudados de los clientes



Cada objeto de la base de datos devolverá las siguientes columnas:

Nombre de la columna

Tipo

Descripción

OBJECTTYPEID

Varchar

El ID del tipo de objeto (por ejemplo, contactos es 0-1).

OBJECTID

Number

El ID del registro (por ejemplo, un registro de contacto con un ID de 123752).

UPDATEDAT

Timestamp

La fecha y hora en que este objeto fue actualizado por última vez en HubSpot. 

INGESTEDAT

Timestamp

La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake. 

PROPERTY_*

Varchar

Columnas individuales que contienen la última versión de las propiedades del objeto.Para cada propiedad del objeto que tenga un tipo de fecha o número (como se especifica en property_definitions), habrá dos columnas: 

  1. Una columna que contiene el valor de la propiedad como cadena. El nombre de la columna será property_unparsed_[name] . Por ejemplo, la propiedad del objeto DEAL, deal_amount tendrá la columna property_unparsed_deal_amount
  2. Una columna que contiene el valor convertido al tipo nativo. La columna tendrá el nombre propiedad_[nombre].Por ejemplo, la propiedad del objeto DEAL, deal_amount tendrá la columna propiedad_deal_amount. Tenga en cuenta que esta columna contendrá null si la conversión a tipo nativo falla debido a datos no válidos.

Ejemplo 1


Recuperar el nombre, el apellido y la etapa del ciclo de vida de todos los contactos.

Consulta:


SELECT objectId, property_firstname AS firstname, property_lastname AS lastname,property_lifecyclestage AS lifecyclestage

FROM objects_contact

Devuelve:

OBJECTID

FIRSTNAME

LASTNAME

LIFECYCLESTAGE

54325098

Hobbes

Barón

lead

96805401

Milo

Gold

lead

6922028

Henry

Riley

lead

Ejemplo 2

 

Recuperar el nombre de la operación y la etapa de hasta tres operaciones.

Consulta:


SELECT objectId, property_dealName, property_dealStage,
property_amount AS dealAmount

FROM objects_deals

LIMIT 3

Devuelve:

OBJECTID

NOMBRE_DE_LA_PROPIEDAD

PROPIEDAD_DEALSTAGE

IMPORTE DE LA PROPIEDAD

38960439

Nombre de la operación 1

closedwon

34199

321740651

Prueba de acuerdo 123

14845019

8383663

98392101

Marquesina desplegable

closedwon

9309007

 

Ejemplo 3

 

Obtenga el nombre de la operación y la fase de las tres primeras operaciones por importe.

Consulta:

Dado que los datos de la cantidad del acuerdo están disponibles como un tipo de datos numérico, pueden ser utilizados para ordenar sin necesidad de hacer una conversión o casting.


SELECT objectId, property_dealName, property_dealStage,
property_amount AS dealAmount

FROM objects_deals
ORDER BY property_amount DESC
LIMIT 3


Devuelve:

OBJECTID

NOMBRE_DE_LA_PROPIEDAD

PROPIEDAD_DEALSTAGE

IMPORTE DE LA PROPIEDAD

98392101

Marquesina desplegable

closedwon

9309007

321740651

Prueba de acuerdo 123

14845019

8383663

38960439

Nombre de la operación 1

closedwon

34199

object_with_object_properties

Este objeto de la base de datos contiene datos de sus registros de HubSpot. Las consultas a este objeto de la base de datos devuelven una fila por cada registro dentro de un tipo de objeto (por ejemplo, todos los registros de contactos en el tipo de objeto contactos). Todas las propiedades se almacenan en la columna Propiedades, que es una columna Snowflake Variant / JSON

Esta vista puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
OBJECTTYPEID Varchar El ID del tipo de objeto (por ejemplo, contactos es 0-1).
OBJECTID Number El ID del registro (por ejemplo, un registro de contacto con un ID de 123752).
PROPERTIES Variant Los valores de la propiedad del registro.
UPDATEDAT Timestamp La fecha y hora en que el registro fue actualizado por última vez en HubSpot. Más información sobre tipos de datos de columnas.
INGESTEDAT Timestamp La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake. 

Tenga en cuenta: El 25 de enero de 2022, la columna, timestamp en la tabla y vista object_with_object_properties, que representa la fecha y hora en que el registro del objeto se actualizó por última vez en HubSpot, se actualizará en. Esto es para alinearse con la forma en que los datos de fecha y hora se representan en el resto de la cuota de datos.

Como se trata de un cambio de última hora, la nueva columna, updatedat se ha añadido a la tabla y la vista. Durante los próximos 90 días, estas dos nuevas columnas coexistirán con timestamp, las columnas a las que pretenden sustituir. Esto le da la oportunidad de cambiar al uso de las nuevas columnas.

Después de 90 días, el 25 de enero de 2022, la columna timestamp será eliminada de la tabla y de la vista. Después de esta fecha, cualquier intento de consultar la tabla o vista object_with_object_properties utilizando columnas de fecha y hora fallará.

Ejemplo 1

Recuperar todos los contactos y sus propiedades.

Consulta:


SELECT objectTypeId, objectId, properties
FROM object_with_object_properties
WHERE objectTypeId = '0-1'


Devuelve:

OBJECTTYPEID OBJECTID PROPERTIES
0-1 38960439 {"createdate": "1504656970152"...}
0-1 321740651 { "fecha de creación": "1590183081949"...} 
0-1 98392101 { "fecha de creación": "1533566477279"...}
... ... ...

Ejemplo 2

Recupera el nombre del negocio y la fase de hasta tres negocios.

Consulta:


SELECT

objectId,
properties:dealname::string AS dealname,
properties:dealstage::string AS dealstage,
properties:amount::number AS dealamount
FROM object_with_object_properties
WHERE objectTypeId = '0-3'
LIMIT 3;


Devuelve:

OBJECTID DEALNAME DEALSTAGE DEALAMOUNT
38960439 Nombre del negocio 1 closedlost 7488939
321740651 Nombre del negocio 1 closedwon 9292029
98392101 Nombre del negocio 1 closedlost 62626528

objetos

Este objeto de base de datos es un subconjunto de los datos del objeto de base de datos object_with_object_properties. Cada fila devuelve el ID del objeto para cada registro. Este objeto de la base de datos sólo devuelve los registros existentes. Cuando se elimina un registro en HubSpot, se eliminará de este objeto de la base de datos. Este objeto de la base de datos es un subconjunto de los datos de la tabla object_with_object_properties. Cada fila devuelve el ID del objeto para cada registro. Esta vista sólo devuelve registros existentes. Cuando se elimina un registro en HubSpot, se eliminará de esta vista. 

Este objeto de base de datos puede ser útil si su cuenta tiene una gran cantidad de datos, lo que hace que las vistas object_with_object_properties y objects_x tengan un rendimiento lento. El uso de este objeto de base de datos con el objeto de base de datos object_properties permite replicar los datos de object_with_object_properties, manteniendo el control sobre qué propiedades se devuelven.

Este objeto de base de datos puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
OBJECTTYPEID Varchar El ID del tipo de objeto (por ejemplo, contactos es 0-1).
OBJECTID Number El ID del registro (por ejemplo, un registro de contacto con un ID de 123752).
INGESTEDAT Timestamp La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake. Más información sobre tipos de datos de columnas.

Ejemplo 1

Recuperar todos los registros de contactos.

Consulta:


SELECT objectTypeId, objectId
FROM objects
WHERE objectTypeId = '0-1'


Devuelve:

OBJECTTYPEID OBJECTID
0-1 36721864
0-1 103580363
0-1 56047670
... ...

object_properties

Este objeto de base de datos es un subconjunto del objeto de base de datos object_with_object_properties. Cada fila contiene el valor actual de la propiedad establecida en un registro determinado. Por ejemplo, un contacto tendrá una fila para su propiedad Nombre y otra para su propiedad Apellido. Si un registro no tiene un valor para una propiedad, la fila aparecerá con una cadena vacía o no aparecerá.

Este objeto de base de datos puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
OBJECTTYPEID Varchar El ID del tipo de objeto (por ejemplo, contactos es 0-1).
OBJECTID Number El ID del registro (por ejemplo, un registro de contacto con un ID de 123752).
NAME Varchar El nombre de la propiedad.
VALUE Timestamp El valor de la propiedad.
UPDATEDAT Timestamp La fecha y hora en que el registro fue actualizado por última vez en HubSpot. Más información sobre tipos de datos de columnas.
INGESTEDAT Timestamp La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake. 

Ejemplo 1

Recupera las propiedades de nombre, apellido y ciudad de todos los contactos.

Consulta:


SELECT objectTypeId, objectId, name, value
FROM object_properties
WHERE objectTypeId = '0-1'
AND name IN ('firstname', 'lastname', 'city')
ORDER BY objectId;


Devuelve:

OBJECTTYPEID OBJECTID NAME VALUE
0-1 10401 firstname Brian
0-1 10401 city Dublín
0-1 10401 lastname Gallagher
0-1 23451 firstname Fernando
0-1 23451 lastname Fierro
0-1 25751 firstname Charles
... ... ... ...

Ejemplo 2

Recupera el nombre, el apellido y la etapa del ciclo de vida de todos los contactos y combínalos en una fila por contacto. Este ejemplo utiliza la sintaxis SQL PIVOT.

Consulta:


SELECT objectId, firstname, lastname, lifecyclestage
FROM
(
SELECT objectId, name, value
FROM object_properties
WHERE objectTypeId = '0-1'
AND name IN ('firstname', 'lastname', 'lifecyclestage')
)
PIVOT(MAX(value) FOR name IN ('firstname', 'lastname', 'lifecyclestage')) AS p(objectId, firstname, lastname, lifecyclestage);

 

Devuelve:

OBJECTTYPEID OBJECTID FIRSTNAME LASTNAME LIFECYCLESTAGE
0-1 54325098 Hobbes Barón lead
0-1 96805401 Milo Gold lead
0-1 6922028 Henry Riley lead
... ... ... ... ...

object_properties_history

Este objeto de la base de datos contiene los valores históricos de las propiedades. Para los contactos, contiene los 45 valores más recientes. Para todos los demás objetos, contiene los 20 valores más recientes. Muestra una fila para cada valor histórico de la propiedad. El valor actual de una propiedad está determinado por la marca de tiempo UPDATEDAT más reciente en el historial de la propiedad.

Este objeto de base de datos puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
OBJECTTYPEID Varchar El ID del tipo de objeto (por ejemplo, contactos es 0-1).
OBJECTID Number El ID del registro (por ejemplo, un registro de contacto con un ID de 123752).
NAME Varchar El nombre de la propiedad.
VALUE Timestamp El valor de la propiedad.
UPDATEDAT Timestamp La fecha y hora en que los datos fueron actualizados por última vez en HubSpot. Más información sobre tipos de datos de columnas.
INGESTEDAT Timestamp La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake. 

Ejemplo 1

Recuperar el historial de una sola propiedad para un solo contacto.

Consulta:


SELECT objectId, name, value, updatedAt
FROM object_properties_history
WHERE objectTypeId = '0-1'
AND objectId = 136493192
AND name = 'hs_predictivescoringtier'
ORDER BY UPDATEDAT DESC;

 
Devuelve:

OBJECTID NAME VALUE UPDATEDAT

136493192

hs_predictivescoringtier

nivel_1

2022-06-22 22:45:05.931

136493192

hs_predictivescoringtier

nivel_2

2021-09-18 08:20:56.622

136493192

hs_predictivescoringtier

nivel_3

2019-11-31 18:20:22.851

...

...

...

...

Ejemplo 2

Recupera el nombre actual de todos los contactos que han tenido alguna vez una etapa del ciclo de vida de Suscriptor.

Consulta:


SELECT
objectId,
properties:firstname::string AS firstname,
properties:lastname::string AS lastname
FROM object_with_object_properties
WHERE object_with_object_properties.objectTypeId = '0-1'
AND objectId IN (
SELECT objectId
FROM object_properties_history
WHEREobject_properties_history.objectTypeId = '0-1'
AND object_properties_history.name = 'lifecyclestage'
AND object_properties_history.value = 'subscriber'
);


Devuelve:

OBJECTID FIRSTNAME LASTNAME
54325098 Hobbes Barón
96805401 Milo Gold
6922028 Henry Riley
... ... ...

Consultas sobre asociación

Al igual que los datos de los objetos, los datos de las asociaciones se organizan de dos maneras:

  • Individual: Cada tipo de asociación se almacena en su propia vista y contiene sólo registros de ese tipo. Por ejemplo, associations_contacts_to_deals contiene sólo registros de asociación entre objetos de contacto y de negocio. Esto elimina la necesidad de especificar un tipo de asociación durante la consulta. Estas vistas son bastante fáciles de consultar ya que no requieren estar familiarizado con el modelo de datos de CRM para poder utilizarlas. También devuelven una descripción enriquecida del registro de asociación entre dos objetos que puede utilizarse fácilmente en las uniones con las vistas objects_x. Mientras no se produzcan consultas lentas, es aconsejable utilizar estas vistas para recuperar los datos de la asociación. Vea más en las vistas de associations_x_to_y más abajo. 
  • Combinado: Todos los registros de todos los tipos de asociación se combinan en un objeto de la base de datos. Por lo tanto, al realizar la consulta, es necesario especificar un filtro como "WHERE combinedassociationtypeid='0-32' ". Ver más en asociaciones y asociación_definiciones más abajo.

vistas de asociaciones_x_a_y

Cada tipo de asociación tiene su propia vista, etiquetada como associations_<association type name>, por ejemplo, associations_contacts_to_deals. Cada vista es un subconjunto de los datos del objeto de la base de datos de asociaciones y sólo contiene registros de un determinado combinedassociationtypeid.

Cada objeto de la base de datos devolverá las siguientes columnas:

Nombre de la columna

Tipo

Descripción

COMBINEDASSOCIATIONTYPEID

Varchar

El identificador único de la definición de la asociación.

ASOCIACIÓNCATEGORÍA

Varchar

La fuente del tipo de asociación. Uno de: HUBSPOT_DEFINED, USER_DEFINED, INTEGRATOR_DEFINED

ASSOCIATIONTYPEID

Varchar

Un identificador único de una definición de asociación dentro de una categoría de asociación específica, es decir, no habrá dos definiciones en una categoría de asociación que tengan el mismo associationtypeid. 

FROMOBJECTTYPEID

Varchar

El objecttypeid que es la fuente de la definición de la asociación.

FROMOBJECTTYPE

Varchar

El nombre del tipo de objeto que es la fuente de la definición de la asociación.

TOOBJECTTYPEID

Varchar

El objecttypeid que es el destino de la definición de la asociación.

TOOBJECTTYPE

Varchar

El nombre del tipo de objeto que es el destino de la definición de asociación.

NAME

Varchar

El nombre de la definición de la asociación.

LABEL

Varchar

Descripción de la definición de la asociación.

ISMAINASSOCIATIONDEFINITION

Boolean

Si la definición de la asociación es el tipo principal. Cuando es verdadero, la definición es la que HubSpot muestra en los registros asociados

[FROMOBJECTTYPE_OBJECTID] por ejemplo, para la vista ASSOCIATIONS_CONTACTS_TO_DEALS, será CONTACT_OBJECTID

Number

El ID del objeto fuente.

[TOOBJECTTYPE_OBJECTID] por ejemplo, para la vista ASSOCIATIONS_CONTACTS_TO_DEALS, será DEAL_OBJECTID

Number

El ID del objeto de destino.

INGESTEDAT

Timestamp

La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake.

Ejemplo 1

 

Recuperar todos los negocios asociados a un contacto concreto.

Consulta:


SELECT
contact_objectId, deal_objectId

FROM associations_contacts_to_deals

WHERE contactId = 6626541373

 

Devuelve:

OBJETO_CONTACTO

DEAL_OBJECTID

6626541373

233620335

6626541373

90253678

Ejemplo 2

 

Recuperar todos los contactos basados en la zona horaria de Bogotá y sus ofertas.


SELECT contactos.propiedad_nombre nombre contacto_nombre,

contacts.property_lastname contact_lastname,
contacts.property_email contact_email,
deals.property_dealtype deal_type, deals.property_amount deal_amount
FROM objects_contacts contacts
JOIN associations_contacts_to_deals assoc on
assoc.contact_objectid=contacts.objectid
JOIN objects_deals deals on deals.objectid=assoc.deal_objectid
where contacts.property_hs_timezone='america_slash_bogota'

 

CONTACT_FIRSTNAME

CONTACT_LASTNAME

CORREO ELECTRÓNICO DE CONTACTO

TIPO DE OFERTA

DEAL_AMOUNT

David

Magalhães

dmagalhaes@example.com

nuevo negocio

74848

Fernanda

Rodrigues

fmoreira@example.com

nuevo negocio

253530

Ejemplo 3

 

Recuperar todos los contactos y la suma total del importe de las operaciones cerradas para cada contacto.


SELECT SUM(deals.property_hs_closed_amount) AS
total_closed_amount, contacts.property_email contact_email
FROM objects_contacts contacts
JOIN associations_contacts_to_deals assoc on
assoc.contact_objectid=contacts.objectid
JOIN objects_deals deals on deals.objectid=assoc.deal_objectid
GROUP BY contact_email
ORDER BY total_closed_amount DESC

 

Devuelve:

IMPORTE_CERRADO_TOTAL

CORREO ELECTRÓNICO DE CONTACTO

98474793

johndoe@riverview.com

849488

sallymae@longford.com

association_definitions

Este objeto de la base de datos contiene información sobre todos los tipos de asociación disponibles entre los objetos de HubSpot, con una fila por tipo de asociación. Puede unir este objeto de base de datos con el objeto de base de datos de asociaciones para obtener información de asociación específica de los registros.

Puede haber varios tipos de asociaciones entre los mismos objetos. El tipo de asociación principal, que es el que se muestra en HubSpot cuando se asocian los registros, utiliza la asociación donde ISMAINASSOCIATIONDEFINITION es true.

Este objeto de base de datos puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
COMBINEDASSOCIATIONTYPEID Varchar El identificador único de la definición de la asociación.
CATEGORY Varchar La fuente del tipo de asociación. Una de: HUBSPOT_DEFINED, USER_DEFINED, INTEGRATOR_DEFINED
ID Number El identificador de la definición de la asociación dentro de su categoría.
FROMOBJECTTYPEID Varchar El ID del objeto que es la fuente de la definición de la asociación.
TOOBJECTTYPEID Varchar El ID del objeto que es el destino de la definición de la asociación.
NAME Varchar El nombre de la definición de la asociación.
LABEL Varchar La etiqueta de la definición de la asociación.
ISMAINASSOCIATIONDEFINITION Boolean Si la definición de la asociación es el tipo principal. Cuando es verdadero, la definición es la que HubSpot muestra en los registros asociados.
INGESTEDAT Timestamp La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake. Más información sobre tipos de datos de columnas.

Ejemplo 1 

Recuperar los tipos de asociaciones disponibles en tu cuenta.

Consulta:


SELECT combinedAssociationTypeId, fromObjectTypeId, toObjectTypeId, name
FROM association_definitions
ORDER BY category, id

 
Devuelve:

COMBINEDASSOCIATIONTYPE FROMOBJECTTYPEID TOOBJECTTYPEID NAME
0-1 0-1 0-2 CONTACT_TO_COMPANY
0-2 0-2 0-1 COMPANY_TO_CONTACT
0-3 0-3 0-1 DEAL_TO_CONTACT
0-4 0-1 0-3 CONTACT_TO_DEAL
0-5 0-3 0-2 DEAL_TO_COMPANY
... ... ... ...

Ejemplo 2

Recuperar los tipos de asociación disponibles entre negocios y empresas.

Consulta:


SELECTcombinedAssociationTypeId, fromObjectTypeId, toObjectTypeId, name
FROM association_definitions
WHERE fromObjectTypeId = '0-3' AND toObjectTypeId = '0-2'
AND isMainAssociationDefinition = true

ORDER BY category, id


Devuelve:

COMBINEDASSOCIATIONTYPE FROMOBJECTTYPEID TOOBJECTTYPEID NAME
0-5 0-3 0-2 DEAL_TO_COMPANY
0-271 0-3 0-2 DEAL_TO_PRIMARY_COMPANY
0-341 0-3 0-2 DEAL_TO_COMAPNY_UNLABELED

asociaciones

Este objeto de la base de datos contiene información sobre las asociaciones entre registros específicos. Cada fila representa una asociación de un objeto a otro. Las filas pueden estar presentes en este objeto de base de datos aunque los registros referenciados hayan sido eliminados. Puedes comprobar si existen registros uniéndose a la tabla de objetos.

Este objeto de base de datos puede ser útil si su cuenta tiene una gran cantidad de datos, lo que hace que las vistas associations_x_to_y tengan un rendimiento lento.

Este objeto de base de datos puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
COMBINEDASSOCIATIONTYPEID Varchar El identificador único de la definición de la asociación.
FROMOBJECTID Number El ID del objeto fuente.
TOOBJECTID Number El ID del objeto de destino.
INGESTEDAT Timestamp La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake. Más información sobre tipos de datos de columnas.

Ejemplo 1

Recuperar todos los negocios y contactos asociados.

Consulta:


SELECT combinedAssociationTypeId, fromObjectId, toObjectId
FROM associations
WHERE combinedAssociationTypeId = '0-5'

 
Devuelve: 

COMBINEDASSOCIATIONTYPEID FROMOBJECTID TOOBJECTID
0-5 6626541373 233620335
0-5 6616436082 3866015468
0-5 6690805943 7132752747
... ... ...

Ejemplo 2 

Recuperar todos los tickets asociados a un contacto específico (ID de contacto: 3005).

Consulta:


SELECT combinedAssociationTypeId, fromObjectId, toObjectId
FROM associations
WHERE associationCategory = 'HUBSPOT_DEFINED'
AND combinedAssociationTypeId = '0-15'
AND fromObjectId = 3005;


Devuelve:

COMBINEDASSOCIATIONTYPE FROMOBJECTID TOOBJECTID
0-5 6626541373 233620335

Ejemplo 3 

Recuperar todos los negocios asociados a un contacto específico (ID de contacto: 4464). En lugar de codificar combinedAssociationTypeId, este ejemplo se une con association_definitions.

Consulta:


SELECT combinedAssociationTypeId, fromObjectId toObjectId,
FROM associations
WHERE
combinedAssociationTypeId = (
SELECT combinedAssociationTypeId
FROM association_definitions
WHERE fromObjectTypeId = '0-1'
AND toObjectTypeId = '0-3'
AND isMainAssociationDefinition)
AND fromObjectId = 4464;


Devuelve:

COMBINEDASSOCIATIONTYPEID FROMOBJECTID TOOBJECTID
0-5 6626541373 233620335

Consultas del propietario

propietarios

Este objeto de la base de datos contiene información sobre los usuarios de tu cuenta de HubSpot. Los usuarios pueden establecerse como propietarios de registros, y contendrán tanto un ID de usuario como un ID de propietario, dependiendo de su contexto. Ambas identificaciones pueden ser utilizadas para identificar al mismo usuario. 

Este objeto de base de datos puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
OWNERID Number El ID del propietario del usuario.
USERID Number La identificación del usuario. Los usuarios con NULL en esta columna han sido eliminados.
EMAIL Varchar La dirección de correo electrónico del usuario.
FIRSTNAME Varchar El nombre del usuario.
LASTNAME Varchar El apellido del usuario.
ARCHIVED Boolean Si el usuario ha sido eliminado.
CREATEDAT Timestamp La fecha y hora en que el usuario fue creado en HubSpot. Consulta los tipos de datos de columnas para obtener más información.
UPDATEDAT Timestamp La fecha y hora en que el usuario fue actualizado por última vez en HubSpot. Consulta los tipos de datos de columnas para obtener más información.
INGESTEDAT Timestamp La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake.

Ejemplo 1 

Recuperar todos los usuarios. El filtro WHERE archived = false elimina los usuarios eliminados de los datos devueltos.

Consulta:


SELECT ownerId, userId, email, firstname, lastname
FROM owners
WHERE archived = false

 
Devuelve: 

OWNERID USERID EMAIL FIRSTNAME LASTNAME
29584574 4621126 233620335 Hobbes Barón
30532717 4874784 3866015468 Pablo Walters
30580321 925511 7132752747 Milo Gold
... ... ... ... ...

Ejemplo 2

Recuperar un propietario específico por su ID de propietario.

Consulta:


SELECT ownerId, userId, email, firstname, lastname
FROM owners
WHERE ownerId = 29584574;


Devuelve: 

OWNERID USERID EMAIL FIRSTNAME LASTNAME
29584574 4621126 233620335 Hobbes Barón

Ejemplo 3

Recuperar todos los contactos y sus propietarios. Esta consulta une los registros a los propietarios con object_with_object_properties y la propiedad de contacto hubspot_owner_id.


SELECT
contact.objectId contactid,
contact.property_firstname contact_firstname,
contact.property_lastname contact_lastname,
contact.property_hubspot_owner_id contact_hubspot_owner_id,
owner.firstname owner_firstname,
owner.lastname owner_lastname,
owner.email owner_email
FROM objects_contacts contact

JOIN owners owner ON contact.property_hubspot_owner_id = owner.ownerId


Devuelve: 

CONTACTID CONTACT_FIRSTNAME CONTACT_LASTNAME CONTACT_HUBSPOT_OWNER_ID OWNER_FIRSTNAME OWNER_LASTNAME OWNER_EMAIL
113834202 Richard Greenfield 29584574 Hobbes Barón hobbes.b@business.com
53540801 Ford Karl 30241125 Milo Gold milo.g@business.com
... ... ... ... ... ... ...

Consultas del equipo

equipos

Los equipos en HubSpot te permiten organizar a tus usuarios en grupos para fines de organización y creación de informes. Puedes tener un equipo principal y equipos adicionales.

Este objeto de la base de datos contiene información sobre los equipos de tu cuenta de HubSpot. 

Este objeto de base de datos puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
TEAMID Number El ID del equipo.
TEAMNAME Varchar El nombre del equipo.
PARENTTEAMIDA Number El ID del equipo principal.
CHILDTEAMIDS Matriz Los ID de los equipos secundarios.
PRIMARYOWNERMEMBERS Varchar Los ID de propietario de los miembros principales del equipo.
SECONDARYOWNERMEMBERS Boolean Los ID de propietario de los miembros secundarios del equipo.
INGESTEDAT Timestamp La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake. 

Ejemplo 1

Recupera todos los equipos.

Consulta:

SELECT teamId,teamName, primaryOwnerMembers

FROM teams

Devuelve:

TEAMID TEAMNAME PRIMARYOWNERMEMBERS
29584574 Subequipo [233620335, 1234553]
30532717 Súper equipo [3866015468, 126221873]
3058032 Un equipo [7132752747]

owner_team

Este objeto de la base de datos contiene información sobre qué propietarios corresponden a qué equipos en tu cuenta de HubSpot. 

Este objeto de base de datos puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
TEAMID Number El ID del equipo.
OWNERID Number El ID del propietario del usuario. 
ISTEAMPRIMARY Boolean Si este equipo es el principal para este propietario.
INGESTEDAT Timestamp La fecha y hora en que los datos fueron ingestados por última vez por Snowflake. 

Ejemplo 1

Recupera todos los propietarios de un equipo determinado.

Consulta:

SELECT teamId, ownerId, isTeamPrimary
FROM teams
WHERE teamId = 29584574

Devuelve

TEAMID TEAMNAME ISTEAMPRIMARY
29584574 233620335 TRUE
29584574 1234553 TRUE 

Consultas sobre pipelines

A continuación, aprende a consultar los datos de pipelines de negocios y tickets, como las pipelines disponibles en tu cuenta y sus etapas.

Puedes unir estos datos con los datos de los objetos para obtener una visión completa de tus pipelines. Por ejemplo, puede consultar las operaciones y sus canalizaciones uniendo los datos de objects_deals_view o de object_with_object_properties con los datos de las canalizaciones.

pipelines

Este objeto de la base de datos contiene información sobre los pipelines de tratos y tickets de su cuenta. Cada fila devuelta representa un solo pipeline.

Esta tabla puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
PIPELINEID Varchar El ID del pipelines.
OBJECTTYPEID Varchar El ID del objeto que puede contener el pipeline (por ejemplo, negocios o tickets).
LABEL Varchar El nombre del pipeline en HubSpot.
DISPLAYORDER Number El orden en el que se muestra el pipeline en HubSpot.
ARCHIVED Boolean Si se eliminó el pipeline
CREATEDAT Timestamp Cuando se creó el pipeline.
UPDATEDAT Timestamp La fecha y hora en que los datos fueron actualizados por última vez en HubSpot. Más información sobre tipos de datos de columnas.
INGESTEDAT Timestamp La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake. 

Ejemplo 1

Recuperar todos los pipelines de negocios disponibles, ordenados por su orden en HubSpot.

Consulta:


SELECT objectTypeId, pipelineId, label
FROM pipelines
WHERE objectTypeId = '0-3'
AND not archived
ORDER BY displayorder;

 
Devuelve: 

OBJECTTYPEID PIPELINEID LABEL
0-3 1bed503c-37f7-4f51-9d40-7598902673f4 Pipeline de ventas
0-3 12659678 Pipeline de licencias
0-3 75e28846-ad0d-4be2-a027-5e1da6590b98 Nueva empresa
... ... ...

Ejemplo 2

Recuperar los negocios dentro de un pipeline específico. Une object_with_object_properties y pipelines.

Consulta:


SELECT

deals.objectId deal_id,
deals.property_dealname deal_name,
pipelines.label pipeline_name
FROM objects_deals deals
INNER JOIN pipelines
ON deals.objectTypeId = pipelines.objectTypeId
AND deals.property_pipeline = pipelines.pipelineid
WHERE pipelines.objectTypeId = '0-3';


Devuelve: 

DEAL_ID DEAL_NAME PIPELINE_NAME
605140072 Registro global de Meowmix Pipeline de ventas
605457408 Friskies Rebrand Pipeline de ventas
604362473 Creación de la aplicación Fresh Step Pipeline de ventas

 

Ejemplo 3

 

Igual que en el ejemplo 2, recuperar las operaciones dentro de una línea de producción específica. Pero, en lugar de utilizar objetos_acuerdos en las uniones, utiliza objeto_con_propiedades_del_objeto.


SELECT
deals.objectId deal_id,
deals.properties:dealname::varchar deal_name,
pipelines.label pipeline_name
FROM object_with_object_properties deals
INNER JOIN pipelines
ON deals.objectTypeId = pipelines.objectTypeId
AND deals.properties:pipeline::string = pipelines.pipelineid
WHERE deals.objecttypeId = '0-3'
AND pipelines.objectTypeId = '0-3';

 

Devuelve: 

DEAL_ID

DEAL_NAME

PIPELINE_NAME

605140072

Registro global de Meowmix

Pipeline de ventas

605457408

Friskies Rebrand

Pipeline de ventas

604362473

Creación de la aplicación Fresh Step

Pipeline de ventas

pipeline_stages

Esta vista contiene información sobre las etapas individuales de un pipeline. Identifica las etapas combinando el ID del tipo de objeto, el ID de pipeline y el ID de la etapa. Al unirse con pipelines, utiliza el ID del tipo de objeto y el ID de pipeline.

Este objeto de base de datos puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
PIPELINEID Varchar El ID del pipelines.
STAGEID Varchar La identificación del escenario.
LABEL Varchar El nombre de la etapa en HubSpot.
DISPLAYORDER Number El orden en el que se muestra el pipeline en HubSpot.
METADATA Variant Una descripción con formato JSON de la etapa, incluyendo si está abierta o cerrada
ARCHIVED Boolean Si se ha eliminado la etapa de la tubería.
CREATEDAT Timestamp Cuando se creó la etapa de la tubería.

Ejemplo 1 

Recuperar las etapas de un pipeline denominado Pipeline de ventas.

Consulta:


SELECT pipelineid, stageId, label
FROM pipeline_stages
WHERE not archived
AND pipelineid = (
SELECT pipelineid
FROM pipelines
WHERE objectTypeId = '0-3'
AND not archived
AND label = 'Sales Pipeline' LIMIT 1)
ORDER BY displayorder;

 
Devuelve: 

PIPELINEID STAGEID LABEL
941650 941651 Contactado
941650 941652 Cita programada
941650 941653 Factura enviada
... ... ...

Ejemplo 2

Recuperar todos los negocios y sus respectivas etapas de pipeline.

Consulta:


SELECT

deals.objectId deal_id,
deals.properties:dealname::varchar deal_name,
pipelines.label pipeline_name,
pipeline_stages.label pipeline_stage_name
FROM object_with_object_properties deals
INNER JOIN pipelines
ON deals.objectTypeId = pipelines.objectTypeId
AND deals.properties:pipeline::string = pipelines.pipelineid
INNER JOIN pipeline_stages
ON deals.objectTypeId = pipeline_stages.pipelineid
AND deals.properties:pipeline::string = pipeline_stages.pipelineid
AND deals.properties:dealstage::string = pipeline_stages.stageId
WHERE deals.objecttypeId = '0-3';


Devuelve: 

DEAL_ID DEAL_NAME PIPELINE_NAME PIPELINE_STAGE_NAME
605140072 Registro global de Meowmix Pipeline de ventas Contrato enviado
605457408 Friskies Rebrand Pipeline de ventas Cita programada
604362473 Creación de la aplicación Fresh Step Pipeline de ventas Contrato firmado
... ... ... ...

Consultas sobre la propiedad

property_definitions

Este objeto de la base de datos contiene información sobre las propiedades de los objetos y las propiedades de los eventos de tu cuenta de HubSpot. Las propiedades de los eventos incluyen eventos estándar, como aperturas y clics de correos electrónicos, y propiedades de eventos de comportamiento personalizados. Esta información puede ser útil para definir los valores que se encuentran en los datos de object_properties y events.

Puedes identificar propiedades específicas combinando tu ID de tipo de objeto y tu nombre. Puedes recuperar información similar utilizando la API de propiedades.

Este objeto de base de datos puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
OBJECTYPEID Varchar El ID del objeto al que se refiere el evento.
NAME Varchar El nombre interno de la propiedad
LABEL Varchar La etiqueta de la propiedad.
DESCRIPTION Varchar La descripción de la propiedad.
TYPE Varchar El tipo de la propiedad (por ejemplo, cadena, número, fecha).
FIELDTYPE Varchar El tipo de campo de la propiedad. Define cómo se muestra la propiedad en HubSpot y en los formularios (por ejemplo, casilla de comprobación, selección).
DISPLAYORDER Number El orden de presentación de la propiedad.
GROUPNAME Varchar El nombre del grupo de la propiedad.
OPTIONS Variant Para las propiedades de enumeración, una matriz de las opciones de la propiedad, incluyendo los atributos de cada opción (por ejemplo, orden de presentación, etiqueta).
CREATEDUSERID Number El ID del usuario que creó la propiedad.
REFERENCEDOBJECTTYPE Varchar El tipo de objeto al que hace referencia la propiedad. Las propiedades del propietario devolverán un valor de PROPIETARIO.
CALCULATED Boolean Si la propiedad es una propiedad calculada .
EXTERNALOPTIONS Boolean Si las opciones de la propiedad están definidas en un sistema externo.
HASUNIQUEVALUE Boolean Si los valores de la propiedad son únicos. Sólo se puede establecer cuando se crea una propiedad a través de la API.
HIDDEN Boolean Si la propiedad está oculta en HubSpot.
SHOWCURRENCYSYMBOL Boolean Si el valor de una propiedad numérica se formatea como moneda.
FORMFIELD Boolean Si esta propiedad se puede utilizar en los formularios.
READONLYDEFINITION Boolean Si la propiedad se puede editar en HubSpot.
READONLYVALUE Boolean Si el valor de la propiedad se puede editar en HubSpot.
HUBSPOTDEFINED Boolean Si la propiedad fue creada por HubSpot, frente a la creada por un usuario.
ARCHIVED Boolean Si la propiedad ha sido eliminada.
CREATEDAT Timestamp La fecha y hora en que la propiedad fue creada en HubSpot.
UPDATEDAT Timestamp La fecha y hora en que los datos fueron actualizados por última vez en HubSpot. Más información sobre tipos de datos de columnas.
INGESTEDAT Timestamp La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake. 

Ejemplo 1

Recuperar los nombres y descripciones de todas las propiedades de contactos.

Consulta:


SELECT name, label, description
FROM property_definitions
WHERE objectTypeId = '0-1'

 
Devuelve:

NAME LABEL DESCRIPTION
entered_sql_stage Entró en la etapa SQL Iniciar recuento de días de la etapa SQL.
first_conversion_event_name
Primera conversión El primer formulario que este contacto envió
dirección Dirección La dirección del contacto.

Consultas sobre eventos

Los eventos incluyen eventos estándar de HubSpot y eventos de comportamiento personalizados. Cada acontecimiento tiene su propio objeto de base de datos, etiquetado como events_eventname.

Nombre  
EVENTS_AD_INTERACTION Detalles de un anuncio y de los contactos que han interactuado con él haciendo clic en el anuncio o enviando un formulario después de participar en él.
EVENTS_AD_METRICS_IMPORTED_V0

Detalles de un anuncio y sus métricas de rendimiento.
EVENTS_CALL_MENTIONED_KEYWORD Detalles de las palabras clave mencionadas por cualquier participante en las convocatorias.
EVENTS_CLICKED_LINK_IN_EMAIL_V2

Enlaces en los que los contactos hacen clic en los correos electrónicos de marketing.
EVENTS_CLICKED_LINK_IN_TRACKED_INBOX_EMAIL_V8 Enlaces pulsados en los correos electrónicos de la bandeja de entrada de las conversaciones por los contactos.
EVENTS_COOKIE_BANNER_CLICKED Contactos que han hecho clic en las cookies.
EVENTS_COOKIE_BANNER_VIEWED Contactos que vieron cookies.
EVENTS_DOCUMENT_SHARED_V2 Documentos de venta compartidos con los contactos a través de un enlace externo.
EVENTS_DOCUMENT_VIEWED_V2 Documentos de venta y contactos que han visto al abrir el enlace externo.
EVENTS_DOCUMENT_COMPLETED_V2 Documentos de venta y contactos que los han cerrado.
EVENTS_HS_SCHEDULED_EMAIL_V2 Correos electrónicos enviados a los servidores de correo electrónico de HubSpot para ser enviados.
EVENTS_MTA_DELIVERED_EMAIL_V2 Correos electrónicos entregados con éxito a los destinatarios por los servidores de correo electrónico de HubSpot.
EVENTS_MTA_BOUNCED_EMAIL_V2 Intentos de entrega de correo electrónico que fueron rechazados por el servidor de correo electrónico del destinatario.
EVENTS_OPENED_EMAIL_V2 Aperturas de correo electrónico por contactos.
EVENTS_REPORTED_SPAM_EMAIL_V2 Correos electrónicos marcados como spam por los destinatarios.
EVENTS_UPDATED_EMAIL_SUBSCRIPTION_STATUS_V2 Cambios en las suscripciones de correo electrónico por parte de los destinatarios.
EVENTS_OPENED_TRACKED_INBOX_EMAIL_V8 Conservación de la Bandeja de entrada del correo electrónico se abre por los contactos.
EVENTS_MB_MEDIA_PLAYED Actividad de reproducción de vídeo por contactos.
EVENTS_V2_CONTACT_BOOKED_MEETING_THROUGH_SEQUENCE El contacto reservó una reunión a través de la secuencia.
EVENTS_V2_CONTACT_ENROLLED_IN_SEQUENCE Contacto inscrito a partir de la secuencia.
EVENTS_V2_CONTACT_FINISHED_SEQUENCE Secuencia terminada.
EVENTS_V2_CONTACT_REPLIED_EMAIL El contacto ha respondido al correo electrónico (o al correo electrónico entrante que ha anulado la secuencia) enviado a través de la secuencia.
EVENTS_V2_CONTACT_UNENROLLED_FROM_SEQUENCE Contacto no inscrito en la secuencia.
EVENTS_V2_CONTACT_UNENROLLED_MANUALLY_FROM_SEQUENCE El usuario ha anulado manualmente el contacto.
EVENTS_V2_CONTACT_UNSUBSCRIBED_EMAIL El contacto se ha dado de baja, anulando la secuencia.
EVENTS_V2_SEQUENCE_EMAIL_BOUNCED El correo electrónico de la secuencia ha sido devuelto.
EVENTS_V2_SEQUENCE_ERRORED Secuencia errónea que provoca la desinscripción.
EVENTS_V2_SEQUENCE_STEP_EXECUTED Paso de secuencia ejecutado.
PÁGINA_DE_EVENTOS_VISITADOS Visitas a la página web por contactos.
EVENTOS_<INTEGRATION_EVENT_NAME>_<UNIQUE_IDENTIFIER> Eventos de integración (Timeline V3 API)

Puedes identificar los eventos combinando su ID de tipo de evento y su ID. Las columnas que se devuelven dependen del evento, con una columna para cada propiedad del evento. Todos los eventos devolverán las siguientes columnas:

Tenga en cuenta: HubSpot ha añadido dos nuevas columnas a todas las tablas y vistas de eventos:

  • occurredat
  • occurredatdateint

Estas columnas sustituirán a las columnas occuredat y occuredatdateint el 24 de noviembre de 2022. En esa fecha, las columnas antiguas dejarán de estar disponibles, y los intentos de consultar un objeto de la base de datos o una vista que contenga eventos utilizando esas columnas fallarán. Obtenga más información sobre los cambios de última hora para los datos compartidos de Snowflake.



Nombre de la columna Tipo Descripción
EVENTTYPEID Varchar El ID del tipo de evento, similar a OBJECTTYPEID
Puede consultar todos los ID de tipo de evento en su cuenta utilizando la vista object_and_event_type_definitions.
ID Varchar Esto es único por tipo de evento. No habrá dos registros que tengan el mismo ID dentro de un tipo de evento determinado.
OBJECTTYPEID Varchar El tipo de objeto que completó el evento. Por ejemplo, un clic en un enlace de correo electrónico se mostraría 0-1 en esta columna, que representa el objeto contactos.
OBJECTID Number El ID del registro que completó el evento.
OCCURREDAT Timestamp Cuando ocurrió el evento.

OCCURREDATDATEINT

 

Number Un número que representa cuándo ocurrió el evento. Contiene los mismos datos que la columna OCCURREDAT pero formateada como un número y utilizada como parte de la clave de grupo de la tabla. En la mayoría de los casos, puedes utilizar el OCCURREDAT marca de tiempo en lugar de este número.

OCCUREDATDATEINT

Number

Un número que representa cuándo ocurrió el evento. Contiene los mismos datos que la columna OCCURREDAT pero formateada como un número y utilizada como parte de la clave de grupo de la tabla. En la mayoría de los casos, puedes utilizar el OCCURREDAT marca de tiempo en lugar de este número.

Nota: esta columna quedará obsoleta el 24 de noviembre de 2022 y se sustituirá por OCCURREDATDATEINT.

OCCUREDAT Timestamp

Cuando ocurrió el evento.

Nota: esta columna quedará obsoleta el 24 de noviembre de 2022 y se sustituirá por OCCURREDAT.

INGESTEDAT Timestamp La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake. Más información sobre tipos de datos de columnas.
PROPERTY_* Varchar Columnas individuales que contienen las propiedades del evento.

Ejemplo 1

Recuperar los 50 eventos de clic más recientes del correo electrónico.

Consulta:


SELECT eventTypeId, objectTypeId, objectId, occuredAt, property_hs_click_raw_url AS hs_click_raw_url
FROM events_clicked_link_in_email_V2
ORDER BY occuredAt

LIMIT 50;


Devuelve: 

EVENTTYPEID OBJECTTYPEID OBJECTID OCCUREDAT HS_CLICK_RAW_URL
4-666288 0-1 45318579 2016-08-04 21:06:43.245 http://website.com?utm_campaign=Launch&utm_source=hs_email&utm_medium=email&utm_content=32520579
4-666288 0-1 80701 2016-08-29 13:31:28.622 https://cta-image-cms2.hubspot.com/ctas/v2/public/cs/ci/?pg=f0f6585a-08fc-4273-8422-49cfaddcf8d8&pid=1976760&ecid=ACsprvtkRbakerw4BiWlaDL7xFAqau1aW9m1_PAqSfQiWarY69X7Ds42zHGYTCfhHJLrXUP86Nxu
4-666288 0-1 26146013 2017-11-30 14:27:11.528 https://hubs.ly/H097a37a?utm_source=hs_email&utm_medium=email&utm_content=58251290
... ... ... ... ...

Ejemplo 2

Recuperar todos los eventos de clic de correo electrónico por los contactos que hicieron clic. Esta consulta obtiene los datos de contacto uniéndolos con object_with_object_properties.

Consulta:


SELECT
click.occuredat click_timestamp,
click.property_hs_click_raw_url click_url,
contact.properties:firstname::varchar contact_firstname,
contact.properties:lastname::varchar contact_lastname
FROM events_clicked_link_in_email_V2 click
LEFT JOIN object_with_object_properties contact
ON click.objectTypeId = contact.objectTypeId
AND click.objectId = contact.objectId
LIMIT 3;


Devuelve: 

CLICK_TIMESTAMP CLICK_URL CONTACT_FIRSTNAME CONTACT_LASTNAME
2019-01-04 22:35:41.264 https://help.website.com/es/articles/tutorial/how-to-use-email-tool?utm_source=hs_automation&utm_medium=email&utm_content=68042217 Hobbes Barón
2018-11-08 09:37:41.400 https://www.website.net/webinar-case-study?utm_source=hs_automation&utm_medium=email&utm_content=55200164 Milo Gold
2018-11-08 09:37:41.426 https://www.website.net/contact?utm_source=hs_automation&utm_medium=email&utm_content=55200164 Harlow Villari
... ... ... ...

Consultas de tipo objeto y evento

object_and_event_type_definitions

Este objeto de la base de datos contiene definiciones para todos los objetos y eventos disponibles en su cuenta de HubSpot.

Este objeto de base de datos puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
OBJECTTYPEID Varchar El ID del objeto que puede contener el pipeline (por ejemplo, negocios o tickets).
FULLYQUALIFIEDNAME Varchar El nombre del objeto o evento.
INGESTEDAT Timestamp La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake. Más información sobre tipos de datos de columnas.

Ejemplo 1

Recuperar todos los objetos y eventos disponibles en tu cuenta de HubSpot.

Consulta:


SELECT objectTypeId, fullyQualifiedName
FROM object_and_event_type_definitions;

 
Devuelve: 

OBJECTTYPEID FULLYQUALIFIEDNAME
0-1 CONTACT
0-8 LINE_ITEM
0-11 CONVERSATION
... ...

Listas de consultas

A continuación, aprende a consultar tus listas, como las listas de contactos y empresas disponibles y los registros incluidos en esas listas.

listas

Este objeto de la base de datos contiene información sobre las listas de contactos y empresas de HubSpot. Devuelve una fila por lista, y las columnas incluyen detalles de la lista como el nombre de la lista, el tamaño y el tipo de objeto de los registros que contiene. No contiene información sobre los registros individuales dentro de cada lista (consulta list_membership). 

Este objeto de base de datos puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
OBJECTTYPEID Varchar El tipo de registros de la lista (por ejemplo, contacto o empresa).
LISTID Number El ID de la lista. Se une a la columna LISTID de la tabla de miembros de la lista.
CLASSICLISTID Number Un ID específico de las listas de contactos que coincide con el ID de la URL de la lista en HubSpot.
NAME Varchar El nombre de la lista.
SIZE Number El número de registros de la lista.
CREATEDBYUSERID Number El ID del usuario que creó la lista.
CREATEDAT Timestamp Cuando la lista fue creada en HubSpot.
UPDATEDBYUSERID Number El ID del usuario que ha actualizado la lista más recientemente.
UPDATEDAT Timestamp La fecha y hora en que la fecha fue actualizada por última vez en HubSpot. Más información sobre tipos de datos de columnas
INGESTEDAT Timestamp La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake.

Ejemplo 1

Recuperar todas las listas de contactos.

Consulta:


SELECT listId, name, size
FROM lists
WHERE objectTypeId = '0-1';

 
Devuelve: 

LISTID NAME TAMAÑO
118131 Alcance semanal 103
66156 Suscriptores de blog 455
771852 Principales suscriptores 2021 37
... ... ...

Ejemplo 2

Recuperar una lista de contactos específica llamada Principales suscriptores 2021

Consulta:


SELECT listId, name, size 
FROM lists
WHERE objectTypeId = '0-1'
AND
listName = 'Top subscribers 2021';


Devuelve: 

LISTID NAME TAMAÑO
771852 Principales suscriptores 2021 37

list_membership

Este objeto de la base de datos contiene información sobre qué registros son miembros de qué listas, con una fila por cada registro de la lista. Por ejemplo, si tiene una lista de suscriptores de un blog con 500 contactos, el objeto de base de datos devolverá 500 filas. 

Sólo contiene los ID de listas y los ID de objetos. Para más información, únase al objeto de base de datos de las listas.

Este objeto de base de datos puede devolver las siguientes columnas:

Nombre de la columna Tipo Descripción
LISTID Varchar El ID de la lista. Se une a la columna HS_LIST_ID de la tabla de listas.
OBJECTID Varchar El ID del registro en la lista.
UPDATEDAT Timestamp La fecha y hora en que los datos fueron actualizados por última vez en HubSpot. Más información sobre tipos de datos de columnas.
INGESTEDAT Timestamp La fecha y la hora en que los datos fueron ingeridos por última vez por Snowflake. 

Ejemplo 1

Recuperar los ID de todos los contactos de la lista Principales suscriptores 2021.

Consulta:


SELECT objectId
FROM list_memberships
INNER JOIN lists
ON list_memberships.listId = lists.listId
WHERE lists.objectTypeId = '0-1'
AND lists.name = 'Top Subscribers 2021';

 
Devuelve: 

OBJECTID
54325098
96805401
6922028
...

Ejemplo 2

Recuperar los nombres y apellidos de los detalles de los contactos de la lista de los principales abonados 2021.

Consulta:


SELECT

contact.objectId AS objectid,
contact.property_firstname AS firstname,
contact.property_lastname AS lastname
FROM objects_contacts contact
INNER JOIN list_memberships ON contact.objectId = list_memberships.objectId
INNER JOIN lists ON list_memberships.listId = lists.listId
WHERE lists.objectTypeId = '0-1'
AND lists.name = 'Top Subscribers 2021'


Devuelve: 

OBJECTID

FIRST NAME

LAST NAME

54325098

Hobbes

Barón

96805401

Milo

Gold

6922028

Henry

Riley

...

...

...

Preguntas frecuentes

Quiero generar datos similares a un informe de la aplicación de Hubspot, ¿cómo lo hago?


Por lo general, es conveniente observar las columnas presentes en el informe con el que se está comparando. Si la visualización del informe no es tabular, al convertirlo en una tabla se mostrarán las columnas que contiene el informe. Estas columnas suelen ser propiedades de un tipo de objeto o de un tipo de evento. El siguiente paso es averiguar la propiedad de tipo de objeto a la que corresponde una columna. Puede hacerlo consultando property_definitions:


SELECT * FROM property_definitions

WHERE label = [column_name]

 

Puede que no siempre haya una coincidencia exacta porque algunos nombres de propiedades suelen resolverse con un nombre más descriptivo en la aplicación. En casos como este, hacer una búsqueda difusa usando el operador LIKE en la columna label(o incluso la descripción) en property_definitions puede ayudar.

Después de determinar a qué tipo de objeto pertenece la columna, es trivial determinar qué consultar. Basta con buscar la vista object_x que corresponde al tipo.

¿Cómo puedo vincular este tipo de datos a otro, por ejemplo, cómo recuperar formularios para una campaña?


Si necesitas vincular dos o más registros diferentes entre sí, echa un vistazo a las asociaciones. Las asociaciones representan las relaciones entre objetos en el CRM de HubSpot. Todas las asociaciones posibles entre dos tipos se enumeran en association_definitions. En el ejemplo anterior, para conocer todos los formularios a los que está vinculada una campaña, es necesario consultar ASSOCIATIONS_CAMPAIGNS_TO_FORMS:


SELECT campaigns.property_hs_name campaign_name,
forms.property_hs_form_id form_id
FROM objects_campaigns campaigns
JOIN associations_campaigns_to_forms assoc ON
assoc.campaign_objectid=campaigns.objectid
JOIN objects_forms forms ON forms.objectid=assoc.form_objectid
GROUP BY campaign_name

¿Cómo puedo conocer el estado de la integración HubSpot-Snowflake?

Para recibir actualizaciones de estado en tiempo real sobre interrupciones y problemas de la integración HubSpot-Snowflake, consulta la vista data_share_status:

SELECT * FROM hubspot.public.data_share_status
LIMIT 1

Los resultados se mostrarán como:

ESTADO MENSAJE UPDATEDAT
OK NINGÚN INCIDENTE CONOCIDO POR EL MOMENTO 2023-04-10 09:21:20.123

Esta vista proporciona actualizaciones sobre el estado de la integración en orden cronológico inverso. Integrar los resultados de esta consulta en un panel de control te ayudará a seguir el rendimiento de la integración y a detectar cualquier tiempo de inactividad o interrupción. 

¿Te resultó útil este artículo?
Este formulario se utiliza solo para recibir comentarios a la documentación. Cómo recibir ayuda con HubSpot.