Letzte Änderung: 28. August 2025

Run in Postman

„Marketingevents“ ist ein CRM-Objekt, ähnlich wie Kontakte und Unternehmen, mit dem Sie Marketingevents wie ein Webinar nachverfolgen und anderen Objekten von HubSpots intelligentem CRM zuordnen können. Im Folgenden erfahren Sie mehr über die Zusammenarbeit mit der Marketingevent-API, um Marketingevents in eine App zu integrieren.

In diesem Artikel

Anforderungen an den Bereich

Um eine API-Anfrage an einen der Marketingevent-Endpunkte durchzuführen, sind die folgenden Bereiche erforderlich:
  • crm.objects.marketing_events.read: erteilt die Berechtigung zum Abrufen von Marketingevent- und -Teilnahmedaten.
  • crm.objects.marketing_events.write: erteilt die Berechtigung, Marketingevent-Informationen zu erstellen, löschen oder ändern.
Wenn Sie von Ihrer App durchgeführte Aufrufe authentifizieren, können Sie entweder das Zugriffstoken für eine private App oder OAuth verwenden. Erfahren Sie mehr über Authentifizierungsmethoden. Die vollständige Liste der verfügbaren Endpunkte finden Sie in der Referenzdokumentation.

Unterschiede zwischen internen ID- und externen ID-Endpunkten

Viele der folgenden Endpunkte bieten zwei verschiedene Möglichkeiten, ein Event zu identifizieren, das Sie abrufen oder aktualisieren möchten. Obwohl das Endergebnis für ähnliche Endpunkte identisch sein kann, unterscheiden sie sich hauptsächlich durch die zugehörigen IDs, die Sie bereitstellen:
  • Endpunkte mit externen IDs: Endpunkte, die externalEventId- und externalAccountId-Parameter erfordern, funktionieren nur in derselben App, die das Event ursprünglich erstellt hat. Wenn Sie z. B. zwei öffentliche Apps mit den Namen App A und App B erstellt haben und ein Marketingevent über die Authentifizierung und IDs erstellt haben, die App A zugeordnet sind, kann nur App A das Event lesen, aktualisieren oder neue Teilnehmer hinzufügen. Wenn Sie versuchen, mit App B auf dasselbe Event zuzugreifen, das dieselbe externalEventId und externalAccountId verwendet, tritt ein 404-Fehler auf.
  • Endpunkte, die eine objectId verwenden: Endpunkte, die eine objectId erfordern, können für den Zugriff auf ein Event von jeder App mit den im Abschnitt oben aufgeführten zugeordneten Bereichen verwendet werden, unabhängig von der App, die das Event ursprünglich erstellt hat. Wenn App A ein Marketingevent erstellt hat, kann App B weiterhin Teilnehmer über objectId-basierte Endpunkte lesen, aktualisieren oder hinzufügen.

Endpunkte für das Event-Management

Die folgenden Abschnitte enthalten Kontext für allgemeine Eventeigenschaften und erläutern, wie die verschiedenen Eventmanagement-Endpunkte zum Erstellen, Lesen, Aktualisieren und Archivieren von Events verwendet werden.

Event-Eigenschaften

Die folgenden Eigenschaften können bei Verwendung der Eventmanagement-Endpunkte abgerufen und aktualisiert werden:
ParameterTypBeschreibung
eventNameZeichenfolgeDer Titel Ihres Events.
eventTypeZeichenfolgeDer Typ des Events (z. B. Webinar, Messe usw.)
eventOrganizerZeichenfolgeDie Person oder Organisation, die das Event ausrichtet.
eventDescriptionZeichenfolgeEine Beschreibung für Ihr Event.
eventUrlZeichenfolgeEine URL, zu der Benutzer navigieren können, um weitere Informationen zu erhalten und/oder sich für Ihr Event zu registrieren.
eventCancelledBooleschGibt an, ob das Event abgebrochen wird oder nicht.
eventStartTimeZeichenfolgeEin ISO 8601-formatierter Zeitstempel der Startzeit des Events.
eventEndTimeZeichenfolgeEin ISO 8601-formatierter Zeitstempel der Endzeit des Events.

Ein Event erstellen

Um ein Marketingevent zu erstellen, können Sie eine POST-Anfrage an /marketing/v3/marketing-events/events stellen und eventName, externalEventId, externalAccountId und eventOrganizer im Text Ihrer Anfrage angeben. Sie können optional alle zusätzlichen Eigenschaften angeben, die in der obigen Tabelle in Ihrer Anfrage aufgeführt sind. Wenn z. B. die externalAccountId Ihrer App "12345" lautet und die externalEventId Ihres Events in Ihrer App "67890" ist, können Sie ein neues Event "Winter webinar" mit einer Anfrage erstellen, die der folgenden ähnelt:
{
  "externalAccountId": "12345",
  "externalEventId": "67890",
  "eventName": "Winter webinar",
  "eventOrganizer": "Snowman Fellowship",
  "eventCancelled": false,
  "eventUrl": "https://example.com/holiday-jam",
  "eventDescription": "Let's get together to plan for the holidays",
  "eventCompleted": false,
  "startDateTime": "2024-08-07T12:36:59.286Z",
  "endDateTime": "2024-08-07T12:36:59.286Z",
  "customProperties": [
    {
      "name": "eventSeason",
      "value": "winter"
    }
  ]
}

Event-Eigenschaften mithilfe externer IDs aktualisieren

Sie können Marketingevents erstellen oder aktualisieren, indem Sie eine POST-Anfrage an den /marketing/v3/marketing-events/events/upsert-Endpunkt durchführen. Sie können beliebige customProperties zusammen mit weiteren Details zu Ihrem Event (einschließlich Name, Startzeit und Beschreibung) einbeziehen. Wenn bereits ein Marketingevent mit der angegebenen ID in Ihrer Anfrage vorhanden ist, wird es aktualisiert. Andernfalls wird ein neues Event erstellt. Zum Beispiel würde die folgende Anfrage ein Event mit einer ID von 4 mit dem Namen „Virtueller Kochkurs“ erstellen:
{
  "inputs": [
    {
      "customProperties": [
        {
          "name": "property1",
          "value": "1234"
        }
      ],
      "eventName": "Virtual cooking class",
      "startDateTime": "2023-11-30T17:46:20.461Z",
      "eventOrganizer": "Chef Joe",
      "eventDescription": "Join us for a virtual cooking class! Yum."
      "eventCancelled": false,
      "externalAccountId": "CookingCo",
      "externalEventId": "4"
    }
  ]
}

Event-Eigenschaften mithilfe seiner objectId aktualisieren

Sobald ein Event erstellt wurde, können Sie seine Eigenschaften aktualisieren, indem Sie eine PATCH-Anfrage an /marketing/v3/marketing-events/{objectId} durchführen.
  • Um die objectId für ein bestimmtes Marketingevent abzurufen, folgen Sie den Anweisungen in diesem Wissensdatenbank-Artikel, um die Details für ein Event in Ihrem HubSpot-Account anzuzeigen, und suchen Sie dann die ID unter dem Feld Datensatz-ID. Die objectId wird auch in der Antwort zurückgegeben, wenn Sie ein Event erfolgreich erstellt haben.
  • Sie können auch eine GET-Anfrage an den im nächsten Abschnitt beschriebenen /marketing/v3/marketing-events-Endpunkt vornehmen.
  • Wenn Sie die externalEventId für ein Event kennen, können Sie sie als Pfad in eine GET-Anfrage an /marketing/v3/marketing-events/{externalEventId}/identifiers einschließen. Die Antwort enthält alle Marketingevents zusammen mit den relevanten IDs für jedes Event (d. h. objectId, appInfo und marketingEventName sowie die externalAccountId des Events).

Event-Informationen abrufen

Um eine Liste aller Marketingevents zusammen mit ihren Eigenschaften zu erhalten, stellen Sie eine GET-Anfrage an /marketing/v3/marketing-events. Wenn Sie die Details für ein bestimmtes Marketingevent nach seiner Datensatz-ID in HubSpot abrufen müssen, können Sie die ID als objectId in einer GET-Anfrage an /marketing/v3/marketing-events/{objectId} angeben.
{
  "eventName": "Test Marketing Event",
  "eventType": "test-type",
  "startDateTime": "2024-05-22T12:29:50.734Z",
  "endDateTime": "2024-05-25T12:29:50.734Z",
  "eventOrganizer": "testEventOrganizer",
  "eventDescription": "testDescription",
  "eventUrl": "testURL",
  "eventCancelled": true,
  "eventCompleted": false,
  "customProperties": [
    {
      "name": "test_custom_prop",
      "value": "1"
    },
    {
      "name": "test_prop",
      "value": "2"
    }
  ],
  "objectId": "58237132332",
  "externalEventId": null,
  "eventStatus": "CANCELLED",
  "appInfo": {
    "id": "111",
    "name": "Zoom"
  },
  "registrants": 1,
  "attendees": 1,
  "cancellations": 2,
  "noShows": 0,
  "createdAt": "2024-08-07T12:58:40.635Z",
  "updatedAt": "2024-10-15T13:35:03.353Z"
}

Ein Event löschen

Um ein Marketingevent zu löschen, führen Sie eine DELETE-Anfrage an /marketing/v3/marketing-events/{objectId} mit der zugehörigen Event-objectId durch. Bei Erfolg erhalten Sie eine 204 No Content-Antwort.

Mehrere Events gleichzeitig aktualisieren

Um mehrere Marketingevents gleichzeitig zu aktualisieren, können Sie eine POST-Anfrage an /marketing-events/v3/marketing-events/batch/update stellen und in den Input-Arrays des Anforderungstextes die Eigenschaften angeben, die Sie für jedes Event aktualisieren möchten. Wenn Sie beispielsweise mehrere Eigenschaften von zwei Marketingevents mit Objekt-IDs 58237132332 und 54073507364 in einer einzigen Anfrage aktualisieren möchten, würde der Text Ihrer Anfrage wie folgt aussehen:
{
  "inputs": [
    {
      "objectId": "58237132332",
      "eventCancelled": true,
      "eventOrganizer": "testEventOrganizer",
      "eventUrl": "testURL",
      "eventDescription": "testDescription",
      "eventName": "Test Marketing Event Update",
      "eventType": "test-type"
    },
    {
      "objectId": "54073507364",
      "eventCancelled": true,
      "eventOrganizer": "testEventOrganizer",
      "eventUrl": "testURL",
      "eventDescription": "testDescription",
      "eventName": "Test Marketing Event Update 2",
      "eventType": "test-type"
    }
  ]
}

Event-Teilnahme-Endpunkte

Die Event-Teilnahmestatus-Endpunkte ermöglichen es Ihnen, Registrierungsaktivitäten für einen Kontakt festzuhalten, z. B. ob er sich registriert, daran teilgenommen oder seine Registrierung für Ihr Event storniert hat. Sie können beispielsweise diesen Endpunkt verwenden, um zu protokollieren, dass sich ein HubSpot-Kontakt für ein Marketingevent registriert hat.

Teilnahme mithilfe der Event-objectId aktualisieren

Wenn Sie die objectId eines Marketingevents verwenden möchten, können Sie entweder die Kontakt-ID des Kontakts verwenden, für den Sie den Teilnahmestatus festhalten möchten, oder Sie können dessen E-Mail-Adresse verwenden.
  • Um die ID eines Kontakts zu verwenden, führen Sie eine POST-Anfrage an /marketing/v3/marketing-events/{objectId}/attendance/{subscribeState}/create durch und geben die Kontakt-ID über das vid-Feld im inputs-Array Ihres Anforderungstextes an. Der folgende Anforderungstext enthält ein Beispiel für die Aktualisierung der Teilnahmedaten für einen Kontakt mit der ID 47733471576 mit der Angabe, wann der Teilnehmer über die joinedAt- und leftAt-Eigenschaften dem Event beigetreten ist und es verlassen hat:
{
  "inputs": [
    {
      "vid": 47733471576,
      "properties": {
        "joinedAt": "2024-05-22T13:38:16.500Z",
        "leftAt": "2024-05-22T15:40:16.500Z"
      },
      "interactionDateTime": 1716382579000
    }
  ]
}
  • Um die E-Mail-Adresse eines Kontakts zu verwenden, führen Sie eine POST-Anfrage an /marketing/v3/marketing-events/{objectId}/attendance/{subscribeState}/email-create durch und geben dann die E-Mail-Adresse des Kontakts über das email-Feld im inputs-Array Ihres Anforderungstextes an.
    • Wenn Sie einen neuen Kontakt erstellen, können Sie das contactProperties-Feld in das inputs-Array Ihres Anforderungstextes aufnehmen, um alle zugehörigen Eigenschaften für den neu erstellten Kontakt festzulegen. Falls der Kontakt bereits vorhanden ist, werden die in der Anfrage angegebenen contactProperties sonst nicht aktualisiert.
    • Der folgende Anforderungstext enthält ein Beispiel für die Aktualisierung der Teilnahmedaten für einen Kontakt mit der E-Mail-Adresse john@example.com mit der Angabe im properties-Object Ihres inputs-Arrays, wann der Teilnehmer über die joinedAt- und leftAt-Eigenschaften dem Event beigetreten ist und es verlassen hat:
{
  "inputs": [
    {
      "contactProperties": {
        "additionalProp1": "string",
        "additionalProp2": "string"
      },
      "properties": {
        "joinedAt": "2024-05-22T13:38:16.500Z",
        "leftAt": "2024-05-22T15:40:16.500Z"
      },
      "email": "john@example.com",
      "interactionDateTime": 1716382579000
    }
  ]
}
Geben Sie für beide der oben genannten Vorgehensweisen die folgenden Werte für die entsprechenden Pfadparameter an:
  • objectId: die Datensatz-ID des Marketingevents in Ihrem HubSpot-Account Weitere Informationen zur Verwendung der objectId eines Events statt seiner externen IDs finden Sie im obigen Abschnitt.
  • subscriberState: eine Aufzählung, die dem neuen Teilnehmerstatus des Kontakts entspricht:
  • REGISTERED: gibt an, dass sich der HubSpot-Kontakt für das Event registriert hat.
  • ATTENDED: gibt an, dass der HubSpot-Kontakt am Event teilgenommen hat. Wenn Sie den Status eines Kontakts auf ATTENDED aktualisieren, können Sie auch die Zeitstempel joinedAt und leftAt als Parameter in den Anfragetext einfügen, der im ISO8601 Instant-Format angegeben ist.
  • CANCELLED: gibt an, dass der HubSpot-Kontakt, der sich zuvor für das Event registriert hatte, seine Registrierung storniert hat.

Teilnahme mithilfe der externen Event-IDs aktualisieren

Hinweis:

Wenn Sie zuvor die /upsert- oder /email-upsert-Endpunkte verwendet haben, um den Status eines Teilnehmers zu aktualisieren, können Sie stattdessen die unten aufgeführten alternativen Endpunkte verwenden. Im Vergleich zu den oben genannten Endpunkten für die Teilnahme an Events bietet die Verwendung dieser Endpunkte jedoch keine Unterstützung für:
  • Erstellen eines neuen Kontakts, falls dieser noch nicht vorhanden ist
  • Anzeige von Chronik-Events auf der Seite des Kontaktdatensatzes
  • Angabe der joinedAt- oder leftAt-Eigenschaften
  • Angabe einer detaillierten Antwort nach Erfolg
Wenn Sie die Endpunkte verwenden, die die externalEventId aus Ihrer App erfordern, können Sie entweder die Kontakt-IDs oder die E-Mail-Adressen vorhandener Kontakte verwenden:
  • Wenn Sie die Kontakt-IDs von bestehenden Kontakten verwenden möchten:
    • Führen Sie eine POST-Anfrage an /marketing/v3/marketing-events/attendance/{externalEventId}/{subscriberState}/create durch, indem Sie die ID des Events aus Ihrer externen Anwendung als externalEventId verwenden.
    • Geben Sie im Anforderungstext ein inputs-Objekt an, das die folgenden Felder enthält:
      • interactionDateTime: der Zeitpunkt (Datum und Uhrzeit), zu dem sich der Kontakt zum Event angemeldet hat.
      • vid: die Kontakt-ID eines vorhandenen Kontakts.
  • Wenn Sie die E-Mail-Adresse eines der Teilnehmer der Veranstaltung verwenden möchten:
    • Führen Sie eine POST-Anfrage an /marketing/v3/marketing-events/attendance/{externalEventId}/{subscriberState}/email-create durch.
    • Geben Sie im Anforderungstext ein inputs-Objekt an, das die folgenden Felder enthält:
      • interactionDateTime: der Zeitpunkt (Datum und Uhrzeit), zu dem sich der Kontakt zum Event angemeldet hat.
      • email: die E-Mail-Adresse des Teilnehmers als Wert des E-Mail-Felds in einer Eingabe.
    • Stimmt die von Ihnen angegebene E-Mail-Adresse nicht mit der Adresse eines vorhandenen Kontakts überein, wird ein neuer Kontakt erstellt.
Geben Sie für beide oben genannten Endpunkte die folgenden Werte für die entsprechenden Pfadparameter an:
  • externalEventId: die ID des Marketingevents Weitere Informationen zur Verwendung der objectId eines Events statt seiner externen IDs finden Sie im obigen Abschnitt.
  • subscriberState: eine Aufzählung, die dem neuen Teilnehmerstatus des Kontakts entspricht:
    • REGISTERED: gibt an, dass sich der HubSpot-Kontakt für das Event registriert hat.
    • ATTENDED: gibt an, dass der HubSpot-Kontakt am Event teilgenommen hat. Wenn Sie den Status eines Kontakts auf ATTENDED aktualisieren, können Sie auch die Zeitstempel joinedAt und leftAt als Parameter in den Anfragetext einfügen, der im ISO8601 Instant-Format angegeben ist.
    • CANCELLED: gibt an, dass der HubSpot-Kontakt, der sich zuvor für das Event registriert hatte, seine Registrierung storniert hat.

Hinweis:

Diese APIs sind idempotent, solange sich die ID des Kontakts und der interactionDateTime-Wert im Event nicht geändert haben. So können Sie den Abonnentenstatus mehrmals sicher festlegen, ohne dass HubSpot doppelte Events in den Marketingevent-Eigenschaften erstellt.

Teilnehmerstatus-Endpunkte

Sie können die Teilnahme-Endpunkte verwenden, um Event-Teilnehmerdaten für Ihre Marketingevents abzurufen. Sie können Daten wie aggregierte Kennzahlen für ein bestimmtes Event sowie Teilnehmerdaten für einen bestimmten Kontakt oder ein bestimmtes Event abfragen. Überprüfen Sie unten die verfügbaren Teilnahme-Endpunkte. Eine vollständige Referenz aller verfügbaren Parameter für jeden Endpunkt finden Sie in der Referenzdokumentation.

Hinweis:

Die Aktivitätszählungen auf der Marketingevents-Seite in Ihrem HubSpot-Account können von den entsprechenden aggregierten Kennzahlen aus dem Teilnahmeanzahlen-API-Endpunkt abweichen.Wenn sich ein Teilnehmer beispielsweise für ein Event registriert hat, dann storniert und sich dann erneut für dasselbe Event registriert hat, wird jede dieser Aktivitäten in den Gesamtzählungen berücksichtigt, die Sie auf der Benutzeroberfläche für Marketingevents in Ihrem Account sehen. Wenn Sie die folgenden Teilnehmerstatus-Endpunkte verwenden, wird nur der aktuelle Status eines Teilnehmers in der zugehörigen Zählung für diese Kennzahl berücksichtigt (z. B. attended, registered cancelled oder noShows).

Teilnahmen für einen bestimmten Kontakt lesen

Um Event-Teilnahmedaten für einen bestimmten Kontakt abzurufen, führen Sie eine GET-Anfrage an /marketing/v3/marketing-events/participations/contacts/{contactIdentifier}/breakdown durch und verwenden Sie die ID oder E-Mail-Adresse des Kontakts als contactIdentifier-Pfadparameter. Die Antwort enthält eine Zusammenfassung der Event-Teilnahme des Kontakts im properties-Feld:
{
  "results": [
    {
      "associations": {
        "marketingEvent": {
          "externalAccountId": "4",
          "marketingEventId": "123",
          "externalEventId": "456",
          "name": "Virtual baking workshop"
        },
        "contact": {
          "firstname": "Jane",
          "contactId": "156792341",
          "email": "jdoe@example.com",
          "lastname": "Doe"
        }
      },
      "createdAt": "2024-05-21T18:35:04.838Z",
      "id": "string",
      "properties": {
        "occurredAt": "2024-05-22T10:35:04.838Z",
        "attendancePercentage": "string",
        "attendanceState": "REGISTERED",
        "attendanceDurationSeconds": 3600
      }
    }
  ]
}

Aufschlüsselung der Teilnahmedaten lesen

Um eine Aufschlüsselung der Teilnahmedaten für ein bestimmtes Event zu erhalten, verwenden Sie Ihre externalAccountId und die externalEventId Ihres Events, um eine GET-Anfrage an /marketing/v3/marketing-events/participations/{externalAccountId}/{externalEventId}/breakdown durchzuführen.

Teilnahmezählungen lesen

Um eine aggregierte Zusammenfassung der Teilnahme für ein Event zu erhalten, verwenden Sie Ihr externalAccountId und das externalEventId Ihres Events, um eine GET-Anfrage an /marketing/v3/marketing-events/participations/{externalAccountId}/{externalEventId} durchzuführen. Die Antwort enthält die Gesamtzählung der Teilnahmen:
{
  "attended": 152,
  "registered": 200,
  "cancelled": 3,
  "noShows": 8
}

Filtern der Aufschlüsselung von Teilnahmedaten

Wenn Sie Aufschlüsselungsdaten oder Daten zur Teilnahme an Events für einen bestimmten Kontakt abrufen, können Sie die resultierenden Daten mithilfe der Felder „contactIdentifier“, „state“, „limit“ oder „after“ als Abfrageparameter in Ihrer Anfrage filtern.
AbfrageparameterTypBeschreibung
contactIdentifierZeichenfolgeDie E-Mail-Adresse oder ID eines bestimmten Kontakts
stateAufzählungDer Teilnahmestatus für das Event. Die möglichen Teilnahmestatus sind:
  • REGISTERED: Der Kontakt hat sich für das Event registriert
  • CANCELLED: Die Registrierung des Kontakts wurde storniert.
  • ATTENDED: Der Kontakt hat am Event teilgenommen.
  • NO_SHOW: Der Kontakt hat sich für das Event registriert, ist aber nicht erschienen.
limitZahlBegrenzt die zurückgegebenen Ergebnisse. Standardmäßig ist das Limit auf 10 festgelegt. Der gültige Bereich liegt zwischen 1 und 100.
afterZahlWird für das Blättern zwischen den Ergebnissen in der Antwort verwendet. Zieht den angegebenen Offset in der vorherigen Seite der Antwortdaten heran, um den nächsten Index der zurückzugebenden Ergebnisse zu bestimmen.

Endpunkte für die Listenzuordnung

Sie können die in den folgenden Abschnitten beschriebenen Endpunkte verwenden, um Zuordnungen zwischen Listen und Ihren Marketingevents zu verwalten. Viele dieser Endpunkte erfordern eine listId als Pfadparameter, die Sie auf der Seite mit den Listendetails in Ihrem HubSpot-Account finden:
  • Navigieren Sie in Ihrem HubSpot Account zu CRM > Listen.
  • Klicken Sie auf den Namen einer Liste.
  • Klicken Sie oben rechts auf Details.
  • Im rechten Bereich wird die Listen-ID unter Listen-IDs für API-Integrationen angezeigt. Sie können auf Listen-ID kopieren klicken, um die ID in die Zwischenablage zu kopieren.
list-details-panel-list-associations-api
Wenn Sie Listen Ihren Marketingevents zuordnen, werden diese auf der Detailseite für ein Marketingevent in Ihrem HubSpot-Account angezeigt:
  • Gehen Sie in Ihrem HubSpot-Account zu CRM > Kontakte.
  • Klicken Sie oben links auf Kontakte und wählen Sie im Dropdown-Menü die Option Marketingevents aus.
  • Klicken Sie auf den Namen eines Marketingevents.
  • Klicken Sie auf der Registerkarte Performance auf Listen, um den Abschnitt zu erweitern, und klicken Sie dann auf die Registerkarte Über Zuordnungen hinzugefügte Listen.
review-list-associations-for-marketing-events-api

Listenzuordnung mit einer Marketingevent-ID erstellen

Um eine neue Zuordnung zwischen einem Marketingevent und einer vorhandenen Liste zu erstellen, stellen Sie eine PUT-Anfrage an /marketing/v3/marketing-events/associations/{marketingEventId}/lists/{listId}. Bei Erfolg erhalten Sie eine 204 No content-Antwort.

Listenzuordnung mit externen Event- und Account-IDs erstellen

Um eine neue Zuordnung zwischen einem Marketingevent und einer vorhandenen Liste unter Verwendung der externen Account-ID und der externen Event-ID zu erstellen, stellen Sie eine PUT-Anfrage an /marketing/v3/marketing-events/associations/{externalAccountId}/{externalEventId}/lists/{listId}. Bei Erfolg erhalten Sie eine 204 No content-Antwort.

Abrufen von Listen, die einem Marketingevent mithilfe einer Marketingevent-ID zugeordnet sind

Um alle Listen abzurufen, die einem Marketingevent zugeordnet sind, stellen Sie eine GET-Anfrage an /marketing/v3/marketing-events/associations/{marketingEventId}/lists. Die Antwort sieht etwa so aus:
{
  "total": 1,
  "results": [
    {
      "listId": "string",
      "listVersion": 0,
      "createdAt": "2024-05-10T08:58:35.769Z",
      "updatedAt": "2024-05-10T08:58:35.769Z",
      "filtersUpdatedAt": "2024-05-10T08:58:35.769Z",
      "processingStatus": "string",
      "createdById": "string",
      "updatedById": "string",
      "processingType": "string",
      "objectTypeId": "string",
      "name": "string",
      "size": 0
    }
  ]
}

Abrufen von Listen, die einem Event mithilfe externer Event- und Account-IDs zugeordnet sind

Sie können auch Listen abrufen, die einem Marketingevent zugeordnet sind, indem Sie eine externe Account-ID und die externe Event-ID verwenden, um eine GET-Anfrage an /marketing/v3/marketing-events/associations/{externalAccountId}/{externalEventId}/lists zu stellen.

Listenzuordnung mithilfe einer Marketingevent-ID löschen

Um eine Listenzuordnung für ein Marketingevent zu löschen, die eine Marketingevent-ID verwendet, stellen Sie eine DELETE-Anfrage an /marketing/v3/marketing-events/associations/{marketingEventId}/lists/{listId}. Bei Erfolg erhalten Sie eine 204 No content-Antwort.

Listenzuordnung mithilfe externer Event- und Account-IDs löschen

Um eine Listenzuordnung für ein Marketingevent mithilfe der externen Account-ID und einer externen Event-ID zu löschen, stellen Sie eine DELETE-Anfrage an /marketing/v3/marketing-events/associations/{externalAccountId}/{externalEventId}/lists/{listId}. Bei Erfolg erhalten Sie eine 204 No content-Antwort.

App-Einstellungen konfigurieren

Es ist ein gewisses Setup erforderlich, damit Marketingevents ordnungsgemäß mit HubSpot synchronisiert werden können. Wenn Sie HubSpot eine Änderung des Teilnahmestatus übermitteln (z. B. eine Registrierung oder ein storniertes Event), prüft HubSpot zunächst, ob ein Marketingevent für die angegebene Event-ID vorhanden ist. Ist dies nicht der Fall, ruft HubSpot den konfigurierten Endpunkt für Ihre App auf, um die Details des Marketingevents abzurufen, erstellt dann das Event in HubSpot und veröffentlicht die Änderung des Teilnahmestatus. Dies geschieht, um Ihnen die Arbeit zu erleichtern. Es wird jedoch weiterhin empfohlen, die Marketingevents selbst über die in der Referenzdokumentation erläuterten CRUD-Methoden zu erstellen und sich nicht auf diese Funktion zu verlassen, um Ihre Marketingevents in HubSpot zu erstellen.

Schritt 1: Eine API in Ihrer App erstellen

Um dies zu unterstützen, verlangt HubSpot, dass jede App, die Marketingevents verwendet, eine API definiert, um Informationen zu einem bestimmtem Marketingevent abzurufen. Anforderungen:
  • Akzeptiert:
    • externalAccountId: ein Abfrageparameter, der die accountId des Kunden in der externen App angibt.
    • appId: ein Abfrageparameter, der die ID der HubSpot-Anwendung angibt, die die Event-Details anfordert. Dies ist dann die ID Ihrer App.
    • externalEventId: ein Pfadparameter in der URL der Anfrage, der die ID des Events in der externen App angibt, zu dem HubSpot Details benötigt.
  • Gibt zurück:
    • Ein JSON-Objekt, das Details für das Marketingevent bereitstellt und die folgenden Felder enthält, die in der folgenden Tabelle aufgeführt sind:
| Feldname | Erforderlich | Typ | Feldbeschreibung | | ------------------ | ------------ | ------------------------- | ------------------------------------------------------------------------------------------------------- | --- | | eventName | true | Zeichenfolge | Der Name des Marketingevents. | | eventOrganizer | true | Zeichenfolge | Der Name des Organisators des Marketingevents. | | eventType | false | Zeichenfolge | Beschreibt, um welchen Typ von Event es sich handelt. Zum Beispiel: WEBINAR, CONFERENCE, WORKSHOP | . | | startDateTime | false | Zeichenfolge (datetime)DerStartzeitpunkt(DatumundUhrzeit)desMarketingevents.endDateTimefalseZeichenfolge(date-time) | Der Startzeitpunkt (Datum und Uhrzeit) des Marketingevents. | | `endDateTime` | false | Zeichenfolge (date-time) | Der Endzeitpunkt (Datum und Uhrzeit) des Marketingevents. | | eventDescription | false | Zeichenfolge | Die Beschreibung des Marketingevents. | | eventUrl | false | Zeichenfolge | Eine URL in der externen Event-Anwendung, in der das Marketingevent stattfindet. | | eventCancelled | false | Boolesch | Gbt an, ob das Marketingevent storniert wurde. Die Standardeinstellung ist false | HubSpot sendet auch einen X-HubSpot-Signature-v3-Header, mit dem Sie überprüfen können, ob die Anfrage von HubSpot stammt. Erfahren Sie mehr über Anfragesignaturen, um weitere Informationen zur Signatur zu erhalten und wie Sie diese validieren.

Schritt 2: HubSpot den URL-Pfad zu Ihrer API bereitstellen

Nachdem Sie nun die API in Ihrer App erstellt haben, die ein Objekt zurückgibt, das die Details eines bestimmten Marketingevents enthält, müssen Sie HubSpot den URL-Pfad zu Ihrer API bereitstellen, indem Sie eine POST-Anfrage an /marketing/v3/marketing-events/{appId}/settings durchführen. Auf diese Weise kann HubSpot ermitteln, wie Anfragen an Ihre App gestellt werden müssen, um die Details eines Marketingevents abzurufen. Geben Sie im Text Ihrer POST-Anfrage über das Feld eventDetailsURL Ihre URL an. Die eventDetailsURL muss die folgenden beiden Voraussetzungen erfüllen:
  • Sie enthält eine %s-Zeichensequenz enthalten, die HubSpot zum Ersetzen in der ID des Events (externalEventId) als Pfadparameter verwendet.
  • Es muss der vollständige Pfad zur API-Ressource sein, einschließlich des Präfixes https:// und des Domain-Namens (z. B. my.event.app).
Wenn Sie beispielsweise eine eventDetailsURL von https://my.event.app/events/%s konfigurieren und eine Anfrage zum Abrufen von Details eines Events mit der ID 1234-event-XYZ durchführen müssen, führt HubSpot für die HubSpot-App mit der ID app-101 und den Account mit der ID ABC-account-789 eine GET-Anfrage durch: https://my.event.app/events/1234-event-XYZ?appId=app-101&externalAccountId=ABC-account-789