Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Lettura da HubSpot entità
Prerequisito
Un HubSpot oggetto da cui vorresti leggere. È necessario il nome dell'oggetto, come contatto o attività. Nella tabella seguente sono illustrate le entità supportate per la fonte di sincronizzazione.
Entità supportate per la fonte di sincronizzazione
| Entità | Versione API | Può essere filtrato | Supporta limite | Supporta Ordina per | Supporta Seleziona * | Supporta il partizionamento |
|---|---|---|---|---|---|---|
| Campagne | v1 | No | Sì | No | Sì | No |
| Aziende | v3 | Sì | Sì | Sì | Sì | Sì |
| Contatti | v3 | Sì | Sì | Sì | Sì | Sì |
| Elenchi di contatti | v1 | No | Sì | No | Sì | No |
| Offerte | v3 | Sì | Sì | Sì | Sì | Sì |
| Pipeline CRM (Pipeline delle offerte) | v1 | No | No | No | Sì | No |
| Eventi e-mail | v1 | No | Sì | No | Sì | No |
| Chiamate | v3 | Sì | Sì | Sì | Sì | Sì |
| Note | v3 | Sì | Sì | Sì | Sì | Sì |
| v3 | Sì | Sì | Sì | Sì | Sì | |
| Riunioni | v3 | Sì | Sì | Sì | Sì | Sì |
| Processi | v3 | Sì | Sì | Sì | Sì | Sì |
| Posta elettronica | v3 | Sì | Sì | Sì | Sì | Sì |
| Oggetti personalizzati | v3 | Sì | Sì | Sì | Sì | Sì |
| Moduli | v2 | No | No | No | Sì | No |
| Proprietari | v3 | No | Sì | No | Sì | No |
| Prodotti | v3 | Sì | Sì | Sì | Sì | Sì |
| Ticket | v3 | Sì | Sì | Sì | Sì | Sì |
| Flussi di lavoro | v3 | No | No | No | Sì | No |
| Associations | v4 | Sì | No | No | Sì | No |
| Etichette associazioni | v4 | No | No | No | Sì | No |
Esempio:
hubspot_read = glueContext.create_dynamic_frame.from_options( connection_type="hubspot", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "contact", "API_VERSION": "v3" }
Entità supportate come origine asincrona
| Entità | Versione API | Può essere filtrato | Supporta limite | Supporta Ordina per | Supporta Seleziona * | Supporta il partizionamento |
|---|---|---|---|---|---|---|
| Aziende | v3 | Sì | No | Sì | Sì | No |
| Contatti | v3 | Sì | No | Sì | Sì | No |
| Offerte | v3 | Sì | No | Sì | Sì | No |
| Chiamate | v3 | Sì | No | Sì | Sì | No |
| Note | v3 | Sì | No | Sì | Sì | No |
| v3 | Sì | No | Sì | Sì | No | |
| Riunioni | v3 | Sì | No | Sì | Sì | No |
| Processi | v3 | Sì | No | Sì | Sì | No |
| Posta elettronica | v3 | Sì | No | Sì | Sì | No |
| Oggetti personalizzati | v3 | Sì | No | Sì | Sì | No |
| Prodotti | v3 | Sì | No | Sì | Sì | No |
| Ticket | v3 | Sì | No | Sì | Sì | No |
Esempio:
hubspot_read = glueContext.create_dynamic_frame.from_options( connection_type="hubspot", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "contact", "API_VERSION": "v3", "TRANSFER_MODE": "ASYNC" }
HubSpot dettagli dell'entità e del campo:
HubSpot API v4:
| Entità | Versione API | Campo | Tipo di dati | Operatori supportati |
|---|---|---|---|---|
| Etichetta associazione | v4 | category | Stringa | N/A |
| typeId | Numero intero | N/D | ||
| etichetta | Stringa | N/A | ||
| Associations | from | Struct | N/D | |
| id | Stringa | "=" | ||
| in | List | N/D |
Nota
Per l'Associationsoggetto, per recuperare le associazioni tra due oggetti, è necessario fornire il 'from Id' (l'ID del primo oggetto) tramite un filtro obbligatorio durante la creazione di un lavoro. AWS Glue Se si desidera recuperare associazioni multiple da IDs in quel caso, è necessario fornire più IDs associazioni nella clausola. where Ad esempio: Associations per recuperare i contatti IDs «1» e «151», è necessario fornire un filtro come. where id=1 AND id=151
HubSpot API v3:
| Entità | Campo | Tipo di dati | Operatori supportati |
|---|---|---|---|
| Owner | firstName | Stringa | N/A |
| lastName | Stringa | N/A | |
| createdAt | DateTime | N/D | |
| archived | Booleano | N/D | |
| team | List | N/D | |
| id | Stringa | N/A | |
| userId | Numero intero | N/D | |
| Stringa | N/A | ||
| updatedAt | DateTime | N/D | |
| Flusso di lavoro | nome | Stringa | N/A |
| id | Numero intero | N/D | |
| tipo | Stringa | N/A | |
| enabled | Booleano | N/D | |
| insertedAt | Long | N/D | |
| updatedAt | Long | N/D | |
| contactListIds | Struct | N/D | |
| personaTagIds | List | N/D |
Per le seguenti entità, HubSpot fornisce endpoint per recuperare i metadati in modo dinamico, in modo che il supporto dell'operatore venga acquisito a livello di tipo di dati per ciascuna entità.
Nota
DML_STATUS è un campo virtuale aggiunto a ogni record al runtime per determinarne lo stato (CREATO/AGGIORNATO) in modalità sincrona. L'operatore CONTAINS/LIKE non è supportato nella modalità asincrona.
| Entità | Tipo di dati | Operatori supportati |
|---|---|---|
| Contatti | Numero intero | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| Stringa | "=, !=, LIKE" | |
| Data | N/D | |
| DateTime | "between" | |
| Booleano | "=" | |
| List | N/D | |
| Struct | N/D | |
| Azienda | Numero intero | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| Stringa | "=, !=, LIKE" | |
| Data | N/D | |
| DateTime | "between" | |
| Booleano | "=" | |
| List | N/D | |
| Struct | N/D | |
| Offerta | Numero intero | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| Stringa | "=, !=, LIKE" | |
| Data | N/D | |
| DateTime | "between" | |
| Booleano | "=" | |
| List | N/D | |
| Struct | N/D | |
| Ticket | Numero intero | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| Stringa | "=, !=, LIKE" | |
| Data | N/D | |
| DateTime | "between" | |
| Booleano | "=" | |
| List | N/D | |
| Struct | N/D | |
| Prodotto | Numero intero | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| Stringa | "=, !=, LIKE" | |
| Data | N/D | |
| DateTime | "between" | |
| Booleano | "=" | |
| List | N/D | |
| Struct | N/D | |
| Oggetto personalizzato | Numero intero | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| Stringa | "=, !=, LIKE" | |
| Data | N/D | |
| DateTime | "between" | |
| Booleano | "=" | |
| List | N/D | |
| Struct | N/D | |
| Esegui una chiamata a | Numero intero | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| Stringa | "=, !=, LIKE" | |
| Data | N/D | |
| DateTime | "between" | |
| Booleano | "=" | |
| List | N/D | |
| Struct | N/D | |
| Numero intero | "=, !=, <, >, >=, <=" | |
| Long | "=, !=, <, >, >=, <=" | |
| Stringa | "=, !=, LIKE" | |
| Data | N/D | |
| DateTime | "between" | |
| Booleano | "=" | |
| List | N/D | |
| Struct | N/D | |
| Riunione | Numero intero | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| Stringa | "=, !=, LIKE" | |
| Data | N/D | |
| DateTime | "between" | |
| Booleano | "=" | |
| List | N/D | |
| Struct | N/D | |
| Nota | Numero intero | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| Stringa | "=, !=, LIKE" | |
| Data | N/D | |
| DateTime | "between" | |
| Booleano | "=" | |
| List | N/D | |
| Struct | N/D | |
| Operazione | Numero intero | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| Stringa | "=, !=, LIKE" | |
| Data | N/D | |
| DateTime | "between" | |
| Booleano | "=" | |
| List | N/D | |
| Struct | N/D | |
| Posta elettronica | Numero intero | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| Stringa | "=, !=, LIKE" | |
| Data | N/D | |
| DateTime | "between" | |
| Booleano | "=" | |
| List | N/D | |
| Struct | N/D |
HubSpot API v2:
| Entità | Campo | Tipo di dati | Operatori supportati |
|---|---|---|---|
| Modulo | portalId | Numero intero | N/D |
| guid | Stringa | N/A | |
| nome | Stringa | N/A | |
| metodo | Stringa | N/A | |
| cssClass | Stringa | N/A | |
| redirect | Stringa | N/A | |
| submitText | Stringa | N/A | |
| notifyRecipients | Stringa | N/A | |
| createdAt | Long | N/D | |
| updatedAt | Long | N/D | |
| ignoreCurrentValues | Booleano | N/D | |
| deletable | Booleano | N/D | |
| inlineMessage | Booleano | N/D | |
| captchaEnabled | Booleano | N/D | |
| cloneable | Booleano | N/D | |
| formFieldGroups | List | N/D | |
| editable | Booleano | N/D | |
| deletedAt | Numero intero | N/D | |
| themeName | Stringa | N/A | |
| parentId | Numero intero | N/D | |
| stile | Stringa | N/A | |
| isPublished | Booleano | N/D | |
| publishAt | Numero intero | N/D | |
| unpublishAt | Numero intero | N/D | |
| publishedAt | Numero intero | N/D | |
| kickbackEmailWorkflowId | Stringa | N/A | |
| kickbackEmailsJson | Numero intero | N/D | |
| customUid | Stringa | N/A | |
| createMarketableContact | Booleano | N/D | |
| editVersion | Numero intero | N/D | |
| thankYouMessageJson | Stringa | N/A | |
| themeColor | Stringa | N/A | |
| alwaysCreateNewCompagnia | Booleano | N/D | |
| internalUpdatedAt | Long | N/D | |
| businessUnitId | Numero intero | N/D | |
| portableKey | Stringa | N/A | |
| paymentSessionTemplateIds | List | N/D | |
| selectedExternalOptions | List | N/D |
HubSpot API v1:
| Entità | Campo | Tipo di dati | Operatori supportati |
|---|---|---|---|
| Campagna | id | Numero intero | N/D |
| appId | Numero intero | N/D | |
| appName | Stringa | N/A | |
| lastUpdatedTime | Long | N/D | |
| Contact_List | dynamic | Booleano | N/D |
| nome | Stringa | N/A | |
| portalId | Numero intero | N/D | |
| createdAt | Long | N/D | |
| listId | Numero intero | N/D | |
| updatedAt | Long | N/D | |
| ListType | Stringa | N/A | |
| filtri | List | N/D | |
| authorId | Numero intero | N/D | |
| metaData | Struct | N/D | |
| archived | Booleano | N/D | |
| ilsFilterBranch | Stringa | N/A | |
| filterIds | List | N/D | |
| limitExempt | Booleano | N/D | |
| internal | Booleano | N/D | |
| readOnly | Booleano | N/D | |
| parentId | Numero intero | N/D | |
| Email_Event | id | Stringa | N/A |
| tipo | Stringa | N/A | |
| recipient | Stringa | N/A | |
| portalId | Numero intero | N/D | |
| appId | Numero intero | N/D | |
| appName | Stringa | N/A | |
| emailCampaignId | Long | N/D | |
| attempt | Numero intero | N/D | |
| created | Long | N/D | |
| sentBy | Struct | N/D | |
| smtpId | Stringa | N/A | |
| risposta | Stringa | N/A | |
| subject | Stringa | N/A | |
| cc | List | N/D | |
| bcc | List | N/D | |
| replyTo | List | N/D | |
| from | Stringa | N/A | |
| dropReason | Stringa | N/A | |
| dropMessage | Stringa | N/A | |
| browser | Struct | N/D | |
| userAgent | Stringa | N/A | |
| durata | Long | N/D | |
| location | Struct | N/D | |
| filteredEvent | Booleano | N/D | |
| deviceType | Stringa | N/A | |
| suppressedReason | Stringa | N/A | |
| suppressedMessage | Stringa | N/A | |
| CRM_Pipeline | pipelineId | Stringa | N/A |
| createdAt | Long | N/D | |
| updatedAt | Long | N/D | |
| objectType | Stringa | N/A | |
| etichetta | Stringa | N/A | |
| displayOrder | Numero intero | N/D | |
| attiva | Booleano | N/D | |
| fasi | List | N/D | |
| objectTypeId | Stringa | N/A | |
| default | Booleano | N/D |
Query di partizionamento
Puoi fornire le opzioni Spark aggiuntive PARTITION_FIELD, LOWER_BOUND, UPPER_BOUND e NUM_PARTITIONS se desideri utilizzare la concorrenza in Spark. Con questi parametri, la query originale viene suddivisa in NUM_PARTITIONS query secondarie che possono essere eseguite contemporaneamente dalle attività Spark.
PARTITION_FIELD: il nome del campo da utilizzare per partizionare la query.LOWER_BOUND: un valore limite inferiore inclusivo del campo di partizione scelto.Per il DateTime campo, accettiamo il valore in formato ISO.
Esempi di valori validi:
“2024-01-01T10:00:00.115Z"UPPER_BOUND: un valore limite superiore esclusivo del campo di partizione scelto.NUM_PARTITIONS: il numero di partizioni.
Nella seguente tabella sono descritti i dettagli del campo di supporto del partizionamento delle entità:
| Nome dell'entità | Campi di partizionamento | Tipo di dati |
|---|---|---|
| contact | hs_object_id | Long |
| createdate, lastmodifieddate | DateTime | |
| company | hs_object_id | Long |
| createdate, hs_lastmodifieddate | DateTime | |
| offerta | hs_object_id | Long |
| createdate, hs_createdate, hs_lastmodifieddate | DateTime | |
| ticket | hs_object_id | Long |
| createdate, hs_lastmodifieddate | DateTime | |
| product | hs_object_id | Long |
| createdate, hs_lastmodifieddate | DateTime | |
| custom_object | hs_object_id | Long |
| createdate, hs_lastmodifieddate | DateTime | |
| call | hs_object_id | Long |
| createdate, hs_lastmodifieddate | DateTime | |
| hs_object_id | Long | |
| createdate, hs_lastmodifieddate | DateTime | |
| meeting | hs_object_id | Long |
| createdate, hs_lastmodifieddate | DateTime | |
| note | hs_object_id | Long |
| createdate, hs_lastmodifieddate | DateTime | |
| task | hs_object_id | Long |
| createdate, hs_lastmodifieddate | DateTime | |
| postal_mail | hs_object_id | Long |
| createdate, hs_lastmodifieddate | DateTime |
Esempio:
hubspot_read = glueContext.create_dynamic_frame.from_options( connection_type="hubspot", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "company", "API_VERSION": "v3", "PARTITION_FIELD": "hs_object_id" "LOWER_BOUND": "50" "UPPER_BOUND": "16726619290" "NUM_PARTITIONS": "10" }