Projektstruktur
Im Kontext eines Projekts legen Sie Event-Typdefinitionen in einemapp-events-Verzeichnis innerhalb von app/ab. Das app-events-Verzeichnis sollte eine JSON-Schemadefinitionsdatei für jeden Event-Typ (*-hsmeta.json) enthalten.
- Ihre App muss die OAuth-Authentifizierung verwenden und für die Verteilung über den App Marketplace konfiguriert sein. Darüber hinaus muss die App eine
timelinein ihrerrequiredScopesenthalten. Erfahren Sie mehr über die App-Konfiguration. - Erst nach erfolgreichem Deployment Ihres Projekts können Sie eine App-Event-Komponente einbinden.
Schema des Event-Typs
Im Folgenden finden Sie die Konfigurationsoptionen, die für Event-Typ-Schemata (*-hsmeta.json) verfügbar sind. Beachten Sie bitte, dass einige der folgenden Attribute sich nach dem Erstellen des Event-Typs nicht mehr ändern lassen.
Mit * markierte Felder sind Pflichtfelder.
Event-Eigenschaften
Verwenden Sie beim Definieren des Event-Schemas dasproperties-Array, um die Felder zu definieren, an die Sie Daten zum Auftreten von Events senden. Jeder Event-Typ kann über bis zu 500 Eigenschaften verfügen.
Mit * markierte Felder sind Pflichtfelder.
Automatisches Setzen von Eigenschaften
In einigen Fällen möchten Sie möglicherweise die Eigenschaften des CRM-Datensatzes auf Grundlage von App-Daten zum Auftreten von Events ändern. Sie können zum Beispiel den Vor- und Nachnamen eines Kontakts mit neuen, durch das Vorkommnis (z. B. Formularübermittlung ) festgelegten Werten aktualisieren. Um CRM-Datensatzeigenschaften über das Auftreten von Events zu aktualisieren, können Sie eine Event-Eigenschaft mit einer CRM-Eigenschaft innerhalb des Event-Typschemas verknüpfen. Fügen Sie in den Definitionsfeldern für eine bestimmte Event-Eigenschaft dasobjectPropertyName-Feld ein und geben Sie die zu verknüpfende CRM-Eigenschaft an. Sobald eine Eigenschaft verknüpft ist, aktualisiert HubSpot immer den Wert der Eigenschaft im CRM-Datensatz mithilfe des Werts aus dem letzten Vorkommnis basierend auf dem timestamp-Feld.
Das folgende Event-Typschema verknüpft beispielsweise die Event-Eigenschaft customerName mit einer benutzerdefinierten Kontakteigenschaft namens custom_property_name. Wenn die Daten des Event-Vorkommnisses einen Wert für customerNameenthalten, wird custom_property_name im zugehörigen CRM-Datensatz aktualisiert.
Rendering von Vorlagen
Event-Typ-Schemata könnenheaderTemplate- und detailTemplate-Felder enthalten, um zu konfigurieren, wie das Auftreten von Events in CRM-Datensatzchroniken dargestellt wird.
headerTemplate: eine einzeilige Beschreibung des Events oben auf der Aktivitätskarte (bis zu 1.000 Zeichen).detailTemplate: die Details des Events im Hauptteil der Aktivitätskarte (bis zu 10.000 Zeichen).
- In beiden Vorlagen können Sie auf alle
property-Daten zugreifen, die durch das Auftreten des Events mithilfe der Syntax{{propertyName}}übermittelt werden. - Im
detailTemplatekönnen Sie zusätzlich aufextraData-Werte zugreifen, die durch das Auftreten des Events mithilfe der Syntax{{extraData.fieldName}}übermittelt werden. Sie haben auf jede Stufe von Attributen inextraDataanhand von Punktnotation Zugriff; hier ein Beispiel:{{extraData.person1.preferredName}}.
customerName- und loginLocation-Eigenschaftsdaten zusammen mit dem surveyData-Feld von extraData und wurden durch das Event-Vorkommnis übersendet.
detailTemplate-Vorlage beinhaltet beispielsweise den #if -Helper, um Inhalte bedingt wiederzugeben, je nachdem, ob die Daten des Event-Vorkommnisses das surveyData-Feld in extraData aufweisen.
- Wenn
extraDatasurveyDataenthält, wird die Umfrageantworten nach der Anmeldung angezeigt. - Wenn im Event-Vorkommnis keine
surveyDataenthalten sind, wirdNo additional information.gerendert.
Verwenden von iframes
Wenn Daten zum Event-Vorkommnis dastimelineIFrame-Feld enthalten, verfügt die Aktivitätskarte der Chronik über einen Hyperlink, auf den Benutzer klicken können, um die verlinkten Inhalte in einem iframe zu öffnen.
Auftreten von Events
Um Event-Vorkommnisse für einen bestimmten Event-Typ zu senden, führen Sie einePOST-Anfrage an die im Folgenden genannten Endpunkte durch. Die App-Events-API enthält Endpunkte zum Senden von einzelnen Vorkommnissen sowie von Batches mit mehreren Vorkommnissen. Für beide Endpunkte müssen die Daten zum Auftreten von Events anhand eines vorhandenen Event-Typschemas validiert werden, das Sie mit eventTypeName im Anfragetext angeben.
- Ein einzelnes Vorkommen senden
- Ein Batch von Vorkommnissen senden
Um ein einzelnes Event-Vorkommnis zu senden, stellen Sie eine
POST-Anfrage an /integrators/timeline/v4/events.Fügen Sie im Anfragetext die Daten über das Auftreten des Events ein und halten Sie sich dabei an das definierte Schema des Event-Typs.eventTypeName enthalten, den Sie über die API abrufen können.
Mit * markierte Felder sind Pflichtfelder.
Auch wenn Vorkommnisse nicht validiert werden können, werden erfolgreich validierte weiterhin akzeptiert und beibehalten. Die Fehlernachricht gibt Aufschluss darüber, was Sie beheben müssen.
Zuordnung von Datensätzen
Jedes Auftreten eines Events muss einem CRM-Datensatz zugeordnet werden, wobei der CRM-Objekttyp durch das Event-Typschema definiert ist. Die App-Events-API enthält mehrere Felder, mit denen sich Daten von Event-Vorkommnissen CRM-Datensätzen zuordnen lassen. Für alle unterstützten CRM-Objekte wird empfohlen, dasobjectId-Feld zu verwenden. Es gibt jedoch einige Situationen, in denen Sie vielleicht andere Felder bevorzugen.
utk/email: Wenn Sie die ID des Kontakts nicht kennen, verwenden Sie dasutk-Feld und/oderemail-Feld zur Identifizierung. Die Angabe dieser beiden IDs ermöglicht es Ihnen auch, Kontakte zu erstellen und zu aktualisieren. Zum Beispiel:- Wenn
utkmit einem vorhandenen Kontakt übereinstimmt, jedochemailnicht, aktualisiert HubSpot den Kontakt mit der neuen E-Mail-Adresse. - Ist kein
objectIdangegeben, wird das Auftreten des Events einem vorhandenen Kontakt zugeordnet, der mitutk/emailübereinstimmt, oder HubSpot erstellt einen neuen Kontakt, wenn keine Übereinstimmung vorliegt. - Beachten Sie bitte, dass anhand von
utkallein kein neuer Kontakt erstellt werden kann. Sie sollten immeremailzusammen mitutkerwähnen, um eine ordnungsgemäße Zuordnung zu gewährleisten.
- Wenn
domain: Für Unternehmenszuordnungen müssen Sie dasobjectIdangeben, können aber auchdomaineinschließen, um diedomain-Eigenschaft dieses Unternehmens zu aktualisieren.