Lesen aus HubSpot-Entitäten - AWS Glue

Lesen aus HubSpot-Entitäten

Voraussetzung

Ein HubSpot-Objekt, aus dem gelesen werden soll. Sie benötigen den Objektnamen wie Kontakt oder Aufgabe. Die folgenden Tabellen zeigen die unterstützten Entitäten für die synchrone Quelle.

Unterstützte Entitäten für synchrone Quelle

Entität API-Version Kann gefiltert werden Unterstützt Limit Unterstützt „Sortieren nach“ Unterstützt „* auswählen“ Unterstützt Partitionierung
Kampagnen v1 Nein Ja Nein Ja Nein
Unternehmen v3 Ja Ja Ja Ja Ja
Kontakte v3 Ja Ja Ja Ja Ja
Kontaktlisten v1 Nein Ja Nein Ja Nein
Angebote v3 Ja Ja Ja Ja Ja
CRM-Pipeline (Angebots-Pipelines) v1 Nein Nein Nein Ja Nein
E-Mail-Ereignisse v1 Nein Ja Nein Ja Nein
Calls v3 Ja Ja Ja Ja Ja
Hinweise v3 Ja Ja Ja Ja Ja
E-Mails v3 Ja Ja Ja Ja Ja
Meetings v3 Ja Ja Ja Ja Ja
Aufgaben v3 Ja Ja Ja Ja Ja
Briefe v3 Ja Ja Ja Ja Ja
Benutzerdefinierte Objekte v3 Ja Ja Ja Ja Ja
Formulare v2 Nein Nein Nein Ja Nein
Eigentümer v3 Nein Ja Nein Ja Nein
Produkte v3 Ja Ja Ja Ja Ja
Tickets v3 Ja Ja Ja Ja Ja
Workflows v3 Nein Nein Nein Ja Nein
Zuordnungen v4 Ja Nein Nein Ja Nein
Bezeichnung für Zuordnungen v4 Nein Nein Nein Ja Nein

Beispiel:

hubspot_read = glueContext.create_dynamic_frame.from_options( connection_type="hubspot", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "contact", "API_VERSION": "v3" }

Unterstützte Entitäten für asynchrone Quelle

Entität API-Version Kann gefiltert werden Unterstützt Limit Unterstützt „Sortieren nach“ Unterstützt „* auswählen“ Unterstützt Partitionierung
Unternehmen v3 Ja Nein Ja Ja Nein
Kontakte v3 Ja Nein Ja Ja Nein
Angebote v3 Ja Nein Ja Ja Nein
Calls v3 Ja Nein Ja Ja Nein
Hinweise v3 Ja Nein Ja Ja Nein
E-Mails v3 Ja Nein Ja Ja Nein
Meetings v3 Ja Nein Ja Ja Nein
Aufgaben v3 Ja Nein Ja Ja Nein
Briefe v3 Ja Nein Ja Ja Nein
Benutzerdefinierte Objekte v3 Ja Nein Ja Ja Nein
Produkte v3 Ja Nein Ja Ja Nein
Tickets v3 Ja Nein Ja Ja Nein

Beispiel:

hubspot_read = glueContext.create_dynamic_frame.from_options( connection_type="hubspot", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "contact", "API_VERSION": "v3", "TRANSFER_MODE": "ASYNC" }

Angaben zur HubSpot-Entität und zum Feld:

HubSpot-API v4:

Entität API-Version Feld Datentyp Unterstützte Operatoren
Zuordnungsbezeichnung v4 Kategorie String N/A
typeId Ganzzahl N/A
Bezeichnung String N/A
Zuordnungen from Struct N/A
id String "="
to Auflisten N/A
Anmerkung

Für das Associations-Objekt müssen Sie, um Zuordnungen zwischen zwei Objekten abzurufen, bei der Erstellung eines AWS Glue-Auftrags die „from Id” (die ID des ersten Objekts) über einen obligatorischen Filter angeben. Wenn Sie in diesem Fall Zuordnungen für mehrere from-IDs abrufen möchten, müssen Sie in der where-Klausel mehrere IDs angeben. Beispiel: Um Associations für die Kontakt-IDs „1“ und „151“ abzurufen, müssen Sie einen Filter als where id=1 AND id=151 angeben.

HubSpot-API v3:

Entität Feld Datentyp Unterstützte Operatoren
Eigentümer firstName String N/A
lastName String N/A
createdAt DateTime N/A
archived Boolesch N/A
Teams Auflisten N/A
id String N/A
userId Ganzzahl N/A
email String N/A
updatedAt DateTime N/A
Workflow Name String N/A
id Ganzzahl N/A
Typ String N/A
aktiviert Boolesch N/A
insertedAt Long N/A
updatedAt Long N/A
contactListIds Struct N/A
personaTagIds Auflisten N/A

Für die folgenden Entitäten stellt HubSpot Endpunkte zum dynamischen Abrufen von Metadaten bereit, sodass die Operatorunterstützung auf Datentypebene für jede Entität erfasst wird.

Anmerkung

DML_STATUS ist ein virtuelles Feld, das jedem Datensatz zur Laufzeit hinzugefügt wird, um den Status (ERSTELLT/AKTUALISIERT) im synchronen Modus zu bestimmen. Der CONTAINS/LIKE-Operator wird im asynchronen Modus nicht unterstützt.

Entität Datentyp Unterstützte Operatoren
Kontakt Ganzzahl "=, !=, <, >, >=, <="
Long "=, !=, <, >, >=, <="
String "=, !=, LIKE"
Datum N/A
DateTime "between"
Boolesch "="
Auflisten N/A
Struct N/A
Unternehmen Ganzzahl "=, !=, <, >, >=, <="
Long "=, !=, <, >, >=, <="
String "=, !=, LIKE"
Datum N/A
DateTime "between"
Boolesch "="
Auflisten N/A
Struct N/A
Angebot Ganzzahl "=, !=, <, >, >=, <="
Long "=, !=, <, >, >=, <="
String "=, !=, LIKE"
Datum N/A
DateTime "between"
Boolesch "="
Auflisten N/A
Struct N/A
Ticket Ganzzahl "=, !=, <, >, >=, <="
Long "=, !=, <, >, >=, <="
String "=, !=, LIKE"
Datum N/A
DateTime "between"
Boolesch "="
Auflisten N/A
Struct N/A
Produkt Ganzzahl "=, !=, <, >, >=, <="
Long "=, !=, <, >, >=, <="
String "=, !=, LIKE"
Datum N/A
DateTime "between"
Boolesch "="
Auflisten N/A
Struct N/A
Benutzerdefiniertes Objekt Ganzzahl "=, !=, <, >, >=, <="
Long "=, !=, <, >, >=, <="
String "=, !=, LIKE"
Datum N/A
DateTime "between"
Boolesch "="
Auflisten N/A
Struct N/A
Rufen Sie Ganzzahl "=, !=, <, >, >=, <="
Long "=, !=, <, >, >=, <="
String "=, !=, LIKE"
Datum N/A
DateTime "between"
Boolesch "="
Auflisten N/A
Struct N/A
Email Ganzzahl "=, !=, <, >, >=, <="
Long "=, !=, <, >, >=, <="
String "=, !=, LIKE"
Datum N/A
DateTime "between"
Boolesch "="
Auflisten N/A
Struct N/A
Meeting Ganzzahl "=, !=, <, >, >=, <="
Long "=, !=, <, >, >=, <="
String "=, !=, LIKE"
Datum N/A
DateTime "between"
Boolesch "="
Auflisten N/A
Struct N/A
Hinweis Ganzzahl "=, !=, <, >, >=, <="
Long "=, !=, <, >, >=, <="
String "=, !=, LIKE"
Datum N/A
DateTime "between"
Boolesch "="
Auflisten N/A
Struct N/A
Aufgabe Ganzzahl "=, !=, <, >, >=, <="
Long "=, !=, <, >, >=, <="
String "=, !=, LIKE"
Datum N/A
DateTime "between"
Boolesch "="
Auflisten N/A
Struct N/A
Brief Ganzzahl "=, !=, <, >, >=, <="
Long "=, !=, <, >, >=, <="
String "=, !=, LIKE"
Datum N/A
DateTime "between"
Boolesch "="
Auflisten N/A
Struct N/A

HubSpot-API v2:

Entität Feld Datentyp Unterstützte Operatoren
Formular portalId Ganzzahl N/A
guid String N/A
Name String N/A
Methode 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 Boolesch N/A
deletable Boolesch N/A
inlineMessage Boolesch N/A
captchaEnabled Boolesch N/A
cloneable Boolesch N/A
formFieldGroups Auflisten N/A
editable Boolesch N/A
deletedAt Ganzzahl N/A
themeName String N/A
parentId Ganzzahl N/A
style String N/A
isPublished Boolesch N/A
publishAt Ganzzahl N/A
unpublishAt Ganzzahl N/A
publishedAt Ganzzahl N/A
kickbackEmailWorkflowId String N/A
kickbackEmailsJson Ganzzahl N/A
customUid String N/A
createMarketableContact Boolesch N/A
editVersion Ganzzahl N/A
thankYouMessageJson String N/A
themeColor String N/A
alwaysCreateNewCompany Boolesch N/A
internalUpdatedAt Long N/A
businessUnitId Ganzzahl N/A
portableKey String N/A
paymentSessionTemplateIds Auflisten N/A
selectedExternalOptions Auflisten N/A

HubSpot-API v1:

Entität Feld Datentyp Unterstützte Operatoren
Kampagne id Ganzzahl N/A
appId Ganzzahl N/A
appName String N/A
lastUpdatedTime Long N/A
Contact_List dynamisch Boolesch N/A
Name String N/A
portalId Ganzzahl N/A
createdAt Long N/A
listId Ganzzahl N/A
updatedAt Long N/A
ListType String N/A
-Filter Auflisten N/A
authorId Ganzzahl N/A
metaData Struct N/A
archived Boolesch N/A
ilsFilterBranch String N/A
filterIds Auflisten N/A
limitExempt Boolesch N/A
internal Boolesch N/A
readOnly Boolesch N/A
parentId Ganzzahl N/A
Email_Event id String N/A
Typ String N/A
Empfänger String N/A
portalId Ganzzahl N/A
appId Ganzzahl N/A
appName String N/A
emailCampaignId Long N/A
attempt Ganzzahl N/A
created Long N/A
sentBy Struct N/A
smtpId String N/A
response String N/A
subject String N/A
cc Auflisten N/A
bcc Auflisten N/A
replyTo Auflisten 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 Boolesch 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
Bezeichnung String N/A
displayOrder Ganzzahl N/A
aktiv Boolesch N/A
Stufen Auflisten N/A
objectTypeId String N/A
default Boolesch N/A

Partitionieren von Abfragen

Sie können die zusätzlichen Spark-Optionen PARTITION_FIELD, LOWER_BOUND, UPPER_BOUND und NUM_PARTITIONS angeben, wenn Sie Parallelität in Spark nutzen möchten. Mit diesen Parametern wird die ursprüngliche Abfrage in NUM_PARTITIONS Unterabfragen aufgeteilt, die von Spark-Aufgaben gleichzeitig ausgeführt werden können.

  • PARTITION_FIELD: der Name des Feldes, das zur Partitionierung der Abfrage verwendet werden soll.

  • LOWER_BOUND: ein inklusiver Untergrenzwert des ausgewählten Partitionsfelds.

    Für das DateTime-Feld akzeptieren wir den Wert im ISO-Format.

    Beispiele für gültigen Wert:

    “2024-01-01T10:00:00.115Z"
  • UPPER_BOUND: ein exklusiver Obergrenzwert des ausgewählten Partitionsfelds.

  • NUM_PARTITIONS: die Anzahl der Partitionen.

In der folgenden Tabelle sind Details zur Unterstützung der Partitionierung von Entitäten beschrieben:

Entity-Name Partitionieren von Feldern Datentyp
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
Fahrkarte 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
Aufruf hs_object_id Long
createdate, hs_lastmodifieddate DateTime
email 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
Aufgabe hs_object_id Long
createdate, hs_lastmodifieddate DateTime
postal_mail hs_object_id Long
createdate, hs_lastmodifieddate DateTime

Beispiel:

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" }