Salta al contenuto
Nota bene: la traduzione in italiano di questo articolo è fornita solo per comodità. La traduzione viene creata automaticamente tramite un software di traduzione e potrebbe non essere stata revisionata. Pertanto, la versione inglese di questo articolo deve essere considerata come la versione di governo contenente le informazioni più recenti. È possibile accedervi qui.

Interrogare i dati di HubSpot in Snowflake

Ultimo aggiornamento: 3 settembre 2025

Disponibile con uno qualsiasi dei seguenti abbonamenti, tranne dove indicato:

Dopo aver collegato Snowflake al vostro account HubSpot, potete usare Data Share di Snowflake per interrogare i dati di HubSpot dal vostro account Snowflake.

Data lag e regione dell'account Snowflake

Avrete accesso allo schema V2_LIVE, aggiornato ogni 15 minuti, e allo schema V2_DAILY, aggiornato ogni giorno.

Nota bene: le seguenti viste nello schema V2_LIVE sono aggiornate solo quotidianamente: association_definitions, owners, pipeline e pipeline_stages.

Configurare l'ambiente Snowflake

Per interrogare i dati di HubSpot in Snowflake, è necessario selezionare il magazzino, il database e lo schema da cui si desidera eseguire la query. È possibile impostarli a livello di foglio di lavoro per includerli automaticamente nelle query, oppure aggiungerli manualmente.

Per selezionare il magazzino, il database e lo schema a livello di foglio di lavoro:

  • Nella riga superiore del foglio di lavoro, fate clic sulla barra delle azioni del foglio di lavoro.

    snowflake-worksheet-settings0
  • Nella finestra a comparsa:
    • Fare clic sul menu a discesa Magazzino, quindi selezionare il magazzino.
    • Fare clic sul menu a discesa Database, quindi selezionare il database HubSpot.
    • Fare clic sul menu a discesa Schema e selezionare lo schema che si desidera utilizzare:
        • V2_DAILY: lo schema giornaliero per interrogare i dati in base alle tabelle. I dati in questo schema vengono aggiornati una volta al giorno. L'uso di questo schema consente di ottenere query più veloci ed è consigliato per le query direttamente in Snowflake.
        • V2_LIVE: lo schema live basato su Secure Views dei dati di HubSpot. I dati in questo schema vengono aggiornati ogni 15 minuti. Se si sta interrogando un grande insieme di dati, le query potrebbero essere lente. In questo caso, si consiglia di copiare i dati nella propria tabella con un processo di ETL e di interrogare la tabella.


      snowflake-worksheet-settings-window0

Una volta configurato l'ambiente, è possibile eseguire query sui dati di HubSpot senza dover aggiungere manualmente il tipo di database o di schema alle query.

Per aggiungere manualmente il database e il tipo di schema alle query, aggiungere il nome del database seguito dallo schema all'inizio del campo FROM. Ad esempio:


SELECT objectTypeId, property_createddate
FROM hubspot_share_name.V2_LIVE.objects_deals

LIMIT 1

Schema dati

Le query sono costruite con SQL e possono essere utilizzate per recuperare dati di HubSpot come:

  • 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 agli eventi standard di HubSpot, come le aperture delle e-mail, e agli eventi comportamentali personalizzati.
  • Segmenti: Segmenti di contatti e aziende di HubSpot.
  • Proprietari: utenti dell'account HubSpot, in relazione ai record di cui sono impostati come proprietari.
  • Pipeline: pipeline di deal e ticket, comprese le fasi della pipeline.
  • Proprietà: proprietà e relativi valori dei record CRM, compresa la cronologia delle proprietà.

Per saperne di più sul modello di dati CRM di HubSpot.

Nota bene: con l'evoluzione della condivisione dei dati, verranno introdotte modifiche, alcune delle quali di natura sostanziale. Si consiglia vivamente di iscriversi al registro delle modifiche degli sviluppatori di HubSpot. Queste modifiche saranno sempre pubblicate nel change log prima di qualsiasi aggiornamento.

Limitare e ordinare i dati restituiti

Quando si costruiscono le query, è possibile controllare la quantità di dati restituiti e l'ordine in cui vengono restituiti, includendo LIMIT e ORDER BY nella query. Ad esempio, per interrogare tutti i contatti con le loro proprietà, ma restituendo solo tre risultati e ordinandoli in base all'ID del contatto, si può costruire la query come segue:


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

Tipi di dati delle colonne

Quando si interrogano i dati in Snowflake, le colonne che vengono restituite dipendono dai dati che si stanno interrogando. È possibile visualizzare le colonne disponibili per una determinata tabella o vista in Snowflake selezionando la vista nella barra laterale sinistra.

Nota:per il resto di questo documento, useremo il termine oggetto del database quando il contesto si applica sia alle tabelle che alle viste.

snowflake-sidebar-view-column-details0


Per restituire una colonna specifica, includere tale colonna nel campo SELECT della query. Ad esempio, la seguente query restituisce solo le colonne OBJECTID e UpdatedAt:


SELECT
objectId, updatedAt
FROM objects_contacts

Di seguito sono riportate le definizioni generali delle colonne che una query può restituire. Per altre definizioni non incluse di seguito, vedere le definizioni delle singole viste nell'articolo precedente.

  • OBJECTTYPEID: un valore VARCHAR che rappresenta il tipo di oggetto. Ad esempio, 0-1 rappresenta l'oggetto Contatti, 0-2 rappresenta l'oggetto Aziende e 2-1232 potrebbe rappresentare un oggetto personalizzato nell'account. Nei segmenti, si riferisce al tipo di segmento (ad esempio, contatto o azienda). È possibile interrogare tutti gli ID degli oggetti e degli eventi 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 nell'account HubSpot. Per identificare un record, è necessario utilizzare sia l'ID del tipo di oggetto che l'ID dell'oggetto.
  • INGESTEDAT: il timestamp di quando 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 ingestione di una riga può essere aggiornato anche se nessun'altra colonna della riga è cambiata.
    • Quando si creano processi ETL che copiano dati modificati di recente, si consiglia di basare le query sul timestamp di ingestione. Inoltre, se il flusso copia i dati quotidianamente, si consiglia di copiare i dati dei due giorni precedenti per tenere conto dei ritardi.
  • CREATEDAT e UPDATEDAT: il timestamp logico di quando i dati sono stati creati o aggiornati in HubSpot, rappresentato da un valore TIMESTAMP_NTZ . Questi timestamp corrispondono ai timestamp di HubSpot. Ad esempio, l'ora visualizzata in HubSpot per la data di creazione di un record sarà la stessa del timestamp nella colonna CREATEDAT di Snowflake. Queste proprietà non sono direttamente collegate al timestamp di ingestione e non è consigliabile basare i processi ETL su di esse.
  • COMBINEDASSOCIATIONTYPE: un valore VARCHAR che identifica in modo univoco una definizione di associazione.

Trasformazione dei tipi di dati

A volte, i dati restituiti da una query con colonne VARCHAR sono di tipo diverso. In questi casi, si consiglia di convertire il tipo di dati VARCHAR nei tipi desiderati usando le funzioni di Snowflake. Ad esempio, le proprietà di un record di un oggetto sono memorizzate come tipi di dati VARCHAR nella maggior parte degli oggetti del database, ma a volte contengono valori numerici e datetime. 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 amount

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

Interrogazione di oggetti

Di seguito, scopriremo come interrogare i dati di specifici oggetti e record di HubSpot, insieme ai dati che vengono restituiti.

I dati degli oggetti di diverso tipo sono organizzati e disponibili in due modi:

  • Individuale: Ogni tipo di oggetto è memorizzato nella propria vista e contiene solo record dello stesso tipo di oggetto, ad esempio oggetti_contatti contiene solo record di contatti. Questo elimina la necessità di specificare un objecttypeid durante l'interrogazione. Queste viste sono più facili da interrogare, poiché non è necessario conoscere gli ID degli oggetti. Inoltre, restituiscono i dati in un formato più fruibile, con ogni riga corrispondente a un oggetto e alla versione corrente delle sue proprietà. Se non si verificano query lente, è consigliabile utilizzare queste viste per recuperare i dati degli oggetti. Per saperne di più, vedere le viste Objects_X qui sotto.
  • Combinato: Tutti i record di tutti i tipi di oggetto sono combinati in un unico oggetto del database. Pertanto, quando si esegue una query, è necessario specificare un filtro come "WHERE objectTypeId='0-1'". Ad esempio, è possibile utilizzare i seguenti tipi di oggetto per l'interrogazione:
Nome dell'oggetto OggettoTipoId
Contatti 0-1
Aziende 0-2
Articoli di linea 0-8

Aglioggetti personalizzati viene assegnato un ID al momento della creazione, identificato come 2-unique_ID. Ad esempio, 2-12345. Per saperne di più sulle definizioni di tipo di oggetto e di tipo di evento.

Questi oggetti di database sono generalmente adatti se si vogliono ottenere prestazioni di query migliori di quelle ottenibili con le viste objects_x. Maggiori dettagli in object_with_object_properties, object_properties, objects e object_properties_history.

viste objects_x

In questo oggetto del database, ogni tipo di oggetto disponibile, compresi gli oggetti personalizzati, ha la sua vista specifica e ogni vista contiene solo i record degli oggetti di quel determinato tipo di oggetto. Queste viste sono denominate secondo il formato OGGETTI_<nome del tipo di oggetto>, dove <nome del tipo di oggetto> è l'etichetta della forma plurale del tipo di oggetto(si noti che se il tipo di oggetto non ha una forma plurale, allora <nome del tipo di oggetto> sarà semplicemente l'etichetta della forma singolare del nome del tipo di oggetto concatenata con "S").

Le interrogazioni a questa vista restituiscono una riga per ogni record di un oggetto, con ogni proprietà dell'oggetto disponibile come colonna separata.

Di seguito è riportato l'elenco completo dei tipi di oggetto HubSpot (cioè non personalizzati), una breve descrizione dei dati che rappresentano e le viste corrispondenti:

Tipo di oggetto HubSpot

Tipo di oggettoId

Descrizione dell'oggetto

CONTATTO

0-1

Informazioni sulle persone che interagiscono con la vostra azienda

AZIENDA

0-2

Informazioni su singole aziende o organizzazioni

COMMERCIO

0-3

Dettagli sulle opportunità di guadagno con un contatto o un'azienda

INGAGGIO

0-4

Memorizza i dati delle azioni del CRM, tra cui note, attività, e-mail, riunioni e chiamate.

BIGLIETTO

0-5

Rappresenta le richieste di aiuto o di supporto dei clienti

QUOTE

0-14

Utilizzato per condividere informazioni sui prezzi con potenziali acquirenti.

MODULO_INVIO

0-15

Dettagli per i singoli invii di un modulo HubSpot

LINE_ITEM

0-8

Rappresenta un sottoinsieme di prodotti venduti in un accordo. Quando un prodotto è collegato a un accordo, diventa una voce di linea.

CONVERSAZIONE

0-11

Dettagli dei messaggi in arrivo da più canali.

PAGINA DI ATTERRAGGIO

0-25

Dettagli delle pagine di destinazione

COMPITO

0-27

Memorizza informazioni sulle liste di cose da fare

MODULO

0-28

Utilizzato per raccogliere informazioni sui visitatori e sui contatti

MARKETING_EMAIL

0-29

Dettagli sulle e-mail provenienti dall'hub di marketing

AD_ACCOUNT

0-30

Memorizza informazioni sugli account pubblicitari su Linkedin, Facebook e Google.

AD_CAMPAIGN

0-31

Dettagli sulle campagne pubblicitarie. Una campagna pubblicitaria può contenere uno o più annunci

AD_GROUP

0-32

Raggruppamento logico degli annunci all'interno di una campagna pubblicitaria

ANNUNCIO

0-33

Dettagli sui singoli annunci

CAMPAGNA

0-35

Informazioni sulle attività e sui contenuti di marketing correlati, in modo da poter misurare facilmente l'efficacia delle iniziative di marketing collettive.

SITO_PAGINA

0-38

Dati sulle singole pagine dei vostri siti web

BLOG_POST

0-39

Dati sui post del blog

OGGETTO_SEGMENTO

0-45

Informazioni sui raggruppamenti di record di oggetti in base alle loro proprietà o attività

CHIAMATA

0-48

Chiamate effettuate da altri record del CRM, ad esempio i contatti

FATTURA

0-53

Gestione e sincronizzazione delle fatture con sistemi contabili esterni

MEDIA_BRIDGE

0-57

Informazioni sulle risorse multimediali importate in Hubspot

SEQUENZA

0-58

Una sequenza è una serie di modelli di email mirate e temporizzate per coltivare i contatti nel tempo.

TEMPIO

0-62

Contenuto email salvato che può essere riutilizzato per l'invio di email

DEAL_SPLIT

0-72

Le suddivisioni delle transazioni sono utilizzate per condividere il credito delle transazioni tra più utenti.

DOCUMENTO DI VENDITA

0-83

I documenti di vendita costituiscono una libreria di contenuti per l'intero team che può caricare e condividere documenti con i propri contatti.

INVIO_DI_FEEDBACK

0-19

Memorizza le informazioni inviate a un sondaggio di feedback

ABBONAMENTO

0-69

Le sottoscrizioni contengono i dettagli dei pagamenti ricorrenti

PAGAMENTO COMMERCIALE

0-101

Contiene dati sui fondi raccolti dai clienti



Ogni oggetto del database restituisce le seguenti colonne:

Nome colonna

Tipo

Descrizione

ID OGGETTO

Varchar

L'ID del tipo di oggetto (ad esempio, contatti è 0-1).

OGGETTIVO

Numero

L'ID del record (ad esempio, un record di contatto con un ID di 123752).

AGGIORNATOAT

Timestamp

La data e l'ora dell'ultimo aggiornamento di questo oggetto in HubSpot.

INGESTEDAT

Timestamp

La data e l'ora in cui i dati sono stati ingeriti per l'ultima volta da Snowflake.

PROPRIETÀ_*

Varchar

Singole colonne contenenti l'ultima versione delle proprietà dell'oggetto. Per ogni proprietà dell'oggetto che ha un tipo di data o di numero (come specificato da property_definitions), ci saranno due colonne:

  1. Una colonna contenente il valore della proprietà come stringa. Il nome della colonna sarà property_unparsed_[nome]. Ad esempio, la proprietà dell'oggetto DEAL, deal_amount, avrà la colonna property_unparsed_deal_amount.
  2. Una colonna contenente il valore convertito nel tipo nativo. La colonna avrà il nome property_[name]. Ad esempio, la proprietà dell'oggetto DEAL, deal_amount avrà la colonna property_deal_amount. Si noti che questa colonna conterrà null se la conversione al tipo nativo fallisce a causa di dati non validi.

Esempio 1


Recuperare il nome, il cognome e la fase del ciclo di vita di tutti i contatti.

Query:


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

FROM objects_contact

Restituisce:

OBJECTID

PRIMO NOME

NOME ULTIMO

STAGIONE DI VITA

54325098

Hobbes

Barone

guida

96805401

Milo

Oro

piombo

6922028

Enrico

Riley

piombo

Esempio 2

Recupera il nome e la fase dell'operazione per un massimo di tre operazioni.

Query:


SELECT objectId, property_dealName, property_dealStage,
property_amount AS dealAmount

FROM objects_deals

LIMIT 3

Restituisce:

OGGETTO

NOME_PROPRIETÀ

PROPRIETÀ_FASE

IMPORTO_DELLA_PROPRIETÀ

38960439

Nome dell'affare 1

chiuso

34199

321740651

Offerta di prova 123

14845019

8383663

98392101

Tettoia Pop-Up

chiuso

9309007

Esempio 3

Recupera il nome dell'operazione e la fase delle prime tre operazioni per importo.

Query:

Poiché i dati relativi all'importo dell'affare sono disponibili come tipo di dato numero, possono essere utilizzati per l'ordinamento senza dover effettuare conversioni o casting.


SELECT objectId, property_dealName, property_dealStage,
property_amount AS dealAmount

FROM objects_deals
ORDER BY property_amount DESC
LIMIT 3


Restituzione:

OGGETTO

NOME_PROPRIETÀ

PROPRIETÀ_FASE

IMPORTO_DELLA_PROPRIETÀ

98392101

Baldacchino Pop-Up

chiuso

9309007

321740651

Test Deal 123

14845019

8383663

38960439

Nome dell'affare 1

chiuso

34199

oggetto_con_proprietà_di_oggetto

Questo oggetto database contiene i dati dei record di HubSpot. Le interrogazioni a questo oggetto di 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 Proprietà, che è una colonna Snowflake Variant / JSON.

Questa vista può restituire le seguenti colonne:

Nome della 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 un ID di 123752).
PROPERTIES Variante I valori delle proprietà del record.
UPDATEDAT Timestamp La data e l'ora dell'ultimo aggiornamento del record in HubSpot. Per saperne di più sui tipi di dati delle colonne.
INGESTEDAT Timestamp La data e l'ora in cui i dati sono stati ingeriti per l'ultima volta da Snowflake.

Nota bene: 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, sarà updatedat. Questo per allinearsi al modo in cui i dati datetime sono rappresentati nel resto della condivisione dei dati.

Poiché si tratta di una modifica di rottura, 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 intendono sostituire. Ciò consente di passare all'uso delle nuove colonne.

Dopo 90 giorni, il 25 gennaio 2022, la colonna timestamp verrà rimossa dalla tabella e dalla vista. Dopo questa data, qualsiasi tentativo di interrogare la tabella o la vista object_with_object_properties utilizzando le colonne timestamp fallirà.

Esempio 1

Recuperare tutti i contatti e le loro proprietà.

Interrogazione:


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


Restituisce:

OGGETTOTYPEID OGGETTIVO PROPRIETÀ
0-1 38960439 {"createdate": "1504656970152"...}
0-1 321740651 {"createdate": "1590183081949"...}
0-1 98392101 {"createdate": "1533566477279"...}
... ... ...

Esempio 2

Recupera il nome dell'operazione e la fase di un massimo di tre operazioni.

Query:


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;


Restituisce:

OGGETTIVO NOME DEAL STAGIONE IMPORTO
38960439 Nome dell'affare 1 chiuso 7488939
321740651 Nome dell'affare 1 vinto 9292029
98392101 Nome dell'affare 1 chiuso perso 62626528

oggetti

Questo oggetto di database è un sottoinsieme dei dati dell'oggetto di database object_with_object_properties. Ogni riga restituita riporta l'ID dell'oggetto per ogni record. Questo oggetto di database restituisce solo i record esistenti. Quando un record viene eliminato in HubSpot, viene rimosso da questo oggetto database. Questo oggetto database è un sottoinsieme dei dati della tabella object_with_object_properties. Ogni riga restituita riporta l'ID dell'oggetto per ogni record. Questa vista restituisce solo i record esistenti. Quando un record viene eliminato in HubSpot, viene rimosso da questa vista.

Questo oggetto di database può essere utile se l'account dispone di una grande quantità di dati, per cui le viste object_with_object_properties e objects_x funzionano lentamente. L'uso di questo oggetto database con l'oggetto database object_properties consente di replicare i dati in object_with_object_properties, mantenendo il controllo su quali proprietà vengono restituite.

Questo oggetto database può restituire le seguenti colonne:

Nome della 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 un ID di 123752).
INGESTEDAT Timestamp La data e l'ora dell'ultimo inserimento dei dati da parte di Snowflake. Per saperne di più sui tipi di dati delle colonne.

Esempio 1

Recuperare tutti i record dei contatti.

Query:


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


Restituisce:

OGGETTOTYPEID OGGETTIVO
0-1 36721864
0-1 103580363
0-1 56047670
... ...

oggetto_proprietà

Questo oggetto di database è un sottoinsieme dell'oggetto di database object_with_object_properties. Ogni riga contiene il valore corrente della proprietà impostata 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 ha un valore per una proprietà, la riga apparirà con una stringa vuota o non apparirà affatto.

Questo oggetto di database può restituire le seguenti colonne:

Nome della 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 un ID di 123752).
NAME Varchar Il nome della proprietà.
VALUE Timestamp Il valore della proprietà.
UPDATEDAT Timestamp La data e l'ora dell'ultimo aggiornamento del record in HubSpot. Per saperne di più sui tipi di dati delle colonne.
INGESTEDAT Timestamp La data e l'ora in cui i dati sono stati ingeriti per l'ultima volta da Snowflake.

Esempio 1

Recuperare le proprietà Nome, Cognome e Città per tutti i contatti.

Query:


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


Restituisce:

OGGETTOTYPEID OGGETTIVO NOME 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 Carlo
... ... ... ...

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, 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);

Restituisce:

TIPO DI OGGETTO OGGETTO PRIMO NOME COGNOME STAGIONE DI VITA
0-1 54325098 Hobbes Barone piombo
0-1 96805401 Milo Oro vantaggio
0-1 6922028 Enrico Riley piombo
... ... ... ... ...

oggetto_proprietà_storia

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 attuale di una proprietà è determinato dal timestamp UPDATEDAT più recente nella cronologia della proprietà.

Questo oggetto del database può restituire le seguenti colonne:

Nome della 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 un ID di 123752).
NAME Varchar Il nome della proprietà.
VALUE Timestamp Il valore della proprietà.
UPDATEDAT Timestamp La data e l'ora dell'ultimo aggiornamento dei dati in HubSpot. Per saperne di più sui tipi di dati delle colonne.
INGESTEDAT Timestamp La data e l'ora in cui i dati sono stati ingeriti per l'ultima volta da Snowflake.

Esempio 1

Recuperare la cronologia di una singola proprietà per un singolo contatto.

Query:


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


Restituisce:

OGGETTO NOME VALORE DATA AGGIORNATA

136493192

hs_predictivescoringtier

tier_1

2022-06-22 22:45:05.931

136493192

hs_predictivescoringtier

livello_2

2021-09-18 08:20:56.622

136493192

hs_predictivescoringtier

livello_3

2019-11-31 18:20:22.851

...

...

...

...

Esempio 2

Recuperare il nome attuale di tutti i contatti che hanno avuto una fase del ciclo di vita di Abbonato.

Interrogazione:


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'
);


Restituisce:

OGGETTO PRIMO NOME COGNOME
54325098 Hobbes Barone
96805401 Milo Oro
6922028 Enrico Riley
... ... ...

Query sulle associazioni

Come i dati degli oggetti, i dati delle associazioni sono organizzati in due modi:

  • Individuale: Ogni tipo di associazione è memorizzato nella propria vista e contiene solo i record di quel tipo. Ad esempio, associazioni_contatti_a_contratti contiene solo i record di associazione tra gli oggetti contatto e contratto. Questo elimina la necessità di specificare un associationtypeid durante l'interrogazione. Queste viste sono abbastanza facili da interrogare, poiché non richiedono familiarità con il modello di dati del CRM per essere utilizzate. Inoltre, restituiscono una descrizione arricchita del record di associazione tra due oggetti, che può essere facilmente utilizzata nei join con le viste objects_x. Se non si verificano query lente, è consigliabile utilizzare queste viste per recuperare i dati delle associazioni. Per saperne di più, vedere le viste associations_x_to_y di seguito.
  • Combinato: Tutti i record di tutti i tipi di associazione sono combinati in un unico oggetto del database. Pertanto, quando si esegue una query, è necessario specificare un filtro del tipo "WHERE combinedassociationtypeid='0-32' ". Per saperne di più, vedere le associazioni e le definizioni_di_associazione qui di seguito.

viste associazioni_x_a_y

Ogni tipo di associazione ha una propria vista, etichettata come associazioni_<nome del tipo di associazione>, ad esempio associazioni_contatti_a_commerciali. Ogni vista è un sottoinsieme dei dati dell'oggetto database associazioni e contiene solo i record di uno specifico tipo di associazione combinato.

Ogni oggetto database restituirà le seguenti colonne:

Nome della colonna

Tipo

Descrizione

TIPOASSOCIAZIONE COMBINATAID

Varchar

Identificatore univoco della definizione di associazione.

CATEGORIA DELL'ASSOCIAZIONE

Varchar

L'origine del tipo di associazione. Uno dei seguenti: HUBSPOT_DEFINITO, UTENTE_DEFINITO, INTEGRATORE_DEFINITO

TIPO DI ASSOCIAZIONEID

Varchar

Identificatore univoco di una definizione di associazione all'interno di una specifica categoria di associazione, vale a dire che non esistono due definizioni in una categoria di associazione con lo stesso associationtypeid.

FROMOBJECTTYPEID

Varchar

L'ID dell'oggetto che è l'origine della definizione di associazione.

DAOBJECTTYPE

Varchar

Il nome del tipo di oggetto che è l'origine della definizione di associazione.

TOOBJECTTYPEID

Varchar

L'ID dell'oggetto che è la destinazione della definizione di associazione.

TOOBJECTTYPE

Varchar

Il nome del tipo di oggetto che è la destinazione della definizione di associazione.

NOME

Varchar

Il nome della definizione di associazione.

ETICHETTA

Varchar

La descrizione della definizione di associazione.

ISMAINASSOCIATIONDEFINITION

Booleano

Se la definizione di associazione è il tipo principale. Quando è vero, la definizione è quella che HubSpot visualizza nei record associati.

[Ad esempio, per la vista ASSOCIATIONS_CONTACTS_TO_DEALS, sarà CONTACT_OBJECTID.

Numero

L'ID oggetto dell'oggetto di origine.

[Ad esempio, per la vista ASSOCIAZIONI_CONTATTI_DA_DEALI, sarà DEAL_OBJECTID.

Numero

L'ID oggetto dell'oggetto di destinazione.

INGESTEDAT

Timestamp

La data e l'ora dell'ultimo inserimento dei dati da parte di Snowflake.

Esempio 1

Recuperare tutti gli accordi associati a un contatto specifico.

Query:


SELECT
contact_objectId, deal_objectId

FROM associazioni_contatti_a_affare

DOVE contactId = 6626541373

Restituisce:

CONTATTO_OGGETTO

OBIETTIVO

6626541373

233620335

6626541373

90253678

Esempio 2

Recupera tutti i contatti con sede nel fuso orario di Bogotà e le relative offerte.


SELECT contacts.property_firstname contact_firstname,

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'

NOME_CONTATTO

NOME_CONTATTO

EMAIL DI CONTATTO

TIPO DI AFFARE

IMPORTO

David

Magalhães

dmagalhaes@example.com

newbusiness

74848

Fernanda

Rodrigues

fmoreira@example.com

newbusiness

253530

Esempio 3

Recupera tutti i contatti e la somma totale degli affari conclusi per ciascun contatto.


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

Restituisce:

IMPORTO TOTALE CHIUSO

EMAIL DI CONTATTO

98474793

johndoe@riverview.com

849488

sallymae@longford.com

definizioni_di_associazione

Questo oggetto database contiene informazioni su tutti i tipi di associazione disponibili tra gli oggetti HubSpot, con una riga per tipo di associazione. È possibile unire questo oggetto database con l'oggetto database associations per ottenere informazioni sulle associazioni specifiche del record.

Possono esistere più tipi di associazione tra gli stessi oggetti. Il tipo di associazione principale, che è quello visualizzato in HubSpot quando i record sono associati, utilizza l'associazione dove ISMAINASSOCIATIONDEFINITION è true.

Questo oggetto del database può restituire le seguenti colonne:

Nome della colonna Tipo Descrizione
COMBINEDASSOCIATIONTYPEID Varchar Identificatore univoco della definizione di associazione.
CATEGORY Varchar L'origine del tipo di associazione. Una delle seguenti opzioni: HUBSPOT_DEFINED, USER_DEFINED, INTEGRATOR_DEFINED
ID Numero L'identificatore della definizione di associazione all'interno della sua categoria.
FROMOBJECTTYPEID Varchar L'ID dell'oggetto che è l'origine della definizione di associazione.
TOOBJECTTYPEID Varchar L'ID dell'oggetto che è la destinazione della definizione di associazione.
NAME Varchar Il nome della definizione di associazione.
LABEL Varchar L'etichetta della definizione di associazione.
ISMAINASSOCIATIONDEFINITION Booleano Se la definizione di associazione è il tipo principale. Se è vero, la definizione è quella che HubSpot visualizza sui record associati.
INGESTEDAT Timestamp La data e l'ora in cui i dati sono stati ingeriti per l'ultima volta da Snowflake. Per saperne di più sui tipi di dati delle colonne.

Esempio 1

Recuperare i tipi di associazione disponibili nell'account.

Query:


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


Restituisce:

TIPO DI ASSOCIAZIONE COMBINATA FROMOBJECTTYPEID TOOBJECTTYPEID NOME
0-1 0-1 0-2 CONTATTO_A_AZIENDA
0-2 0-2 0-1 AZIENDA_A_CONTATTO
0-3 0-3 0-1 ACCORDO_A_CONTATTO
0-4 0-1 0-3 CONTATTO_A_CONTATTO
0-5 0-3 0-2 ACCORDO_A_AZIENDA
... ... ... ...

Esempio 2

Recupera i tipi di associazione disponibili tra le transazioni e le aziende.

Query:


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

ORDER BY category, id


Restituisce:

TIPO DI ASSOCIAZIONE COMBINATA DAMOBJECTTYPEID TOOBJECTTYPEID NOME
0-5 0-3 0-2 ACCORDO_A_AZIENDA
0-271 0-3 0-2 ACCORDO_A_A_AZIENDA_PRIMARIA
0-341 0-3 0-2 DEAL_TO_COMAPNY_UNLABELED

associazioni

Questo oggetto del database contiene informazioni sulle associazioni tra record specifici. Ogni riga rappresenta un'associazione tra un oggetto e un altro oggetto. Le righe possono essere presenti in questo oggetto database anche se i record di riferimento sono stati cancellati. È possibile verificare l'esistenza di record mediante un'associazione con la tabella degli oggetti.

Questo oggetto di database può essere utile se il conto ha una grande quantità di dati e le viste associations_x_to_y funzionano lentamente.

Questo oggetto di database può restituire le seguenti colonne:

Nome della colonna Tipo Descrizione
COMBINEDASSOCIATIONTYPEID Varchar Identificatore univoco della definizione di associazione.
FROMOBJECTID Numero L'ID dell'oggetto sorgente.
TOOBJECTID Numero L'ID dell'oggetto di destinazione.
INGESTEDAT Timestamp La data e l'ora dell'ultimo inserimento dei dati da parte di Snowflake. Per saperne di più sui tipi di dati delle colonne.

Esempio 1

Recuperare tutti gli affari e i contatti associati.

Query:


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


Restituisce:

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

Esempio 2

Recuperare tutti i biglietti associati a un contatto specifico (ID contatto: 3005).

Query:


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


Restituisce:

TIPO DI ASSOCIAZIONE COMBINATA DA OGGETTO TOOBJECTID
0-5 6626541373 233620335

Esempio 3

Recupera tutte le offerte associate a un contatto specifico (ID contatto: 4464). Invece di codificare in modo rigido combinedAssociationTypeId, questo esempio si unisce con association_definitions.

Query:


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;


Restituisce:

ASSOCIAZIONE COMBINATA TIPOID FROMOBJECTID AOBJECTID
0-5 6626541373 233620335

Query sui proprietari

proprietari

Questo oggetto del database contiene informazioni sugli utenti dell'account HubSpot. Gli utenti possono essere impostati come proprietari di 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 di database può restituire le seguenti colonne:

Nome della colonna Tipo Descrizione
OWNERID Numero ID proprietario dell'utente.
USERID Numero ID utente dell'utente. Gli utenti con 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 cancellato.
CREATEDAT Timestamp La data e l'ora di creazione dell'utente in HubSpot. Per ulteriori informazioni, vedere i tipi di dati delle colonne.
UPDATEDAT Timestamp Data e ora dell'ultimo aggiornamento dell'utente in HubSpot. Per ulteriori informazioni, vedere i tipi di dati delle colonne.
INGESTEDAT Timestamp La data e l'ora dell'ultimo inserimento 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


Restituisce:

PROPRIETARIO ID UTENTE EMAIL NOME COGNOME
29584574 4621126 233620335 Hobbes Barone
30532717 4874784 3866015468 Pablo Walters
30580321 925511 7132752747 Milo Oro
... ... ... ... ...

Esempio 2

Recuperare un proprietario specifico in base al suo ID proprietario.

Interrogazione:


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


Restituisce:

PROPRIETÀ ID UTENTE MANDATO NOME COGNOME
29584574 4621126 233620335 Hobbes Barone

Esempio 3

Recupera tutti i contatti e i loro proprietari. Questa query unisce i record ai proprietari con object_with_object_properties e la proprietà del contatto 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


Restituisce:

CONTATTO NOME_CONTATTO NOME_CONTATTO ID_PROPRIETARIO_DI_HUBSPOT NOME_PROPRIETARIO NOME_PROPRIETARIO EMAIL DEL PROPRIETARIO
113834202 Riccardo Greenfield 29584574 Hobbes Barone hobbes.b@business.com
53540801 Ford Karl 30241125 Milo Oro milo.g@business.com
... ... ... ... ... ... ...

Query di team

team

I team in HubSpot consentono di organizzare gli utenti in gruppi per scopi organizzativi e di reporting. È possibile avere un team principale e altri team.

Questo oggetto database contiene informazioni sui team dell'account HubSpot.

Questo oggetto di database può restituire le seguenti colonne:

Nome della colonna Tipo Descrizione
TEAMID Numero L'ID della squadra.
NOME SQUADRA Varchar Il nome della squadra.
PARENTTEAMID Numero L'ID della squadra dei genitori.
BAMBINI Array Gli ID delle squadre figlio.
MEMBRI DEL PROPRIETARIO PRIMARIO Varchar Gli ID proprietario dei membri primari della squadra.
MEMBRI SECONDARI Booleano Gli ID del proprietario dei membri secondari del team.
INGESTEDAT Timestamp La data e l'ora in cui i dati sono stati ingeriti per l'ultima volta da Snowflake.

Esempio 1

Recuperare tutti i team.

Query:

SELECT teamId,teamName, primaryOwnerMembers

DAI TEAM

Restituisce:

ID SQUADRA NOME SQUADRA MEMBRI PRINCIPALI
29584574 Sottosquadra [233620335, 1234553]
30532717 Super Squadra [3866015468, 126221873]
3058032 Una squadra [7132752747]

proprietario_team

Questo oggetto di database contiene informazioni su quali proprietari corrispondono a quali team nell'account HubSpot.

Questo oggetto di database può restituire le seguenti colonne:

Nome della colonna Tipo Descrizione
TEAMID Numero L'ID della squadra.
PROPRIETÀ Numero L'ID proprietario dell'utente.
ISTEAMPRIMARY Booleano Se questo team è il team principale per questo proprietario.
INGESTEDAT Timestamp La data e l'ora in cui i dati sono stati ingeriti per l'ultima volta da Snowflake.

Esempio 1

Recuperare tutti i proprietari per un determinato team.

Query:

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

Restituisce

TEAMID NOME SQUADRA ISTEAMPRIMARY
29584574 233620335 VERO
29584574 1234553 VERO

Query sulle pipeline

Di seguito, si spiega come interrogare i dati delle pipeline di deal e ticket, come le pipeline disponibili nel proprio account e le loro fasi.

È possibile unire questi dati con quelli degli oggetti per ottenere una visione completa delle pipeline. Ad esempio, è possibile interrogare le transazioni e le relative pipeline unendo i dati object_deals_view o object_with_object_properties con i dati delle pipeline.

pipeline

Questo oggetto di database contiene informazioni sulle pipeline dei deal e dei ticket presenti nell'account. Ogni riga restituita rappresenta una singola pipeline.

Questa tabella può restituire le seguenti colonne:

Nome della colonna Tipo Descrizione
PIPELINEID Varchar ID della conduttura.
OBJECTTYPEID Varchar L'ID dell'oggetto che la pipeline può contenere (ad esempio, offerte o biglietti).
LABEL Varchar Il nome della pipeline in HubSpot.
DISPLAYORDER Numero L'ordine di visualizzazione della pipeline in HubSpot.
ARCHIVED Booleano Se la pipeline è stata eliminata.
CREATEDAT Timestamp Quando è stata creata la pipeline.
UPDATEDAT Timestamp La data e l'ora dell'ultimo aggiornamento dei dati in HubSpot. Per saperne di più sui tipi di dati delle colonne.
INGESTEDAT Timestamp La data e l'ora in cui i dati sono stati ingeriti per l'ultima volta da Snowflake.

Esempio 1

Recuperare tutte le pipeline di deal disponibili, ordinate in base al loro ordine in HubSpot.

Query:


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


Restituisce:

TIPO DI OGGETTO PIPELINEID ETICHETTA
0-3 1bed503c-37f7-4f51-9d40-7598902673f4 Pipeline di vendita
0-3 12659678 Condotta delle licenze
0-3 75e28846-ad0d-4be2-a027-5e1da6590b98 Nuove attività
... ... ...

Esempio 2

Recupera i deal all'interno di una pipeline specifica. Unisce object_with_object_properties e pipeline.

Interrogazione:


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';


Restituisce:

ID DEAL NOME DEL COMMERCIO NOME TUBO
605140072 Iscrizione globale a Meowmix Pipeline di vendita
605457408 Marchio Friskies Pipeline di vendita
604362473 Costruzione dell'app Fresh Step Pipeline di vendita

Esempio 3

Come nell'esempio 2, recuperare le offerte all'interno di una pipeline specifica. Ma, invece di usare objects_deals nei join, usare object_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';

Restituisce:

ID DEAL

NOME DEAL

NOME PIPELINE

605140072

Iscrizione globale Meowmix

Pipeline di vendita

605457408

Marchio Friskies

Pipeline di vendita

604362473

Costruzione dell'app Fresh Step

Pipeline di vendita

pipeline_stages

Questa vista contiene informazioni sulle singole fasi di una pipeline. Identifica gli stadi combinando l'ID del tipo di oggetto, l'ID della pipeline e l'ID dello stadio. Quando ci si unisce con le pipeline, utilizzare l'ID del tipo di oggetto e l'ID della pipeline.

Questo oggetto di database può restituire le seguenti colonne:

Nome della 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 di visualizzazione della pipeline in HubSpot.
METADATA Variante Una descrizione formattata in JSON della fase, compreso se è aperta o chiusa.
ARCHIVED Booleano Se la fase della pipeline è stata eliminata.
CREATEDAT Timestamp Quando è stato creato lo stadio della pipeline.

Esempio 1

Recuperare le fasi della pipeline per una pipeline di transazioni denominata Pipeline vendite.

Query:


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;


Restituisce:

PIPELINEID STAGEID 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:


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';


Restituisce:

ID DEAL NOME DEAL NOME TUBO NOME_PIPELINE_STAGE
605140072 Iscrizione globale a Meowmix Pipeline di vendita Contratto inviato
605457408 Marchio Friskies Pipeline di vendita Appuntamento fissato
604362473 Costruzione dell'app Fresh Step Pipeline di vendita Contratto firmato
... ... ... ...

Query di proprietà

definizioni_di_proprietà

Questo oggetto del database contiene informazioni sulle proprietà degli oggetti e sugli eventi dell'account HubSpot. Le proprietà degli eventi includono eventi standard, come le aperture e i clic delle e-mail, e proprietà di eventi comportamentali personalizzati. Queste informazioni possono essere utili per definire i valori presenti nei dati object_properties ed 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 della colonna Tipo Descrizione
OBJECTYPEID Varchar 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 di proprietà (ad esempio, stringa, numero, datetime).
FIELDTYPE Varchar Il tipo di campo della proprietà. Definisce la modalità di visualizzazione della proprietà in HubSpot e nei moduli (ad esempio, casella di controllo, selezione).
DISPLAYORDER Numero Ordine di visualizzazione della proprietà.
GROUPNAME Varchar Il nome del gruppo della proprietà.
OPTIONS Variante Per le proprietà enumerative, una matrice delle opzioni della proprietà, compresi gli attributi di ciascuna opzione (ad esempio, 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à Proprietario restituiranno il valore di PROPRIETARIO.
CALCULATED Booleano Se la proprietà è una proprietà calcolata.
EXTERNALOPTIONS Booleano Se le opzioni della proprietà sono definite in un sistema esterno.
HASUNIQUEVALUE Booleano Se i valori della proprietà sono unici. Può essere impostato solo quando si crea una proprietà tramite l'API.
HIDDEN Booleano 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 Se la proprietà è stata creata da HubSpot o da un utente.
ARCHIVED Booleano Se la proprietà è stata eliminata.
CREATEDAT Timestamp La data e l'ora in cui la proprietà è stata creata in HubSpot.
UPDATEDAT Timestamp La data e l'ora dell'ultimo aggiornamento dei dati in HubSpot. Ulteriori informazioni sui tipi di dati delle colonne.
INGESTEDAT Timestamp La data e l'ora in cui i dati sono stati ingeriti per l'ultima volta da Snowflake.

Esempio 1

Recuperare i nomi e le descrizioni di tutte le proprietà dei contatti.

Query:


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


Restituisce:

NOME ETICHETTA DESCRIZIONE
inserito_sql_stage Fase SQL inserita Inizio conteggio giorni fase SQL.
nome_evento_di_conversione
Prima conversione Il primo modulo inviato da questo contatto.
Indirizzo Indirizzo L'indirizzo del contatto.

Query di eventi

Gli eventi comprendono eventi standard di HubSpot ed eventi comportamentali personalizzati. Ogni evento ha un proprio oggetto di database, etichettato come events_eventname.

Nome
EVENTI_INTERAZIONE_AD Dettagli di un annuncio e dei contatti che hanno interagito con esso facendo clic sull'annuncio o inviando un modulo dopo averlo visitato.
EVENTI_AD_METRICHE_IMPORTATE_V0

Dettagli di un annuncio e delle sue metriche di performance.
EVENTI_CHIAMATA_PAROLA_CHIAVE CITATA Dettagli sulle parole chiave menzionate dai partecipanti alle chiamate.
EVENTI_CLICKED_LINK_IN_EMAIL_V2

Link cliccati dai contatti nelle e-mail di marketing.
EVENTI_CLICCATI_COLLEGAMENTO_IN_TRACKED_INBOX_EMAIL_V8 Link cliccati nelle e-mail di Conversations Inbox dai contatti.
EVENTI_COOKIE_BANNER_CLICCATI Contatti che hanno cliccato sui cookie.
EVENTI_COOKIE_BANNER_VISTI Contatti che hanno visualizzato i cookie.
EVENTI_DOCUMENTO_CONDIVISO_V2 Documenti di vendita condivisi con i contatti tramite un link esterno.
EVENTI_DOCUMENTO_VISTO_V2 Documenti di vendita e contatti che li hanno visualizzati aprendo il link esterno.
EVENTI_DOCUMENTO_COMPLETATO_V2 Documenti di vendita e contatti che li hanno chiusi.
EVENTI_HS_SCHEDULED_EMAIL_V2 Email inviate ai server di posta elettronica di HubSpot per essere spedite.
EVENTI_MTA_CONSEGNATI_EMAIL_V2 Email consegnate con successo ai destinatari dai server email di HubSpot.
EVENTI_MTA_BOUNCED_EMAIL_V2 Tentativi di consegna di e-mail che sono stati rifiutati dal server e-mail del destinatario.
EVENTI_APERTI_EMAIL_V2 Aperture di e-mail da parte dei contatti.
EVENTI_RIPORTATI_SPAM_EMAIL_V2 Email contrassegnate come spam dai destinatari.
EVENTI_AGGIORNATI_EMAIL_SOTTOSCRIZIONE_STATO_V2 Modifiche alle iscrizioni alle e-mail da parte dei destinatari.
EVENTI_APERTI_TRACCIATI_INBOX_EMAIL_V8 Apertura delle e-mail di Conservations Inbox da parte dei contatti.
EVENTI_MB_MEDIA_GIOCATI Attività di riproduzione video da parte dei contatti.
EVENTI_V2_CONTATTO_PRENOTATO_RIUNIONE_ATTRAVERSO_SEQUENZA Il contatto ha prenotato una riunione attraverso la sequenza.
EVENTI_V2_CONTATTO_ISCRITTO_ALLA_SEQUENZA Contatto iscritto dalla sequenza.
EVENTI_V2_CONTATTO_FINITO_SEQUENZA Sequenza terminata.
EVENTI_V2_CONTATTO_RISPOSTO_ALLA_SEQUENZA_EMAIL Il contatto ha risposto all'e-mail (o all'e-mail in arrivo che ha disiscritto la sequenza) inviata attraverso la sequenza.
EVENTI_V2_CONTATTO_DISISCRITTO_DA_SEQUENZA Contatto non iscritto alla sequenza.
EVENTI_V2_CONTATTO_DISISCRITTO_MANUALMENTE_DA_SEQUENZA L'utente ha disiscritto manualmente il contatto.
EVENTS_V2_CONTACT_UNSUBSCRIBED_SEQUENCE_EMAIL Il contatto si è cancellato, disiscrivendo la sequenza.
EVENTI_V2_SEQUENZA_EMAIL_RIMBALZATA Email della sequenza respinta.
EVENTI_V2_SEQUENZA_ERRATA Sequenza errata che causa la disiscrizione.
EVENTI_V2_SEQUENZA_FASE_ESEGUITA Fase della sequenza eseguita.
EVENTI_PAGINA_VISITATA Pagine del sito web visitate dai contatti.
EVENTI_<NOME_EVENTO_INTEGRAZIONE>_<IDENTIFICATORE_UNIVOCO> Eventi di integrazione(API Timeline V3)

È possibile identificare gli eventi combinando l'ID del tipo di evento e l'ID. Le colonne che vengono 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:

  • occurredat
  • occurredatdateint

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 i tentativi di interrogare un oggetto o una vista del database contenente eventi che utilizzano tali colonne falliranno. Per saperne di più sui cambiamenti di rotta per le condivisioni di dati Snowflake.



Nome della colonna Tipo Descrizione
EVENTTYPEID Varchar L'ID del tipo di evento, simile a OBJECTTYPEID.
È possibile interrogare tutti gli ID dei tipi di evento nel proprio account utilizzando la vista object_and_event_type_definitions.
ID Varchar È unico 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 completato l'evento. Ad esempio, un clic su un link di posta elettronica visualizzerà 0-1 in questa colonna, che rappresenta l'oggetto Contatti.
OBJECTID Numero L'ID del record che ha completato l'evento.
OCCURREDAT Timestamp Quando si è verificato l'evento.

OCCURREDATDATEINT

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 di OCCURREDAT al posto di questo numero.

OCCUREDATDATEINT

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.

Nota bene: questa colonna sarà deprecata il 24 novembre 2022 e sostituita da OCCURREDATDATEINT.

OCCUREDAT Timestamp

Quando si è verificato l'evento.

Nota bene: questa colonna sarà deprecata il 24 novembre 2022 e sostituita con OCCURREDAT.

INGESTEDAT Timestamp La data e l'ora dell'ultimo inserimento dei dati da parte di Snowflake. Per saperne di più sui tipi di dati delle colonne.
PROPERTY_* Varchar Colonne individuali contenenti le proprietà dell'evento.

Esempio 1

Recuperare i 50 eventi più recenti di clic sulle e-mail.

Query:


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;


Restituisce:

EVENTTYPEID TIPO DI OGGETTO OGGETTIVO OCCORSO 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
... ... ... ... ...

Esempio 2

Recupera tutti gli eventi di clic delle e-mail in base ai contatti che hanno fatto clic. Questa query ottiene i dati dei contatti unendoli 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;


Restituisce:

CLICK_TIMESTAMP URL CLICCA NOME_CONTATTO NOME_CONTATTO
2019-01-04 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 Barone
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 Oro
2018-11-08 09:37:41.426 https://www.website.net/contact?utm_source=hs_automation&utm_medium=email&utm_content=55200164 Harlow Villari
... ... ... ...

Query_di_tipo_di_oggetto_e_di_evento

definizioni_di_oggetto_e_tipo_evento

Questo oggetto di database contiene le definizioni di tutti gli oggetti e gli eventi disponibili nell'account HubSpot.

Questo oggetto di database può restituire le seguenti colonne:

Nome della colonna Tipo Descrizione
OBJECTTYPEID Varchar L'ID dell'oggetto che la pipeline può contenere (ad esempio, offerte o biglietti).
FULLYQUALIFIEDNAME Varchar Il nome dell'oggetto o dell'evento.
INGESTEDAT Timestamp La data e l'ora in cui i dati sono stati ingeriti per l'ultima volta da Snowflake. Per saperne di più sui tipi di dati delle colonne.

Esempio 1

Recuperare tutti gli oggetti e gli eventi disponibili nell'account HubSpot.

Query:


SELECT objectTypeId, fullyQualifiedName
FROM object_and_event_type_definitions;


Restituisce:

TIPO DI OGGETTO NOME COMPLETAMENTE QUALIFICATO
0-1 CONTATTO
0-8 LINEA_ITEM
0-11 CONVERSAZIONE
... ...

Query dei segmenti

Di seguito, si spiega come interrogare i segmenti, ad esempio i segmenti dei contatti e delle aziende disponibili e i record inclusi in tali segmenti.

Segmenti

Questo oggetto di database contiene informazioni sui segmenti dei contatti e delle aziende di HubSpot. Restituisce una riga per ogni segmento e le colonne includono i dettagli del segmento, come il nome del segmento, la dimensione e il tipo di oggetto dei record che contiene. Non contiene informazioni sui singoli record di ciascun segmento (vedere segment_membership).

Questo oggetto di database può restituire le seguenti colonne:

Nome della colonna Tipo Descrizione
OBJECTTYPEID Varchar Il tipo di record del segmento (ad esempio, contatto o azienda).
SEGMENTID Numero L'ID del segmento. Si collega alla colonna SEGMENTID della tabella segment-memberships.
CLASSICSEGMENTID Numero Un ID specifico per i segmenti di contatti che corrisponde all'ID 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 Quando il segmento è stato creato in HubSpot.
UPDATEDBYUSERID Numero L'ID dell'utente che ha aggiornato il segmento più di recente.
UPDATEDAT Timestamp La data e l'ora dell'ultimo aggiornamento in HubSpot. Ulteriori informazioni sui tipi di dati delle colonne.
INGESTEDAT Timestamp La data e l'ora in cui i dati sono stati ingeriti per l'ultima volta da Snowflake.

Esempio 1

Recuperare tutti i segmenti di contatto.

Query:


SELECT segmentId, name, size
FROM segments
WHERE objectTypeId = '0-1';


Restituisce:

SEGMENTIID NOME DIMENSIONE
118131 Raggiungimento settimanale 103
66156 Iscritti al blog 455
771852 Top abbonati 2021 37
... ... ...

Esempio 2

Recuperare un segmento di contatti specifico denominato Top subscribers 2021.

Query:


SELECT segmentId, name, size
FROM segments
WHERE objectTypeId = '0-1'
AND
segmentName = 'Top subscribers 2021';


Restituisce:

SEGMENTID NOME DIMENSIONE
771852 Primi abbonati 2021 37

segmento_membri

Questo oggetto di database contiene informazioni su quali record sono membri di quali segmenti, con una riga per ogni record del segmento. Ad esempio, se si dispone di un segmento Blog subscribers con 500 contatti, l'oggetto database restituirà 500 righe.

Contiene solo gli ID dei segmenti e gli ID degli oggetti. Per ulteriori informazioni, unirsi all'oggetto database Segmenti.

Questo oggetto database può restituire le seguenti colonne:

Nome della colonna Tipo Descrizione
SEGMENTID Varchar ID del segmento. Si collega alla colonna HS_SEGMENT_ID della tabella dei segmenti.
OBJECTID Varchar L'ID del record nel segmento.
UPDATEDAT Timestamp La data e l'ora dell'ultimo aggiornamento dei dati in HubSpot. Ulteriori informazioni sui tipi di dati delle colonne.
INGESTEDAT Timestamp La data e l'ora in cui i dati sono stati ingeriti per l'ultima volta da Snowflake.

Esempio 1

Recuperare gli ID di tutti i contatti del segmento Top subscribers 2021.

Query:


SELECT objectId
FROM segment_memberships
INNER JOIN segments
ON segment_memberships.segmentId = segments.segmentId
WHERE segments.objectTypeId = '0-1'
AND segments.name = 'Top Subscribers 2021';


Restituisce:

OGGETTO
54325098
96805401
6922028
...

Esempio 2

Recuperare i nomi e i cognomi dei contatti nel segmento Top subscribers 2021.

Query:


SELECT

contact.objectId AS objectid,
contact.property_firstname AS firstname,
contact.property_lastname AS lastname
FROM objects_contacts contact
INNER JOIN segment_memberships ON contact.objectId = segment_memberships.objectId
INNER JOIN segments ON segments_memberships.segmentId = segments.segmentId
WHERE segments.objectTypeId = '0-1'
AND segments.name = 'Top Subscribers 2021'


Restituisce:

OGGETTIVO

PRIMO NOME

COGNOME

54325098

Hobbes

Barone

96805401

Milo

Oro

6922028

Enrico

Riley

...

...

...

Domande frequenti

Voglio generare dati simili a quelli di un report dell'app Hubspot, come posso fare?


In generale, è opportuno esaminare le colonne presenti nel report con cui si effettua il confronto. Se la visualizzazione del report non è tabellare, la conversione in tabella mostrerà le colonne contenute nel report. Queste colonne sono solitamente proprietà di un tipo di oggetto o di un tipo di evento. Il passo successivo è capire a quale proprietà del tipo di oggetto corrisponde una colonna. È possibile farlo interrogando property_definitions:


SELECT * FROM property_definitions

WHERE label = [column_name]

Non sempre c'è una corrispondenza esatta, perché alcuni nomi di proprietà vengono solitamente risolti con un nome più descrittivo nell'applicazione. In questi casi, può essere utile fare una ricerca confusa usando l'operatore LIKE sulla colonna label (o anche description) in property_definitions.

Dopo aver determinato a quale tipo di oggetto appartiene la colonna, è banale determinare cosa interrogare. Si può semplicemente cercare la vista object_x che corrisponde al tipo.

Come posso collegare questo tipo di dati a un altro, ad esempio come recuperare i moduli per una campagna?


Se è necessario collegare due o più record diversi tra loro, si può ricorrere alle associazioni. Le associazioni rappresentano le relazioni tra gli oggetti in HubSpot CRM. Tutte le diverse associazioni possibili tra due tipi sono elencate in association_definitions. Nell'esempio precedente, per conoscere tutti i moduli a cui è collegata una campagna, è necessario interrogare 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

Come posso conoscere lo stato dell'integrazione HubSpot-Snowflake?

Per ricevere aggiornamenti in tempo reale sullo stato delle interruzioni e dei problemi dell'integrazione HubSpot-Snowflake, interrogate la vista data_share_status:

SELECT * FROM hubspot.public.data_share_status
LIMIT 1

I risultati saranno visualizzati come:

STATO MESSAGGIO AGGIORNATOAT
OK NESSUN INCIDENTE NOTO AL MOMENTO 2023-04-10 09:21:20.123

Questa vista fornisce aggiornamenti sullo stato dell'integrazione in ordine cronologico inverso. L'integrazione dei risultati di questa query in un dashboard consente di monitorare le prestazioni dell'integrazione e di individuare eventuali tempi di inattività o interruzioni.

L'articolo è stato utile?
Questo modulo viene utilizzato solo per il feedback della documentazione. Scopri come ottenere assistenza con HubSpot.