- Knowledge base
- Creazione di rapporti e dati
- Rapporti
- Eseguire query sui dati di HubSpot in Snowflake
Eseguire query sui dati di HubSpot in Snowflake
Ultimo aggiornamento: 24 settembre 2026
Disponibile con uno qualsiasi dei seguenti abbonamenti, tranne dove indicato:
-
Data Hub Enterprise
Dopo aver collegato Snowflake al tuo account HubSpot, puoi utilizzare la funzione Data Share di Snowflake per eseguire query sui dati di HubSpot dal tuo account Snowflake.
Ritardo dei dati e regione del tuo account Snowflake
Avrai accesso allo schema V2_LIVE, aggiornato ogni 15 minuti, e allo schema V2_DAILY, aggiornato ogni giorno.
Nota: le seguenti viste nello schema V2_LIVE vengono aggiornate solo quotidianamente: association_definitions, owners, pipelines e pipeline_stages.
Configurazione dell’ambiente Snowflake
Per eseguire query sui dati di HubSpot in Snowflake, dovrai selezionare il warehouse, il database e lo schema da cui desideri eseguire le query. Puoi impostarli a livello di foglio di lavoro per includerli automaticamente nelle tue query oppure aggiungerli manualmente.
Per selezionare il warehouse, il database e lo schema a livello di foglio di lavoro:
- Nella riga superiore del foglio di lavoro, fai clic sulla barradelle azioni del foglio di lavoro.

- Nella finestra a comparsa:
- Fai clic sul menu a discesa "Magazzino ", quindi selezionail tuomagazzino.
- Fai clic sul menu a discesa "Database ", quindi seleziona il tuo database HubSpot.
- Fai clic sul menu a discesaSchema, quindi seleziona lo schema che desideri utilizzare:
- V2_DAILY: lo schema giornaliero per eseguire query sui dati in base alle tabelle. I dati in questo schema vengono aggiornati una volta al giorno. L’utilizzo di questo schema garantisce query più veloci ed è consigliato per eseguire query direttamente in Snowflake.
- V2_LIVE: lo schema in tempo reale basato sulle Secure Views dei dati di HubSpot. I dati in questo schema vengono aggiornati ogni 15 minuti al massimo. Se stai interrogando un ampio insieme di dati, le query potrebbero risultare lente. In questo caso, si consiglia di copiare prima i dati nella propria tabella tramite un processo ETL, quindi di eseguire la query su quella tabella.

Una volta configurato l’ambiente, è possibile eseguire query sui dati di HubSpot senza dover aggiungere manualmente il database o il tipo di schema alle query.
Per aggiungere manualmente il database e il tipo di schema alle query, inserisci il nome del database seguito dallo schema all’inizio del campo FROM. Ad esempio:
SELECT objectTypeId, objectId, updatedAt
DA hubspot_share_name.V2_LIVE.objects
WHERE objectTypeId = '0-3'
LIMIT 1;
Panoramica dei dati
Le query sono costruite utilizzando il linguaggio SQL e possono essere utilizzate per recuperare dati di HubSpot quali:
- Oggetti: oggetti standard e personalizzati, come contatti, aziende, prodotti.
- Record: singoli record, come un singolo contatto o un'azienda.
- Associazioni: tutti i tipi di associazione disponibili e i record attualmente associati.
- Eventi: dati relativi sia agli eventi standard di HubSpot, come le aperture delle e-mail, sia agli eventi comportamentali personalizzati.
- Segmenti: segmenti di contatti e aziende di HubSpot.
- Proprietari: utenti del tuo account HubSpot, in relazione ai record di cui sono stati designati come proprietari.
- Pipeline:pipelinedi trattativee ticket, comprese le fasi della pipeline.
- Proprietà: proprietà e relativi valori sui record del CRM, compresa la cronologia delle proprietà.
Scopri di più su modello di dati CRM di HubSpot.
Nota bene: man mano che sviluppiamo la condivisione dei dati, introdurremo delle modifiche, alcune delle quali potrebbero comportare incompatibilità. Si consiglia vivamente di iscriversi al registro delle modifiche per sviluppatori di HubSpot. Queste modifiche saranno sempre pubblicate nel registro delle modifiche prima di qualsiasi aggiornamento.
Limitazione e ordinamento dei dati restituiti
Quando si creano le query, è possibile controllare la quantità di dati restituiti, nonché l’ordine in cui vengono restituiti, includendoLIMIT e ORDER BY nella query. Ad esempio, per interrogare tutti i contatti con le relative proprietà, ma restituire solo tre risultati e ordinarli in base all’ID del contatto, è possibile costruire la query come segue:
SELECT objectTypeId, updatedAt, ingestedAt
FROM oggetti
WHERE ID_tipo_oggetto = '0-1'
ORDINATI PER ID_oggetto
LIMIT 10;
Tipi di dati delle colonne
Quando si eseguono query sui dati in Snowflake, le colonne restituite dipendono dai dati oggetto della query. È possibile visualizzare le colonne disponibili per una determinata tabella o vista in Snowflake selezionando la vista nella barra laterale sinistra.
Nota:nel resto di questo documento, utilizziamo il termine “oggetto del database” quando il contesto si applica sia alle tabelle che alle viste.

Per restituire una colonna specifica, includere tale colonna nel campo SELECT della query. Ad esempio, la seguente query restituirà solo le colonne OBJECTID e UpdatedAt
SELECT objectTypeId, updatedAt, ingestedAt
DA oggetti
WHERE ID_tipo_oggetto = '0-1'
ORDINATI PER ID_oggetto
LIMIT 10;
Di seguito sono riportate le definizioni generali delle colonne che una query potrebbe restituire. Per altre definizioni non incluse di seguito, consultare le definizioni delle singole viste nell’articolo sopra riportato.
- OBJECTTYPEID: un valore VARCHAR che rappresenta il tipo di un oggetto. Ad esempio, 0-1 rappresenta l'oggetto "contatti", 0-2 rappresenta l'oggetto "aziende" e 2-1232 potrebbe rappresentare un oggetto personalizzato nel proprio account. Nei segmenti, questo si riferisce al tipo di segmento (ad esempio, contatto o azienda). È possibile interrogare tutti gli ID di oggetti ed eventi presenti nel proprio account utilizzando la vista object_and_event_type_definitions.
- OBJECTID: un numero BIGINT che rappresenta un singolo record di un determinato tipo di oggetto nel proprio account HubSpot. Per identificare un record, è necessario utilizzare sia l’ID del tipo di oggetto che l’ID dell’oggetto.
- INGESTEDAT: il timestamp relativo al momento in cui una riga di dati è stata aggiunta a Snowflake, rappresentato da un valore TIMESTAMP_NTZ. Non è correlato al timestamp logico di un’operazione di creazione o aggiornamento in HubSpot.
- A causa dell’elaborazione interna di HubSpot, il timestamp di acquisizione di una riga potrebbe essere aggiornato anche se nessun’altra colonna della riga è stata modificata.
- Quando si creano processi ETL che copiano dati modificati di recente, si consiglia di basare le query sul timestamp di acquisizione. Inoltre, se il flusso copia i dati quotidianamente, si consiglia di copiare i dati dei due giorni precedenti per tenere conto eventuali ritardi.
- CREATEDAT e UPDATEDAT: il timestamp logico relativo al momento in cui i dati sono stati creati o aggiornati in HubSpot, rappresentato da un valore TIMESTAMP_NTZ . Questi timestamp corrisponderanno a quelli presenti in HubSpot. Ad esempio, l’ora visualizzata in HubSpot come data di creazione di un record corrisponderà al timestamp presente nella colonna CREATEDAT in Snowflake. Questi timestamp non sono direttamente correlati al timestamp di acquisizione e non è consigliabile basare i processi ETL su queste proprietà.
- COMBINEDASSOCIATIONTYPE: un valore VARCHAR che identifica in modo univoco una definizione di associazione.
Trasformazione dei tipi di dati
A volte, una query restituisce dati con colonne di tipo VARCHAR quando sarebbe preferibile averli in un tipo diverso. In casi come questo, si consiglia di convertire il tipo di dati VARCHAR nei tipi desiderati utilizzando le funzioni di Snowflake. Ad esempio, le proprietà di un record oggetto sono memorizzate come tipi di dati VARCHAR nella maggior parte degli oggetti del database, ma a volte contengono valori numerici e di data e ora. Funzioni come:
try_to_number, try_to_timestamp_ntz possono essere utilizzate per convertire questi dati VARCHAR rispettivamente nei tipi NUMBER e DATETIME:
SELECT objectid, value AS amount_str, try_to_number(value) AS amountFROM object_properties
WHERE objecttypeid='0-3' AND name='amount'
LIMIT 1
Query sugli oggetti
Di seguito, scopri come eseguire query sui dati di specifici oggetti e record di HubSpot, insieme ai dati che vengono restituiti.
I dati degli oggetti sono disponibili negli oggetti del database condiviso. Filtra in base a objectTypeId per recuperare un tipo di oggetto specifico. Utilizza OBJECT_WITH_OBJECT_PROPERTIES quando ti servono le proprietà attuali per ogni record. I valori delle proprietà sono memorizzati nelle properties . Utilizzare OBJECTS per gli attributi principali del record e OBJECT_PROPERTIES o OBJECT_PROPERTIES_HISTORY per i dati relativi alle singole proprietà.
| Nome oggetto | ID tipo oggetto |
| Contatti | 0-1 |
| Aziende | 0-2 |
| Voci di riga | 0-8 |
Agli oggetti personalizzati verrà assegnato un ID al momento della creazione e saranno identificati come2-ID_univoco. Ad esempio,2-12345. Scopri di più su object_and_event_type_definitions.
Per ulteriori dettagli, consultare le sezioni "object_with_object_properties", "object_properties", "objects" e "object_properties_history" riportate di seguito.
object_with_object_properties
Questo oggetto del database contiene i dati dei tuoi record HubSpot. Le query su questo oggetto del database restituiscono una riga per ogni record all’interno di un tipo di oggetto (ad esempio, tutti i record dei contatti nel tipo di oggetto “contatti”). Tutte le proprietà sono memorizzate nella colonna “Properties”, che è una colonna Snowflake Variant / JSON.
Questa vista può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
OBJECTTYPEID |
Varchar | L'ID del tipo di oggetto (ad esempio, "contacts" è 0-1). |
OBJECTID |
Numero | L'ID del record (ad es., un record di contatto con ID 123752). |
PROPERTIES |
Variante | I valori delle proprietà del record. |
UPDATEDAT |
Timestamp | Data e ora dell'ultimo aggiornamento del record in HubSpot. Maggiori informazioni sui tipi di dati delle colonne. |
INGESTEDAT |
Timestamp | Data e ora dell’ultima importazione dei dati da parte di Snowflake. |
Nota: Il 25 gennaio 2022, la colonna " timestamp " nella tabella e nella vista "object_with_object_properties", che rappresenta la data e l’ora dell’ultimo aggiornamento del record dell’oggetto in HubSpot, verrà rinominata "updatedat". Ciò è necessario per allinearsi alla rappresentazione dei dati datetime nel resto della condivisione dei dati.
Trattandosi di una modifica che comporta incompatibilità, la nuova colonna " updatedat" è stata aggiunta alla tabella e alla vista. Per i prossimi 90 giorni, queste due nuove colonne coesisteranno con "timestamp", le colonne che sono destinate a sostituire. Ciò vi offre l’opportunità di passare all’utilizzo delle nuove colonne.
Dopo 90 giorni, il 25 gennaio 2022, la colonna "timestamp" verrà rimossa dalla tabella e dalla vista. Dopo tale data, qualsiasi tentativo di eseguire una query sulla tabella o sulla vista "object_with_object_properties" utilizzando le colonne "timestamp" fallirà.
Esempio 1
Recuperare tutti i contatti e le relative proprietà.
Query:
SELECT objectTypeId, objectId, propertiesFROM object_with_object_propertiesWHERE objectTypeId = '0-1'
Risultato:
| OBJECTTYPEID | OBJECTID | PROPRIETÀ |
| 0-1 | 38960439 | {"createdate": "1504656970152"...} |
| 0-1 | 321740651 | { "createdate": "1590183081949"...} |
| 0-1 | 98392101 | { "createdate": "1533566477279"...} |
| ... | ... | ... |
Esempio 2
Recupera il nome e lo stato di un massimo di tre trattative.
Query:
SELECTobjectId,properties:dealname::string AS dealname,properties:dealstage::string AS dealstage, properties:amount::number AS dealamountFROM object_with_object_propertiesWHERE objectTypeId = '0-3'LIMIT 3;
Risultati:
| ID OGGETTO | NOME OFFERTA | FASE_TRANSAZIONE | IMPORTO_OFFERTA |
| 38960439 | Nome dell'affare 1 | chiusa-persa | 7488939 |
| 321740651 | Nome dell'affare 1 | chiusa vinta | 9292029 |
| 98392101 | Nome dell'affare 1 | chiusa persa | 62626528 |
oggetti
Questo oggetto del database è un sottoinsieme dei dati presenti nell’oggetto del database object_with_object_properties. Ogni riga restituita riporta l’ID oggetto per ciascun record. Questo oggetto del database restituisce solo i record esistenti. Quando un record viene eliminato in HubSpot, verrà rimosso da questo oggetto del database. Questo oggetto del database è un sottoinsieme dei dati presenti nella tabella object_with_object_properties. Ogni riga restituita riporta l’ID oggetto per ciascun record. Questa vista restituisce solo i record esistenti. Quando un record viene eliminato in HubSpot, verrà rimosso da questa vista.
Questo oggetto del database contiene i dati attuali dell’oggetto senza i valori delle proprietà. Utilizzalo quando ti servono solo gli attributi fondamentali del record, oppure uniscilo a OBJECT_PROPERTIES quando ti servono proprietà selezionate. L’utilizzo di questo oggetto del database insieme all’oggetto del database object_properties consente di replicare i dati presenti in object_with_object_properties, mantenendo al contempo il controllo sulle proprietà da restituire.
Questo oggetto del database può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
OBJECTTYPEID |
Varchar | L'ID del tipo di oggetto (ad esempio, "contacts" è 0-1). |
OBJECTID |
Numero | L'ID del record (ad es., un record di contatto con ID 123752). |
INGESTEDAT |
Timestamp | Data e ora dell'ultimo inserimento dei dati da parte di Snowflake. Scopri di più sui tipi di dati delle colonne. |
Esempio 1
Recupera tutti i record dei contatti.
Query:
SELECT objectTypeId, objectIdFROM objectsWHERE objectTypeId = '0-1'
Risultato:
| OBJECTTYPEID | ID OGGETTO |
| 0-1 | 36721864 |
| 0-1 | 103580363 |
| 0-1 | 56047670 |
| ... | ... |
proprietà_oggetto
Questo oggetto database è un sottoinsieme dell'oggetto database `object_with_object_properties`. Ogni riga contiene il valore corrente della proprietà impostato su un determinato record. Ad esempio, un contatto avrà una riga per la proprietà “Nome” e una riga per la proprietà“Cognome ”. Se un record non presenta un valore per una determinata proprietà, la riga apparirà con una stringa vuota oppure non apparirà affatto.
Questo oggetto del database può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
OBJECTTYPEID |
Varchar | L'ID del tipo di oggetto (ad esempio, "contacts" è 0-1). |
OBJECTID |
Numero | L'ID del record (ad es., un record di contatto con ID 123752). |
NAME |
Varchar | Il nome della proprietà. |
VALUE |
Timestamp | Il valore della proprietà. |
UPDATEDAT |
Timestamp | Data e ora dell'ultimo aggiornamento del record in HubSpot. Scopri di più sui tipi di dati delle colonne. |
INGESTEDAT |
Timestamp | Data e ora dell'ultima importazione dei dati da parte di Snowflake. |
Esempio 1
Recupera le proprietà "Nome", "Cognome" e "Città" per tutti i contatti.
Query:
SELECT objectTypeId, objectId, name, valueFROM object_propertiesWHERE objectTypeId = '0-1'AND name IN ('firstname', 'lastname', 'city')ORDER BY objectId;
Risultato:
| OBJECTTYPEID | OBJECTID | NAME | VALORE |
| 0-1 | 10401 | nome | Brian |
| 0-1 | 10401 | città | Dublino |
| 0-1 | 10401 | cognome | Gallagher |
| 0-1 | 23451 | nome | Fernando |
| 0-1 | 23451 | cognome | Fierro |
| 0-1 | 25751 | nome | Charles |
| ... | ... | ... | ... |
Esempio 2
Recupera il nome, il cognome e la fase del ciclo di vita di tutti i contatti e li combina in una riga per ogni contatto. Questo esempio utilizza la sintassi SQL PIVOT.
Query:
SELECT objectId, firstname, lastname, lifecyclestage FROM(SELECT objectId, name, valueFROM object_propertiesWHERE objectTypeId = '0-1'AND name IN ('firstname', 'lastname', 'lifecyclestage'))PIVOT(MAX(value) FOR name IN ('firstname', 'lastname', 'lifecyclestage')) AS p(objectId, firstname, lastname, lifecyclestage);
Risultato:
| ID TIPO OGGETTO | ID OGGETTO | NOME | COGNOME | FASE DEL CICLO DI VITA |
| 0-1 | 54325098 | Hobbes | Barone | piombo |
| 0-1 | 96805401 | Milo | Oro | piombo |
| 0-1 | 6922028 | Henry | Riley | lead |
| ... | ... | ... | ... | ... |
object_properties_history
Questo oggetto del database contiene i valori storici delle proprietà. Per i contatti, contiene i 45 valori più recenti. Per tutti gli altri oggetti, contiene i 20 valori più recenti. Visualizza una riga per ogni valore storico della proprietà. Il valore corrente di una proprietà è determinato dal timestamp UPDATEDATpiù recente nella cronologia della proprietà.
Questo oggetto del database può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
OBJECTTYPEID |
Varchar | L'ID del tipo di oggetto (ad esempio, "contatti" è 0-1). |
OBJECTID |
Numero | L'ID del record (ad esempio, un record di contatto con ID 123752). |
NAME |
Varchar | Il nome della proprietà. |
VALUE |
Timestamp | Il valore della proprietà. |
UPDATEDAT |
Timestamp | Data e ora dell'ultimo aggiornamento dei dati in HubSpot. Scopri di più sui tipi di dati delle colonne. |
INGESTEDAT |
Timestamp | Data e ora dell'ultima acquisizione dei dati da parte di Snowflake. |
Esempio 1
Recupera la cronologia di una singola proprietà per un singolo contatto.
Query:
SELECT objectId, name, value, updatedAtFROM object_properties_historyWHERE objectTypeId = '0-1'AND objectId = 136493192AND name = 'hs_predictivescoringtier'ORDER BY UPDATEDAT DESC;
Risultato:
| ID OGGETTO | NAME | VALORE | DATA_AGGIORNAMENTO |
| 136493192 |
hs_livello_punteggio_predittivo |
livello_1 |
22/06/2022 22:45:05.931 |
| 136493192 |
hs_livello_punteggio_predittivo |
livello_2 |
18/09/2021 08:20:56.622 |
| 136493192 |
livello_di_punteggio_predittivo_hs |
livello_3 |
31/11/2019 18:20:22.851 |
| ... |
... |
... |
... |
Esempio 2
Recupera il nome attuale di tutti i contatti che hanno mai avuto lo stadio del ciclo di vita " Abbonato".
Query:
SELECTobjectId,properties:firstname::string AS firstname,properties:lastname::string AS lastnameFROM object_with_object_propertiesWHERE object_with_object_properties.objectTypeId = '0-1'AND objectId IN (SELECT objectIdFROM object_properties_historyWHEREobject_properties_history.objectTypeId = '0-1'AND object_properties_history.name = 'lifecyclestage'AND object_properties_history.value = 'subscriber');
Risultati:
| ID OGGETTO | NOME | COGNOME |
| 54325098 | Hobbes | Baron |
| 96805401 | Milo | Gold |
| 6922028 | Henry | Riley |
| ... | ... | ... |
Query di associazione
I dati relativi alle associazioni sono disponibili in ASSOCIATIONS. Filtrare in base a combinedAssociationTypeId per recuperare un tipo di associazione specifico. Eseguire un join tra ASSOCIATIONS e ASSOCIATION_DEFINITIONS per identificare i tipi di oggetto correlati e la definizione dell’associazione.
association_definitions
Questo oggetto del database contiene informazioni su tutti i tipi di associazione disponibili tra gli oggetti HubSpot, con una riga per ogni tipo di associazione. È possibile eseguire un join tra questo oggetto del database e l’oggetto del database delle associazioni per ottenere informazioni sulle associazioni specifiche per ogni record.
Possono esserci più tipi di associazioni tra gli stessi oggetti. Il tipo di associazione principale, ovvero quello visualizzato in HubSpot quando i record sono associati, è quello per cui ISMAINASSOCIATIONDEFINITION è true.
Questo oggetto del database può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
COMBINEDASSOCIATIONTYPEID |
Varchar | L'identificatore univoco della definizione dell'associazione. |
CATEGORY |
Varchar | Origine del tipo di associazione. Uno dei seguenti: HUBSPOT_DEFINED, USER_DEFINED, INTEGRATOR_DEFINED |
ID |
Numero | L'identificatore della definizione dell'associazione all'interno della propria categoria. |
FROMOBJECTTYPEID |
Varchar | L'ID dell'oggetto che costituisce la fonte della definizione dell'associazione. |
TOOBJECTTYPEID |
Varchar | L'ID dell'oggetto che costituisce la destinazione della definizione di associazione. |
NAME |
Varchar | Il nome della definizione di associazione. |
LABEL |
Varchar | L'etichetta della definizione dell'associazione. |
ISMAINASSOCIATIONDEFINITION |
Booleano | Indica se la definizione dell'associazione è di tipo principale. Se il valore è vero, la definizione è quella che HubSpot visualizza sui record associati. |
INGESTEDAT |
Timestamp | Data e ora dell’ultima acquisizione dei dati da parte di Snowflake. Scopri di più sui tipi di dati delle colonne. |
Esempio 1
Recupera i tipi di associazioni disponibili nel tuo account.
Query:
SELECT combinedAssociationTypeId, fromObjectTypeId, toObjectTypeId, nameFROM association_definitionsORDER BY category, id
Risultato:
| COMBINEDASSOCIATIONTYPE | ID_TIPO_OGGETTO_DI_ORIGINE | A ID TIPO OGGETTO | NOME |
| 0-1 | 0-1 | 0-2 | CONTATTO_AZIENDA |
| 0-2 | 0-2 | 0-1 | AZIENDA_DA_CONTATTARE |
| 0-3 | 0-3 | 0-1 | OFFERTA_PER_CONTATTO |
| 0-4 | 0-1 | 0-3 | CONTATTO_PER_AFFARE |
| 0-5 | 0-3 | 0-2 | ACCORDO_CON_AZIENDA |
| ... | ... | ... | ... |
Esempio 2
Recupera i tipi di associazione disponibili tra le trattative e le aziende.
Query:
SELECTcombinedAssociationTypeId, fromObjectTypeId, toObjectTypeId, nameFROM association_definitionsWHERE fromObjectTypeId = '0-3' AND toObjectTypeId = '0-2'
AND isMainAssociationDefinition = trueORDER BY category, id
Risultati:
| TIPO_ASSOCIAZIONE_COMBINATA | DA ID TIPO OGGETTO | A ID TIPO OGGETTO | NOME |
| 0-5 | 0-3 | 0-2 | TRANSAZIONE_VERSO_AZIENDA |
| 0-271 | 0-3 | 0-2 | ACCORDO_CON_AZIENDA_PRINCIPALE |
| 0-341 | 0-3 | 0-2 | ACCORDO_CON_AZIENDA_SENZA_ETICHETTA |
associazioni
Questo oggetto del database contiene informazioni sulle associazioni tra record specifici. Ogni riga rappresenta un'associazione da un oggetto a un altro. In questo oggetto del database possono essere presenti righe anche se i record a cui si fa riferimento sono stati eliminati. È possibile verificare l'esistenza dei record eseguendo un join con la tabella degli oggetti.
Questo oggetto del database contiene i record di associazione per tutti i tipi di associazione. Filtrare in base a combinedAssociationTypeId ` ed eseguire un join con ` ASSOCIATION_DEFINITIONS ` quando sono necessari i metadati delle associazioni.
Questo oggetto del database può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
COMBINEDASSOCIATIONTYPEID |
Varchar | L'identificatore univoco della definizione dell'associazione. |
FROMOBJECTID |
Numero | L'ID dell'oggetto di origine. |
TOOBJECTID |
Numero | L'ID dell'oggetto di destinazione. |
INGESTEDAT |
Timestamp | Data e ora dell'ultimo inserimento dei dati da parte di Snowflake. Ulteriori informazioni sui tipi di dati delle colonne. |
Esempio 1
Recuperare tutte le trattative e i contatti associati.
Query:
SELECT combinedAssociationTypeId, fromObjectId, toObjectIdFROM associationsWHERE combinedAssociationTypeId = '0-5'
Risultato:
| COMBINEDASSOCIATIONTYPEID | ID_OGGETTO_DI_ORIGINE | ID OGGETTO DESTINATARIO |
| 0-5 | 6626541373 | 233620335 |
| 0-5 | 6616436082 | 3866015468 |
| 0-5 | 6690805943 | 7132752747 |
| ... | ... | ... |
Esempio 2
Recupera tutti i ticket associati a un contatto specifico (ID contatto: 3005).
Query:
SELECT combinedAssociationTypeId, fromObjectId, toObjectIdFROM associationsWHERE associationCategory = 'HUBSPOT_DEFINED'AND combinedAssociationTypeId = '0-15'AND fromObjectId = 3005;
Risultato:
| TIPO DI ASSOCIAZIONE COMBINATA | DA ID OGGETTO | A ID OGGETTO |
| 0-5 | 6626541373 | 233620335 |
Esempio 3
Recupera tutte le trattative associate a un contatto specifico (ID contatto: 4464). Invece di codificare in modo rigido combinedAssociationTypeId, questo esempio esegue un join con association_definitions.
Query:
SELECT combinedAssociationTypeId, fromObjectId toObjectId,FROM associationsWHEREcombinedAssociationTypeId = (SELECT combinedAssociationTypeId FROM association_definitions WHERE fromObjectTypeId = '0-1' AND toObjectTypeId = '0-3' AND isMainAssociationDefinition)AND fromObjectId = 4464;
Risultati:
| ID TIPO ASSOCIAZIONE COMBINATA | ID_OGGETTO_DA | A ID OGGETTO |
| 0-5 | 6626541373 | 233620335 |
Query del proprietario
proprietari
Questo oggetto del database contiene informazioni sugli utenti del tuo account HubSpot. Gli utenti possono essere impostati come proprietari dei record e conterranno sia un ID utente che un ID proprietario, a seconda del contesto. Entrambi gli ID possono essere utilizzati per identificare lo stesso utente.
Questo oggetto del database può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
OWNERID |
Numero | ID proprietario dell'utente. |
USERID |
Numero | L'ID utente. Gli utenti con valore NULL in questa colonna sono stati eliminati. |
EMAIL |
Varchar | L'indirizzo e-mail dell'utente. |
FIRSTNAME |
Varchar | Il nome dell'utente. |
LASTNAME |
Varchar | Il cognome dell'utente. |
ARCHIVED |
Booleano | Se l'utente è stato eliminato. |
CREATEDAT |
Timestamp | Data e ora di creazione dell'utente in HubSpot. Per ulteriori informazioni, consulta i tipi di dati delle colonne. |
UPDATEDAT |
Timestamp | Data e ora dell'ultimo aggiornamento dell'utente in HubSpot. Per ulteriori informazioni, consulta i tipi di dati delle colonne. |
INGESTEDAT |
Timestamp | Data e ora dell'ultima acquisizione dei dati da parte di Snowflake. |
Esempio 1
Recupera tutti gli utenti. Il filtro WHERE archived = false rimuove gli utenti eliminati dai dati restituiti.
Query:
SELECT ownerId, userId, email, firstname, lastname
FROM owners
WHERE archived = false
Risultato:
| OWNERID | ID UTENTE | NOME | COGNOME | |
| 29584574 | 4621126 | 233620335 | Hobbes | Baron |
| 30532717 | 4874784 | 3866015468 | Pablo | Walters |
| 30580321 | 925511 | 7132752747 | Milo | Oro |
| ... | ... | ... | ... | ... |
Esempio 2
Recupera un proprietario specifico in base al suo ID proprietario.
Query:
SELECT ownerId, userId, email, firstname, lastnameFROM ownersWHERE ownerId = 29584574;
Risultato:
| ID PROPRIETARIO | ID UTENTE | NOME | COGNOME | |
| 29584574 | 4621126 | 233620335 | Hobbes | Baron |
Esempio 3
Recupera tutti i contatti e i relativi proprietari. Questa query associa i record ai proprietari tramite object_with_object_properties e la proprietà del contatto hubspot_owner_id.
SELECT
contact.objectId COME contact_id,
contact.properties:firstname::string AS contact_firstname,
contact.properties:lastname::string AS contact_lastname,
contact.properties:hubspot_owner_id::number AS contact_hubspot_owner_id,
owner.firstname AS nome_proprietario,
owner.lastname AS cognome_proprietario,
proprietario.email AS proprietario_email
DA oggetto_con_proprietà_dell'oggetto AS contatto
UNISCI proprietari AS proprietario
SU contact.properties:hubspot_owner_id::number = owner.ownerId
DOVE contact.objectTypeId = '0-1';
Risultati:
| ID_CONTATTO | CONTACT_FIRSTNAME | CONTACT_COGNOME | ID_PROPRIETARIO_HUBSPOT_CONTATTO | NOME_PROPRIETARIO | COGNOME_PROPRIETARIO | OWNER_EMAIL |
| 113834202 | Richard | Greenfield | 29584574 | Hobbes | Baron | hobbes.b@business.com |
| 53540801 | Ford | Karl | 30241125 | Milo | Gold | milo.g@business.com |
| ... | ... | ... | ... | ... | ... | ... |
Query relative ai team
team
I team in HubSpot ti consentono di organizzare i tuoi utenti in gruppi a fini organizzativi e di reporting. Puoi avere un team principale e team aggiuntivi.
Questo oggetto del database contiene informazioni sui team presenti nel proprio account HubSpot.
Questo oggetto del database può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
| TEAMID | Numero | L'ID della squadra. |
| TEAMNAME | Varchar | Il nome della squadra. |
| ID SQUADRA MADRE | Numero | L'ID della squadra principale. |
| CHILDTEAMIDS | Array | Gli ID delle squadre figlie. |
| PRIMARYOWNERMEMBERS | Varchar | Gli ID dei proprietari dei membri primari del team. |
| SECONDARYOWNERMEMBERS | Booleano | Gli ID dei proprietari dei membri secondari del team. |
| INGESTEDAT | Timestamp | Data e ora dell'ultima acquisizione dei dati da parte di Snowflake. |
Esempio 1
Recupera tutti i team.
Query:
SELECT teamId,teamName, primaryOwnerMembers
FROM teams
Risultato:
| ID SQUADRA | NOME DELLA SQUADRA | MEMBRI DEL PROPRIETARIO PRINCIPALE |
| 29584574 | Sottosquadra | [233620335, 1234553] |
| 30532717 | Super Team | [3866015468, 126221873] |
| 3058032 | Squadra A | [7132752747] |
owner_team
Questo oggetto del database contiene informazioni su quali proprietari corrispondono a quali team nel tuo account HubSpot.
Questo oggetto del database può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
| TEAMID | Numero | L'ID della squadra. |
| OWNERID | Numero | L'ID del proprietario dell'utente. |
| ISTEAMPRIMARY | Booleano | Indica se questo team è il team principale per questo proprietario. |
| INGESTEDAT | Timestamp | Data e ora dell'ultima acquisizione dei dati da parte di Snowflake. |
Esempio 1
Recupera tutti i proprietari di un determinato team.
Query:
SELECT teamId, ownerId, isTeamPrimaryFROM teamsWHERE teamId = 29584574
Restituisce
| TEAMID | TEAMNAME | È SQUADRA PRIMARIA |
| 29584574 | 233620335 | VERO |
| 29584574 | 1234553 | VERO |
Query in pipeline
Di seguito, scopri come eseguire query i dati relativi alle pipeline delle trattative e dei ticket, come le pipeline disponibili nel tuo account e le relative fasi.
È possibile unire questi dati a quelli degli oggetti per ottenere una visione completa delle proprie pipeline. Ad esempio, è possibile eseguire una query sulle trattative e sulle relative pipeline unendo il campo ` object_with_object_properties ` al campo pipelines.
pipeline
Questo oggetto del database contiene informazioni sulle pipeline delle trattative e dei ticket presenti nel proprio account. Ogni riga restituita rappresenta una singola pipeline.
Questa tabella può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
PIPELINEID |
Varchar | ID della pipeline. |
OBJECTTYPEID |
Varchar | L'ID dell'oggetto che la pipeline può contenere (ad esempio, trattative o ticket). |
LABEL |
Varchar | Il nome della pipeline in HubSpot. |
DISPLAYORDER |
Numero | L'ordine in cui la pipeline viene visualizzata in HubSpot. |
ARCHIVED |
Booleano | Indica se la pipeline è stata eliminata. |
CREATEDAT |
Timestamp | Data di creazione della pipeline. |
UPDATEDAT |
Timestamp | Data e ora dell'ultimo aggiornamento dei dati in HubSpot. Scopri di più sui tipi di dati delle colonne. |
INGESTEDAT |
Timestamp | Data e ora dell'ultima acquisizione dei dati da parte di Snowflake. |
Esempio 1
Recupera tutte le pipeline delle trattative disponibili, ordinate in base alla loro sequenza in HubSpot.
Query:
SELECT objectTypeId, pipelineId, labelFROM pipelinesWHERE objectTypeId = '0-3' AND not archivedORDER BY displayorder;
Risultati:
| OBJECTTYPEID | PIPELINEID | LABEL |
| 0-3 | 1bed503c-37f7-4f51-9d40-7598902673f4 | Pipeline di vendita |
| 0-3 | 12659678 | Pipeline delle licenze |
| 0-3 | 75e28846-ad0d-4be2-a027-5e1da6590b98 | Nuove attività |
| ... | ... | ... |
Esempio 2
Recupera le trattative all'interno di una pipeline specifica utilizzandoobject_with_object_properties.
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';
Risultati:
| ID_ACCORDO |
DEAL_NAME |
NOME_PIPELINE |
| 605140072 |
Registrazione globale a Meowmix |
Pipeline di vendita |
| 605457408 |
Rebranding di Friskies |
Pipeline di vendita |
| 604362473 |
Sviluppo dell'app Fresh Step |
Pipeline di vendita |
pipeline_stages
Questa vista contiene informazioni sulle singole fasi all'interno di una pipeline. Identifica le fasi combinando l'ID del tipo di oggetto, l'ID della pipeline e l'ID della fase. Quando esegui il join con le pipeline, utilizza l'ID del tipo di oggetto e l'ID della pipeline.
Questo oggetto del database può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
PIPELINEID |
Varchar | ID della pipeline. |
STAGEID |
Varchar | ID della fase. |
LABEL |
Varchar | Il nome della fase in HubSpot. |
DISPLAYORDER |
Numero | L'ordine in cui la pipeline viene visualizzata in HubSpot. |
METADATA |
Variante | Descrizione in formato JSON della fase, che include se è aperta o chiusa |
ARCHIVED |
Booleano | Indica se la fase della pipeline è stata eliminata. |
CREATEDAT |
Timestamp | Data e ora di creazione della fase della pipeline. |
Esempio 1
Recuperare le fasi di una pipeline denominata "Sales pipeline".
Query:
SELECT pipelineid, stageId, labelFROM pipeline_stagesWHERE not archivedAND pipelineid = (SELECT pipelineid FROM pipelines WHERE objectTypeId = '0-3' AND not archived AND label = 'Sales Pipeline' LIMIT 1)ORDER BY displayorder;
Risultato:
| PIPELINEID | ID FASE | ETICHETTA |
| 941650 | 941651 | Contattato |
| 941650 | 941652 | Appuntamento fissato |
| 941650 | 941653 | Fattura inviata |
| ... | ... | ... |
Esempio 2
Recupera tutte le trattative e le rispettive fasi della pipeline.
Query:
SELECTdeals.objectId deal_id,deals.properties:dealname::varchar deal_name,pipelines.label pipeline_name,pipeline_stages.label pipeline_stage_nameFROM object_with_object_properties dealsINNER JOIN pipelinesON deals.objectTypeId = pipelines.objectTypeIdAND deals.properties:pipeline::string = pipelines.pipelineidINNER JOIN pipeline_stagesON deals.objectTypeId = pipeline_stages.pipelineidAND deals.properties:pipeline::string = pipeline_stages.pipelineidAND deals.properties:dealstage::string = pipeline_stages.stageIdWHERE deals.objecttypeId = '0-3';
Risultati:
| ID_OFFERTA | NOME_OFFERTA | NOME_PIPELINE | NOME_FASE_PIPELINE |
| 605140072 | Registrazione globale a Meowmix | Pipeline di vendita | Contratto inviato |
| 605457408 | Rebranding Friskies | Pipeline di vendita | Appuntamento fissato |
| 604362473 | Sviluppo dell'app Fresh Step | Pipeline di vendita | Contratto firmato |
| ... | ... | ... | ... |
Query sulle proprietà
property_definitions
Questo oggetto del database contiene informazioni sulle proprietà degli oggetti e sugli eventi presenti nel tuo account HubSpot. Le proprietà degli eventi includono eventi standard, come le aperture e i clic sulle email, e proprietà di eventi comportamentali personalizzati. Queste informazioni possono essere utili per definire i valori presenti nei dati di object_properties e events.
È possibile identificare proprietà specifiche combinando l’ID del tipo di oggetto e il nome. È possibile recuperare informazioni simili utilizzando l’API delle proprietà.
Questo oggetto del database può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
OBJECTYPEID |
Varchar | L'ID dell'oggetto a cui si riferisce l'evento. |
NAME |
Varchar | Nome interno della proprietà. |
LABEL |
Varchar | L'etichetta della proprietà. |
DESCRIPTION |
Varchar | Descrizione della proprietà. |
TYPE |
Varchar | Il tipo della proprietà (ad es. stringa, numero, data e ora). |
FIELDTYPE |
Varchar | Il tipo di campo della proprietà. Definisce come la proprietà viene visualizzata in HubSpot e nei moduli (ad es. casella di controllo, menu a tendina). |
DISPLAYORDER |
Numero | L'ordine di visualizzazione della proprietà. |
GROUPNAME |
Varchar | Nome del gruppo della proprietà. |
OPTIONS |
Variant | Per le proprietà di enumerazione, un array delle opzioni della proprietà, inclusi gli attributi di ciascuna opzione (ad es. ordine di visualizzazione, etichetta). |
CREATEDUSERID |
Numero | L'ID dell'utente che ha creato la proprietà. |
REFERENCEDOBJECTTYPE |
Varchar | Il tipo di oggetto a cui fa riferimento la proprietà. Le proprietà del proprietario restituiranno il valore OWNER. |
CALCULATED |
Booleano | Indica se la proprietà è una proprietà calcolata. |
EXTERNALOPTIONS |
Booleano | Indica se le opzioni della proprietà sono definite in un sistema esterno. |
HASUNIQUEVALUE |
Booleano | Indica se i valori della proprietà sono univoci. Può essere impostato solo durante la creazione di una proprietà tramite l'API. |
HIDDEN |
Booleano | Indica se la proprietà è nascosta in HubSpot. |
SHOWCURRENCYSYMBOL |
Booleano | Se il valore di una proprietà numerica è formattato come valuta. |
FORMFIELD |
Booleano | Se questa proprietà può essere utilizzata nei moduli. |
READONLYDEFINITION |
Booleano | Se la proprietà può essere modificata in HubSpot. |
READONLYVALUE |
Booleano | Se il valore della proprietà può essere modificato in HubSpot. |
HUBSPOTDEFINED |
Booleano | Indica se la proprietà è stata creata da HubSpot o da un utente. |
ARCHIVED |
Booleano | Indica se la proprietà è stata eliminata. |
CREATEDAT |
Timestamp | Data e ora di creazione della proprietà in HubSpot. |
UPDATEDAT |
Timestamp | Data e ora dell'ultimo aggiornamento dei dati in HubSpot. Scopri di più sui tipi di dati delle colonne. |
INGESTEDAT |
Timestamp | Data e ora dell'ultima acquisizione dei dati da parte di Snowflake. |
Esempio 1
Recupera i nomi e le descrizioni di tutte le proprietà dei contatti.
Query:
SELECT name, label, descriptionFROM property_definitionsWHERE objectTypeId = '0-1'
Risultati:
| NAME | ETICHETTA | DESCRIZIONE |
| entered_sql_stage | Inserito nella fase SQL | Avvia il conteggio dei giorni della fase SQL. |
|
nome_primo_evento_di_conversione
|
Prima conversione | Il primo modulo inviato da questo contatto. |
| Indirizzo | Indirizzo | L'indirizzo del contatto. |
Query sugli eventi
Gli eventi includono gli eventi standard di HubSpot e gli eventi comportamentali personalizzati. Ogni evento ha un proprio oggetto nel database, denominato events_eventname.
| Nome | |
| EVENTS_AD_INTERACTION | Dettagli di un annuncio e dei contatti che hanno interagito con esso cliccandoci sopra o inviando un modulo dopo aver interagito con esso. |
| EVENTS_AD_METRICS_IMPORTED_V0 |
Dettagli di un annuncio e delle relative metriche di rendimento. |
| EVENTS_CALL_MENTIONED_KEYWORD | Dettagli sulle parole chiave menzionate da qualsiasi partecipante durante le chiamate. |
| EVENTS_CLICKED_LINK_IN_EMAIL_V2 |
Link cliccati nelle e-mail di marketing dai contatti. |
| EVENTS_CLICKED_LINK_IN_TRACKED_INBOX_EMAIL_V8 | Link cliccati dai contatti nelle email della Posta in arrivo di Conversations. |
| EVENTS_CLICKED_COOKIE_BANNER | Contatti che hanno cliccato sui cookie. |
| EVENTS_COOKIE_BANNER_VIEWED | Contatti che hanno visualizzato i cookie. |
| EVENTS_DOCUMENT_SHARED_V2 | Documenti di vendita condivisi con i contatti tramite un link esterno. |
| EVENTS_DOCUMENT_VIEWED_V2 | Documenti di vendita e contatti che li hanno visualizzati aprendo il link esterno. |
| EVENTS_DOCUMENT_COMPLETED_V2 | Documenti di vendita e contatti che li hanno chiusi. |
| EVENTS_HS_SCHEDULED_EMAIL_V2 | Email inviate ai server di posta di HubSpot per essere spedite. |
| EVENTS_MTA_DELIVERED_EMAIL_V2 | Email consegnate con successo ai destinatari dai server di posta di HubSpot. |
| EVENTS_MTA_BOUNCED_EMAIL_V2 | Tentativi di consegna delle email che sono stati respinti dal server di posta del destinatario. |
| EVENTS_OPENED_EMAIL_V2 | Aperture delle email da parte dei contatti. |
| EVENTS_REPORTED_SPAM_EMAIL_V2 | Email contrassegnate come spam dai destinatari. |
| EVENTS_UPDATED_EMAIL_SUBSCRIPTION_STATUS_V2 | Modifiche alle iscrizioni alle e-mail da parte dei destinatari. |
| EVENTS_OPENED_TRACKED_INBOX_EMAIL_V8 | Aperture delle e-mail nella Posta in arrivo monitorate dai contatti. |
| EVENTS_MB_MEDIA_PLAYED | Attività di riproduzione video da parte dei contatti. |
| EVENTS_V2_CONTACT_BOOKED_MEETING_THROUGH_SEQUENCE | Il contatto ha prenotato un incontro tramite una sequenza. |
| EVENTS_V2_CONTACT_ENROLLED_IN_SEQUENCE | Il contatto si è iscritto alla sequenza. |
| EVENTS_V2_CONTACT_FINISHED_SEQUENCE | La sequenza è terminata. |
| EVENTS_V2_CONTACT_HA_RISPOSTO_ALL'EMAIL_DELLA_SEQUENZA | Il contatto ha risposto all’e-mail (o all’e-mail in arrivo che ha causato la cancellazione dalla sequenza) inviata tramite la sequenza. |
| EVENTS_V2_CONTACT_UNENROLLED_FROM_SEQUENCE | Il contatto si è disiscritto dalla sequenza. |
| EVENTS_V2_CONTACT_UNENROLLED_MANUALLY_FROM_SEQUENCE | L'utente ha cancellato manualmente il contatto. |
| EVENTS_V2_CONTACT_UNSUBSCRIBED_SEQUENCE_EMAIL | Il contatto si è disiscritto, annullando l'iscrizione alla sequenza. |
| EVENTS_V2_SEQUENCE_EMAIL_BOUNCED | L'email della sequenza è stata respinta. |
| EVENTS_V2_SEQUENCE_ERRORED | Si è verificato un errore nella sequenza che ha causato la cancellazione. |
| EVENTS_V2_SEQUENCE_STEP_EXECUTED | Fase della sequenza eseguita. |
| EVENTS_VISITED_PAGE | Visite alle pagine del sito web da parte dei contatti. |
| EVENTS_<NOME_EVENTO_INTEGRAZIONE>_<IDENTIFICATORE_UNICO> | Eventi di integrazione (API Timeline V3) |
È possibile identificare gli eventi combinando l’ID del tipo di evento e l’ID dell’evento. Le colonne restituite dipendono dall’evento, con una colonna per ogni proprietà dell’evento. Tutti gli eventi restituiranno le seguenti colonne:
Nota bene: HubSpot ha aggiunto due nuove colonne a tutte le tabelle e le viste degli eventi:
occurredatoccurredatdateint
Queste colonne sostituiranno le colonne occuredat ` e occuredatdateint il 24 novembre 2022. A partire da tale data, le vecchie colonne non saranno più disponibili e qualsiasi tentativo di eseguire una query su un oggetto del database o una vista contenente eventi che utilizzi tali colonne fallirà. Scopri di più sulle modifiche sostanziali relative alle condivisioni dati di Snowflake.
| Nome colonna | Tipo | Descrizione |
EVENTTYPEID |
Varchar | L'ID del tipo di evento, simile a OBJECTTYPEID È possibile interrogare tutti gli ID dei tipi di evento presenti nel proprio account utilizzando la vista object_and_event_type_definitions. |
ID |
Varchar | È univoco per ogni tipo di evento. Non esistono due record con lo stesso ID all’interno di un determinato tipo di evento. |
OBJECTTYPEID |
Varchar | Il tipo di oggetto che ha generato l’evento. Ad esempio, un clic su un link contenuto in un’e-mail mostrerebbe0-1 in questa colonna, a indicare l’oggetto “contatti”. |
OBJECTID |
Numero | L'ID del record che ha generato l'evento. |
OCCURREDAT |
Timestamp | Quando si è verificato l'evento. |
|
|
Numero | Un numero che rappresenta il momento in cui si è verificato l'evento. Contiene gli stessi dati della colonna OCCURREDAT, ma formattati come numero e utilizzati come parte della chiave cluster della tabella. Nella maggior parte dei casi, è possibile utilizzare il timestamp OCCURREDAT al posto di questo numero. |
|
|
Numero | Un numero che indica quando si è verificato l'evento. Contiene gli stessi dati della colonna Nota: questa colonna sarà deprecata il 24 novembre 2022 e sostituita con |
OCCUREDAT |
Timestamp | Quando si è verificato l’evento. Nota: questa colonna sarà deprecata il 24 novembre 2022 e sostituita con |
INGESTEDAT |
Timestamp | Data e ora dell'ultima acquisizione dei dati da parte di Snowflake. Ulteriori informazioni sui tipi di dati delle colonne. |
PROPERTY_* |
Varchar | Singole colonne contenenti le proprietà dell’evento. |
Esempio 1
Recupera i 50 eventi di clic sulle e-mail più recenti.
Query:
SELECT eventTypeId, objectTypeId, objectId, occuredAt, property_hs_click_raw_url AS hs_click_raw_urlFROM events_clicked_link_in_email_V2
ORDER BY occuredAt
LIMIT 50;
Risultato:
| EVENTTYPEID | OBJECTTYPEID | ID_OGGETTO | OCCUREDAT | HS_CLICK_RAW_URL |
| 4-666288 | 0-1 | 45318579 | 04/08/2016 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 | 29/08/2016 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 | 30/11/2017 14:27:11.528 | https://hubs.ly/H097a37a?utm_source=hs_email&utm_medium=email&utm_content=58251290 |
| ... | ... | ... | ... | ... |
Esempio 2
Recupera tutti gli eventi di clic nelle email relativi ai contatti che hanno cliccato. Questa query ottiene i dati dei contatti tramite un join con object_with_object_properties.
Query:
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;
Risultati:
| CLICK_TIMESTAMP | URL_CLIC | CONTACT_FIRSTNAME | CONTACT_LASTNAME |
| 4 gennaio 2019, ore 22:35:41.264 | https://help.website.com/articles/tutorial/how-to-use-email-tool?utm_source=hs_automation&utm_medium=email&utm_content=68042217 | Hobbes | Baron |
| 8 novembre 2018, ore 09:37:41.400 | https://www.website.net/webinar-case-study?utm_source=hs_automation&utm_medium=email&utm_content=55200164 | Milo | Gold |
| 8 novembre 2018, ore 09:37:41.426 | https://www.website.net/contact?utm_source=hs_automation&utm_medium=email&utm_content=55200164 | Harlow | Villari |
| ... | ... | ... | ... |
Query_oggetto_e_tipo_di_evento
definizioni_di_oggetti_e_tipi_di_evento
Questo oggetto del database contiene le definizioni di tutti gli oggetti e gli eventi disponibili nel tuo account HubSpot.
Questo oggetto del database può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
OBJECTTYPEID |
Varchar | L'ID dell'oggetto che la pipeline può contenere (ad esempio, trattative o ticket). |
FULLYQUALIFIEDNAME |
Varchar | Il nome dell'oggetto o dell'evento. |
INGESTEDAT |
Timestamp | Data e ora dell'ultima acquisizione dei dati da parte di Snowflake. Ulteriori informazioni sui tipi di dati delle colonne. |
Esempio 1
Recupera tutti gli oggetti e gli eventi disponibili nel tuo account HubSpot.
Query:
SELECT objectTypeId, fullyQualifiedNameFROM object_and_event_type_definitions;
Risultati:
| OBJECTTYPEID | FULLYQUALIFIEDNAME |
| 0-1 | CONTATTO |
| 0-8 | VOCE_DELL'ORDINE |
| 0-11 | CONVERSAZIONE |
| ... | ... |
Query sui segmenti
Di seguito, scopri come eseguire query sui tuoi segmenti, come i segmenti di contatti e aziende disponibili e i record inclusi in tali segmenti.
segmenti
Questo oggetto del database contiene informazioni sui segmenti di contatti e aziende di HubSpot. Restituisce una riga per ogni segmento; le colonne includono dettagli sul segmento quali nome, dimensione e tipo di oggetto dei record in esso contenuti. Non contiene informazioni sui singoli record all’interno di ciascun segmento (vedi segment_membership).
Questo oggetto del database può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
OBJECTTYPEID |
Varchar | Il tipo di record presenti nel segmento (ad es., contatto o azienda). |
SEGMENTID |
Numero | L'ID del segmento. Si collega alla colonnaSEGMENTID nella tabella delle appartenenze ai segmenti. |
CLASSICSEGMENTID |
Numero | Un ID specifico per i segmenti di contatto che corrisponde all'ID presente nell'URL del segmento in HubSpot. |
NAME |
Varchar | Il nome del segmento. |
SIZE |
Numero | Il numero di record nel segmento. |
CREATEDBYUSERID |
Numero | L'ID dell'utente che ha creato il segmento. |
CREATEDAT |
Timestamp | Data e ora di creazione del segmento in HubSpot. |
UPDATEDBYUSERID |
Numero | L'ID dell'utente che ha aggiornato il segmento per ultimo. |
UPDATEDAT |
Timestamp | Data e ora dell'ultimo aggiornamento del dato in HubSpot. Scopri di più sui tipi di dati delle colonne. |
INGESTEDAT |
Timestamp | Data e ora dell'ultima importazione dei dati da parte di Snowflake. |
Esempio 1
Recupera tutti i segmenti di contatti.
Query:
SELECT segmentId, name, sizeFROM segmentsWHERE objectTypeId = '0-1';
Risultato:
| SEGMENTSID | NOME | DIMENSIONE |
| 118131 | Attività di sensibilizzazione settimanale | 103 |
| 66156 | Abbonati al blog | 455 |
| 771.852 | Principali iscritti 2021 | 37 |
| ... | ... | ... |
Esempio 2
Recupera un segmento di contatti specifico denominato " Abbonati principali 2021".
Query:
SELECT segmentId, name, size FROM segmentsWHERE objectTypeId = '0-1'
ANDsegmentName = 'Top subscribers 2021';
Risultati:
| ID SEGMENTO | NOME | DIMENSIONE |
| 771.852 | Principali abbonati 2021 | 37 |
segment_membership
Questo oggetto del database contiene informazioni su quali record appartengono a quali segmenti, con una riga per ogni record presente nel segmento. Ad esempio, se si dispone di un segmento "Abbonati al blog" con 500 contatti, l'oggetto del database restituirà 500 righe.
Contiene solo gli ID dei segmenti e gli ID degli oggetti. Per ulteriori informazioni, eseguire un join con l’oggetto del database "segments".
Questo oggetto del database può restituire le seguenti colonne:
| Nome colonna | Tipo | Descrizione |
SEGMENTID |
Varchar | L'ID del segmento. Si collega alla colonna HS_SEGMENT_ID nella tabella dei segmenti. |
OBJECTID |
Varchar | L'ID del record nel segmento. |
UPDATEDAT |
Timestamp | Data e ora dell'ultimo aggiornamento dei dati in HubSpot. Scopri di più sui tipi di dati delle colonne. |
INGESTEDAT |
Timestamp | Data e ora dell'ultima acquisizione dei dati da parte di Snowflake. |
Esempio 1
Recuperare gli ID di tutti i contatti nel segmento "I migliori iscritti 2021 ".
Query:
SELECT objectIdFROM segment_membershipsINNER JOIN segmentsON segment_memberships.segmentId = segments.segmentIdWHERE segments.objectTypeId = '0-1'AND segments.name = 'Top Subscribers 2021';
Risultato:
| ID OGGETTO |
| 54325098 |
| 96805401 |
| 6922028 |
| ... |
Esempio 2
Recupera il nome e il cognome dei contatti presenti nel segmento "Top subscribers 2021 ".
Query:
SELECT
contact.objectId COME object_id,
contact.properties:firstname::string AS nome,
contact.properties:lastname::string AS lastname
DA oggetto_con_proprietà_dell'oggetto AS contatto
INNER JOIN appartenenza_ai_segmenti AS appartenenza
ON contact.objectId = membership.objectId
INNER JOIN segments
ON membership.segmentId = segments.segmentId
WHERE contact.objectTypeId = '0-1'
AND segments.objectTypeId = '0-1'
E segments.name = 'Abbonati più attivi 2021';
Risultati:
| OBJECTID |
NOME |
COGNOME |
| 54325098 |
Hobbes |
Baron |
| 96805401 |
Milo |
Gold |
| 6922028 |
Henry |
Riley |
| ... |
... |
... |
Domande frequenti
Vorrei generare dati simili a quelli di un report dell’app Hubspot, come posso fare?
In genere, è opportuno esaminare le colonne presenti nel report con cui si sta effettuando il confronto. Se la visualizzazione del report non è tabulare, convertendolo in una tabella sarà possibile visualizzare le colonne contenute nel report. Queste colonne sono solitamente proprietà di un tipo di oggetto o di un tipo di evento. Il passo successivo consiste nell’individuare la proprietà del tipo di oggetto a cui corrisponde una colonna. È possibile farlo eseguendo una query su property_definitions:
SELECT * FROM property_definitions
WHERE label = [column_name]
Potrebbe non esserci sempre una corrispondenza esatta, poiché alcuni nomi di proprietà vengono solitamente risolti in un nome più descrittivo all’interno dell’app. In casi come questo, può essere utile effettuare una ricerca approssimativa utilizzando l’operatore LIKE sulla colonna label (o anche sulla colonna description) in property_definitions.
Dopo aver determinato a quale tipo di oggetto appartiene la colonna, è semplice stabilire cosa interrogare. Eseguire una query object_with_object_properties e filtrare in base all’` objectTypeId ` corrispondente a quel tipo. Leggere i valori delle proprietà necessari dalla colonna JSON delle proprietà.
Come posso collegare questo tipo di dati a un altro? Ad esempio, come posso recuperare i moduli relativi a una campagna?
Per recuperare i moduli associati a ciascuna campagna, esegui un join tra OBJECT_WITH_OBJECT_PROPERTIES, ASSOCIATIONS e ASSOCIATION_DEFINITIONS.
SELECT DISTINCT
campaigns.properties:hs_name::string AS nome_campagna,
forms.properties:hs_form_id::string AS form_id
DA oggetto_con_proprietà_dell'oggetto AS campagne
UNISCI associazioni AS associazione
SU associazione.daObjectId = campagne.objectId
JOIN definizioni_associazioni AS definizione
ON ID_tipo_associazione_combinata_definizione =
associazione.combinedAssociationTypeId
JOIN oggetto_con_proprietà_dell'oggetto AS moduli
ON forms.objectId = association.toObjectId
DOVE campagne.objectTypeId = '0-35'
E forms.objectTypeId = '0-28'
E definizione.daTipoOggetto = '0-35'
E definizione.aID_tipo_oggetto = '0-28';
Come faccio a conoscere lo stato dell’integrazione HubSpot-Snowflake?
Per ricevere aggiornamenti in tempo reale sullo stato dell’integrazione HubSpot-Snowflake, in caso di interruzioni o problemi, esegui una query sulla vista data_share_status:
SELECT * FROM hubspot.public.data_share_status
LIMIT 1
I risultati verranno visualizzati come segue:
| STATO | MESSAGGIO | DATA DI AGGIORNAMENTO |
| OK | NESSUN INCIDENTE SEGNALATO AL MOMENTO | 10/04/2023 09:21:20.123 |
Questa vista fornisce aggiornamenti sullo stato dell’integrazione in ordine cronologico inverso. L’integrazione dei risultati di questa query in una dashboard ti aiuterà a monitorare le prestazioni dell’integrazione e a rilevare eventuali tempi di inattività o interruzioni del servizio.
