Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Lecture à partir d' HubSpot entités
Prérequis
Un HubSpot objet que vous aimeriez lire. Vous aurez besoin du nom de l’objet, comme contact ou task. Le tableau suivant présente les entités prises en charge pour la source de synchronisation.
Entités prises en charge pour la source de synchronisation
| Entité | Version de l’API | Peut être filtré | Limit prise en charge | Order by prise en charge | Select prise en charge* | Partitionnement pris en charge |
|---|---|---|---|---|---|---|
| Campagnes | v1 | Non | Oui | Non | Oui | Non |
| Companies | v3 | Oui | Oui | Oui | Oui | Oui |
| Contacts | v3 | Oui | Oui | Oui | Oui | Oui |
| Contact Lists | v1 | Non | Oui | Non | Oui | Non |
| Deals | v3 | Oui | Oui | Oui | Oui | Oui |
| CRM Pipeline (Deal Pipelines) | v1 | Non | Non | Non | Oui | Non |
| Événements d'e-mail | v1 | Non | Oui | Non | Oui | Non |
| Appels | v3 | Oui | Oui | Oui | Oui | Oui |
| Remarques | v3 | Oui | Oui | Oui | Oui | Oui |
| Emails | v3 | Oui | Oui | Oui | Oui | Oui |
| Meetings | v3 | Oui | Oui | Oui | Oui | Oui |
| Tâches | v3 | Oui | Oui | Oui | Oui | Oui |
| Postal Mails | v3 | Oui | Oui | Oui | Oui | Oui |
| Custom Objects | v3 | Oui | Oui | Oui | Oui | Oui |
| Forms | v2 | Non | Non | Non | Oui | Non |
| Owners | v3 | Non | Oui | Non | Oui | Non |
| Produits | v3 | Oui | Oui | Oui | Oui | Oui |
| Tickets | v3 | Oui | Oui | Oui | Oui | Oui |
| Flux de travail | v3 | Non | Non | Non | Oui | Non |
| Associations | v4 | Oui | Non | Non | Oui | Non |
| Associations Labels | v4 | Non | Non | Non | Oui | Non |
Exemple :
hubspot_read = glueContext.create_dynamic_frame.from_options( connection_type="hubspot", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "contact", "API_VERSION": "v3" }
Entités prises en charge pour la source asynchrone
| Entité | Version de l’API | Peut être filtré | Limit prise en charge | Order by prise en charge | Select prise en charge* | Partitionnement pris en charge |
|---|---|---|---|---|---|---|
| Companies | v3 | Oui | Non | Oui | Oui | Non |
| Contacts | v3 | Oui | Non | Oui | Oui | Non |
| Deals | v3 | Oui | Non | Oui | Oui | Non |
| Appels | v3 | Oui | Non | Oui | Oui | Non |
| Remarques | v3 | Oui | Non | Oui | Oui | Non |
| Emails | v3 | Oui | Non | Oui | Oui | Non |
| Meetings | v3 | Oui | Non | Oui | Oui | Non |
| Tâches | v3 | Oui | Non | Oui | Oui | Non |
| Postal Mails | v3 | Oui | Non | Oui | Oui | Non |
| Custom Objects | v3 | Oui | Non | Oui | Oui | Non |
| Produits | v3 | Oui | Non | Oui | Oui | Non |
| Tickets | v3 | Oui | Non | Oui | Oui | Non |
Exemple :
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 détails de l'entité et du champ :
HubSpot API v4 :
| Entité | Version de l’API | Champ | Type de données | Opérateurs pris en charge |
|---|---|---|---|---|
| Associations Label | v4 | category | String | N/A |
| typeId (IDtype) | Entier | N/A | ||
| étiquette | String | N/A | ||
| Associations | from | Struct | N/A | |
| id | String | "=" | ||
| to | List | N/A |
Note
Pour l'Associationsobjet, pour récupérer les associations entre deux objets, vous devez fournir le « from Id » (l'ID du premier objet) via un filtre obligatoire lors de la création d'une tâche. AWS Glue Si vous souhaitez récupérer des associations pour plusieurs IDs dans ce cas, vous devez en fournir plusieurs IDs dans la where clause. Par exemple : pour récupérer Associations les contacts IDs « 1 » et « 151 », vous devez fournir un filtre sous where id=1 AND id=151 la forme.
HubSpot API version 3 :
| Entité | Champ | Type de données | Opérateurs pris en charge |
|---|---|---|---|
| Propriétaire | firstName | String | N/A |
| lastName | String | N/A | |
| createdAt | DateTime | N/A | |
| archived | Booléen | N/A | |
| teams | List | N/A | |
| id | String | N/A | |
| userId | Entier | N/A | |
| String | N/A | ||
| updatedAt | DateTime | N/A | |
| Flux de travail | name | String | N/A |
| id | Entier | N/A | |
| type | String | N/A | |
| enabled | Booléen | N/A | |
| insertedAt | Long | N/A | |
| updatedAt | Long | N/A | |
| contactListIds | Struct | N/A | |
| personaTagIds | List | N/A |
Pour les entités suivantes, HubSpot fournit des points de terminaison permettant de récupérer les métadonnées de manière dynamique, afin que le support des opérateurs soit capturé au niveau du type de données pour chaque entité.
Note
DML_STATUS est un champ virtuel ajouté à chaque enregistrement lors de l’exécution afin de déterminer son état (CRÉÉ/MIS À JOUR) en mode de synchronisation. L’opérateur CONTAINS/LIKE n’est pas pris en charge en mode asynchrone.
| Entité | Type de données | Opérateurs pris en charge |
|---|---|---|
| Contact | Entier | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| String | « =, !=, LIKE » | |
| Date | N/A | |
| DateTime | « between » | |
| Booléen | "=" | |
| List | N/A | |
| Struct | N/A | |
| Société | Entier | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| String | « =, !=, LIKE » | |
| Date | N/A | |
| DateTime | « between » | |
| Booléen | "=" | |
| List | N/A | |
| Struct | N/A | |
| Deal | Entier | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| String | « =, !=, LIKE » | |
| Date | N/A | |
| DateTime | « between » | |
| Booléen | "=" | |
| List | N/A | |
| Struct | N/A | |
| Ticket | Entier | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| String | « =, !=, LIKE » | |
| Date | N/A | |
| DateTime | « between » | |
| Booléen | "=" | |
| List | N/A | |
| Struct | N/A | |
| Produit (langue française non garantie) | Entier | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| String | « =, !=, LIKE » | |
| Date | N/A | |
| DateTime | « between » | |
| Booléen | "=" | |
| List | N/A | |
| Struct | N/A | |
| Custom Object | Entier | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| String | « =, !=, LIKE » | |
| Date | N/A | |
| DateTime | « between » | |
| Booléen | "=" | |
| List | N/A | |
| Struct | N/A | |
| Appelez | Entier | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| String | « =, !=, LIKE » | |
| Date | N/A | |
| DateTime | « between » | |
| Booléen | "=" | |
| List | N/A | |
| Struct | N/A | |
| Entier | "=, !=, <, >, >=, <=" | |
| Long | "=, !=, <, >, >=, <=" | |
| String | « =, !=, LIKE » | |
| Date | N/A | |
| DateTime | « between » | |
| Booléen | "=" | |
| List | N/A | |
| Struct | N/A | |
| Réunion | Entier | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| String | « =, !=, LIKE » | |
| Date | N/A | |
| DateTime | « between » | |
| Booléen | "=" | |
| List | N/A | |
| Struct | N/A | |
| Remarque | Entier | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| String | « =, !=, LIKE » | |
| Date | N/A | |
| DateTime | « between » | |
| Booléen | "=" | |
| List | N/A | |
| Struct | N/A | |
| Sous-tâche | Entier | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| String | « =, !=, LIKE » | |
| Date | N/A | |
| DateTime | « between » | |
| Booléen | "=" | |
| List | N/A | |
| Struct | N/A | |
| Postal Mail | Entier | "=, !=, <, >, >=, <=" |
| Long | "=, !=, <, >, >=, <=" | |
| String | « =, !=, LIKE » | |
| Date | N/A | |
| DateTime | « between » | |
| Booléen | "=" | |
| List | N/A | |
| Struct | N/A |
HubSpot API v2 :
| Entité | Champ | Type de données | Opérateurs pris en charge |
|---|---|---|---|
| Formulaire | portalId | Entier | N/A |
| guid | String | N/A | |
| name | String | N/A | |
| méthode | String | N/A | |
| cssClass | String | N/A | |
| redirect | String | N/A | |
| submitText | String | N/A | |
| notifyRecipients | String | N/A | |
| createdAt | Long | N/A | |
| updatedAt | Long | N/A | |
| ignoreCurrentValues | Booléen | N/A | |
| deletable | Booléen | N/A | |
| inlineMessage | Booléen | N/A | |
| captchaEnabled | Booléen | N/A | |
| cloneable | Booléen | N/A | |
| formFieldGroups | List | N/A | |
| editable | Booléen | N/A | |
| deletedAt | Entier | N/A | |
| themeName | String | N/A | |
| parentId | Entier | N/A | |
| style | String | N/A | |
| isPublished | Booléen | N/A | |
| publishAt | Entier | N/A | |
| unpublishAt | Entier | N/A | |
| publishedAt | Entier | N/A | |
| kickbackEmailWorkflowId | String | N/A | |
| kickbackEmailsJson | Entier | N/A | |
| customUid | String | N/A | |
| createMarketableContact | Booléen | N/A | |
| editVersion | Entier | N/A | |
| thankYouMessageJason | String | N/A | |
| themeColor | String | N/A | |
| alwaysCreateNewEntreprise | Booléen | N/A | |
| internalUpdatedAt | Long | N/A | |
| businessUnitId | Entier | N/A | |
| portableKey | String | N/A | |
| paymentSessionTemplateIdentifiants | List | N/A | |
| selectedExternalOptions | List | N/A |
HubSpot API v1 :
| Entité | Champ | Type de données | Opérateurs pris en charge |
|---|---|---|---|
| Campaign | id | Entier | N/A |
| appId | Entier | N/A | |
| appName | String | N/A | |
| lastUpdatedTime | Long | N/A | |
| Contact_List | dynamic | Booléen | N/A |
| name | String | N/A | |
| portalId | Entier | N/A | |
| createdAt | Long | N/A | |
| listId | Entier | N/A | |
| updatedAt | Long | N/A | |
| ListType | String | N/A | |
| filtres | List | N/A | |
| authorId | Entier | N/A | |
| metaData | Struct | N/A | |
| archived | Booléen | N/A | |
| ilsFilterBranch | String | N/A | |
| filterIds | List | N/A | |
| limitExempt | Booléen | N/A | |
| internal | Booléen | N/A | |
| readOnly | Booléen | N/A | |
| parentId | Entier | N/A | |
| Email_Event | id | String | N/A |
| type | String | N/A | |
| destinataire | String | N/A | |
| portalId | Entier | N/A | |
| appId | Entier | N/A | |
| appName | String | N/A | |
| emailCampaignId | Long | N/A | |
| attempt | Entier | N/A | |
| créé | Long | N/A | |
| sentBy | Struct | N/A | |
| smtpId | String | N/A | |
| response | String | N/A | |
| subject | String | N/A | |
| cc | List | N/A | |
| bcc | List | N/A | |
| replyTo | List | N/A | |
| from | String | N/A | |
| dropReason | String | N/A | |
| dropMessage | String | N/A | |
| browser | Struct | N/A | |
| userAgent | String | N/A | |
| duration | Long | N/A | |
| location | Struct | N/A | |
| filteredEvent | Booléen | N/A | |
| deviceType | String | N/A | |
| suppressedReason | String | N/A | |
| suppressedMessage | String | N/A | |
| CRM_Pipeline | pipelineId | String | N/A |
| createdAt | Long | N/A | |
| updatedAt | Long | N/A | |
| objectType | String | N/A | |
| étiquette | String | N/A | |
| displayOrder | Entier | N/A | |
| actif | Booléen | N/A | |
| étapes | List | N/A | |
| objectTypeId | String | N/A | |
| default | Booléen | N/A |
Requêtes de partitionnement
Vous pouvez indiquer les options Spark supplémentaires PARTITION_FIELD, LOWER_BOUND, UPPER_BOUND et NUM_PARTITIONS si vous souhaitez utiliser la simultanéité dans Spark. Avec ces paramètres, la requête d’origine serait divisée en NUM_PARTITIONS nombres de sous-requêtes pouvant être exécutées simultanément par les tâches Spark.
PARTITION_FIELD: le nom du champ à utiliser pour partitionner la requête.LOWER_BOUND: une valeur limite inférieure inclusive du champ de partition choisi.Pour le DateTime champ, nous acceptons la valeur au format ISO.
Exemples de valeurs valides :
“2024-01-01T10:00:00.115Z"UPPER_BOUND: une valeur limite supérieure exclusive du champ de partition choisi.NUM_PARTITIONS: le nombre de partitions.
Le tableau suivant décrit les détails de prise en charge dans les champs de partitionnement d’entités :
| Nom de l'entité | Champs de partitionnement | Type de données |
|---|---|---|
| contact | hs_object_id | Long |
| createdate, lastmodifieddate | DateTime | |
| company | hs_object_id | Long |
| createdate, hs_lastmodifieddate | DateTime | |
| deal | 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 | |
| appel | 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 | |
| tâche | hs_object_id | Long |
| createdate, hs_lastmodifieddate | DateTime | |
| postal_mail | hs_object_id | Long |
| createdate, hs_lastmodifieddate | DateTime |
Exemple :
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" }