Dernière modification : 28 août 2025
Run in Postman
Dans cet article
- Exigences des domaines
- Différences entre les points de terminaison d’ID interne et externe
- Points de terminaison de gestion des événements
- Points de terminaison de participation à l’événement
- Points de terminaison du statut du participant
- Points de terminaison des associations de listes
- Configurer les paramètres d’application
Exigences des domaines
Pour effectuer une requête API vers l’un des points de terminaison d’événement marketing, les champs d’application suivants sont requis :crm.objects.marketing_events.read
: autorise la récupération des données relatives aux événements marketing et à la participation.crm.objects.marketing_events.write
: accorde la permission de créer, de supprimer ou d’apporter des modifications aux informations relatives à un événement marketing.
Différences entre les points de terminaison d’ID interne et externe
De nombreux points de terminaison ci-dessous fournissent deux méthodes différentes pour identifier un événement que vous souhaitez récupérer ou mettre à jour. Bien que le résultat final pour des points de terminaison similaires puisse être le même, ils diffèrent principalement dans les ID associés que vous fournissez :- Points de terminaison utilisant des ID externes : les points de terminaison qui nécessitent les paramètres
externalEventId
etexternalAccountId
ne fonctionneront que dans l’application qui a créé l’événement à l’origine. Par exemple, si vous avez créé deux applications publiques, appelées App A et App B, et que vous avez créé un événement marketing via l’authentification et les ID associés à App A, seule App A peut lire, mettre à jour ou ajouter de nouveaux participants à l’événement. Si vous tentez d’accéder au même événement avec App B en utilisant les mêmes externalEventId et externalAccountId, une erreur 404 se produira. - Points de terminaison utilisant un objectId : les points de terminaison qui nécessitent un
objectId
peuvent être utilisés pour accéder à un événement par n’importe quelle application avec les domaines associés répertoriés dans la section ci-dessus, quelle que soit l’application qui a créé l’événement à l’origine. Si App A a créé un événement marketing, App B peut toujours lire, mettre à jour ou ajouter des participants via des points de terminaison basés surobjectId
.
Points de terminaison de gestion des événements
Les sections suivantes fournissent des informations contextuelles sur les propriétés d’événements courantes et expliquent comment utiliser les différents points de terminaison de gestion des événements pour créer, lire, mettre à jour et archiver des événements.Propriétés d’événement
Les propriétés suivantes sont disponibles pour la récupération et la mise à jour lors de l’utilisation des points de terminaison de gestion des événements :Paramètre | Type | Description |
---|---|---|
eventName | Chaîne | Le titre de votre événement. |
eventType | Chaîne | Le type de l’événement (par exemple, webinar, salon commercial, etc.). |
eventOrganizer | Chaîne | La personne ou l’organisation qui organise l’événement. |
eventDescription | Chaîne | Une description de votre événement. |
eventUrl | Chaîne | URL vers laquelle les utilisateurs peuvent naviguer pour obtenir plus de détails et/ou s’inscrire à votre événement. |
eventCancelled | Booléen | Si l’événement soit annulé ou non. |
eventStartTime | Chaîne | Un horodatage au format ISO 8601 de l’heure de fin de l’événement. |
eventEndTime | Chaîne | Un horodatage au format ISO 8601 de l’heure de fin de l’événement. |
Créer un événement
Pour créer un événement marketing, vous pouvez faire une requêtePOST
à /marketing/v3/marketing-events/events
et fournir les paramètres eventName
, externalEventId
, externalAccountId
et eventOrganizer
dans le corps de votre requête. Vous pouvez éventuellement fournir les propriétés supplémentaires répertoriées dans le tableau ci-dessus dans votre requête.
Par exemple, si la propriété externalAccountId
de votre application est "12345"
, et que la propriété externalEventId
de votre événement dans votre application est "67890"
, vous pouvez créer un nouvel événement appelé "Winter webinar"
avec une requête qui ressemblerait à ce qui suit :
Mettre à jour les propriétés d’événement à l’aide d’ID externes
Vous pouvez mettre à jour des événements marketing en effectuant une requêtePOST
au point de terminaison /marketing/v3/marketing-events/events/upsert
. Vous pouvez inclure n’importe quelle customProperties
avec d’autres détails de votre événement (y compris son nom, son heure de début et sa description).
Si un événement marketing existe déjà avec l’ID spécifié dans votre requête, il sera mis à jour. Sinon, un nouvel événement sera créé.
Par exemple, la requête suivante créera un événement avec un ID de 4
nommé « Cours de cuisine virtuel » :
Mettre à jour les propriétés d’un événement à l’aide de son objectId
Une fois qu’un événement est créé, vous pouvez mettre à jour ses propriétés en faisant une requêtePATCH
à /marketing/v3/marketing-events/{objectId}
.
- Pour obtenir la propriété
objectId
d’un événement marketing spécifique, suivez les instructions de cet article de la base de connaissances pour afficher les détails d’un événement dans votre compte HubSpot, puis recherchez l’ID dans le champ ID de fiche d’informations. La propriétéobjectId
sera également renvoyée dans la réponse lors de la création d’un événement. - Vous pouvez également faire une requête
GET
au point de terminaison/marketing/v3/marketing-events
décrit dans la section suivante. - Si vous avez la propriété
externalEventId
d’un événement, vous pouvez l’inclure comme chemin lorsque vous effectuez une requêteGET
à/marketing/v3/marketing-events/{externalEventId}/identifiers
. La réponse comprendra tous les événements marketing ainsi que les identifiants pertinents pour chaque événement (c’est-à-direobjectId
,appInfo
,marketingEventName
etexternalAccountId
).
Obtenir les détails d’évènement
Pour obtenir une liste de tous les événements marketing ainsi que leurs propriétés, exécutez une requêteGET
à /marketing/v3/marketing-events
.
Si vous avez besoin de récupérer les détails d’un événement marketing spécifique par son ID de fiche d’informations dans HubSpot, vous pouvez fournir l’ID comme objectId dans une requête GET
à /marketing/v3/marketing-events/{objectId}
.
Supprimer un événement
Pour supprimer un événement marketing, effectuez une requêteDELETE
à /marketing/v3/marketing-events/{objectId}
avec la propriété objectId
associée à l’événement.
En cas de succès, vous recevrez une réponse 204 No Content
.
Mettre à jour plusieurs événements en masse
Pour mettre à jour plusieurs événements marketing en masse, vous pouvez effectuer une requêtePOST
à /marketing-events/v3/marketing-events/batch/update
et fournir les propriétés que vous souhaitez mettre à jour pour chaque événement dans le tableau inputs du corps de la requête.
Par exemple, si vous souhaitez mettre à jour plusieurs propriétés de deux événements marketing avec des ID d’objet de 58237132332 et 54073507364 dans une seule requête, le corps de votre requête ressemblera à ce qui suit :
Points de terminaison de participation à l’événement
Les points de terminaison du statut de participation à l’événement vous permettent de créer une fiche d’informations sur les activités d’inscription d’un contact. Par exemple si le contact s’est inscrit, a assisté ou a annulé son inscription à votre événement. Vous pouvez utiliser ce point de terminaison pour enregistrer l’inscription d’un contact HubSpot à un événement marketing.Mettre à jour la participation à l’aide de la propriété objectId de l’événement
Si vous voulez utiliser la propriétéobjectId
d’un événement marketing, vous pouvez utiliser l’ID du contact pour lequel vous souhaitez enregistrer le statut de participation, ou utiliser son adresse e-mail.
- Pour utiliser l’ID d’un contact, effectuez une requête POST à
/marketing/v3/marketing-events/{objectId}/attendance/{subscribeState}/create
puis fournissez l’ID du contact à l’aide du champvid
dans le tableauinputs
du corps de votre requête. Par exemple, le corps de la requête ci-dessous fournit un exemple de mise à jour des données de participation pour un contact avec l’ID47733471576
, qui spécifie quand le participant a rejoint et quitté l’événement via les propriétésjoinedAt
etleftAt
:
- Pour utiliser l’adresse e-mail d’un contact, effectuez une requête POST à
/marketing/v3/marketing-events/{objectId}/attendance/{subscribeState}/email-create
puis fournissez l’adresse e-mail du contact à l’aide du champemail
dans le tableauinputs
du corps de votre requête.- Si vous créez un nouveau contact, vous pouvez inclure le champ
contactProperties
dans le tableauinputs
du corps de votre requête pour définir les propriétés associées au contact que vous venez de créer. Si le contact existe déjà, le champcontactProperties
fourni dans la requête ne sera pas mis à jour. - Par exemple, le corps de la requête ci-dessous fournit un exemple de mise à jour des données de participation pour un contact avec une adresse e-mail de
john@example.com
, qui spécifie quand le participant a rejoint et quitté l’événement via les champsjoinedAt
etleftAt
dans l’objetproperties
de votre tableauinputs
:
- Si vous créez un nouveau contact, vous pouvez inclure le champ
objectId
: l’ID de fiche d’informations de l’événement marketing dans votre compte HubSpot. Consultez la section ci-dessus pour plus de détails sur l’utilisation de la propriété objectId d’un événement par rapport à l’utilisation de ses ID externes.subscriberState
: une énumération qui correspond au nouveau statut de participation du contact.REGISTERED
: indique que le contact HubSpot s’est inscrit à l’événement.ATTENDED
: permet d’indiquer que le contact HubSpot a assisté à l’événement. Si vous mettez à jour le statut d’un contact vers ATTENDED, vous pouvez également inclure les horodatagesjoinedAt
etleftAt
comme paramètres dans le corps de la requête, spécifié dans le format ISO8601 Instant.CANCELLED
: indique que le contact HubSpot qui s’était préalablement inscrit à l’événement a annulé son inscription.
Mettre à jour la participation à l’aide des ID externes de l’événement
Remarque :
Si vous utilisiez auparavant les points de terminaison/upsert
ou /email-upsert
pour mettre à jour le statut d’un participant, vous pouvez utiliser les points de terminaison alternatifs répertoriés ci-dessous. Toutefois, par rapport aux points de terminaison de participation aux événements ci-dessus, l’utilisation de ces points de terminaison ne prendra pas en charge les éléments suivants :- Création d’un nouveau contact s’il n’existe pas déjà
- Affichage des événements de la chronologie sur la page de fiche d’informations d’un contact
- Spécification des propriétés
joinedAt
ouleftAt
- Affichage d’une réponse détaillée en cas de succès
externalEventId
depuis votre application, vous pouvez utiliser les ID de contact ou l’adresse e-mail des contacts existants :
- Si vous souhaitez utiliser les ID des contacts existants :
- Exécutez une requête
POST
à/marketing/v3/marketing-events/attendance/{externalEventId}/{subscriberState}/create
en utilisant l’ID de l’événement de votre application externe en tant que propriétéexternalEventId
. - Dans le corps de la requête, fournissez un objet
inputs
qui comprend les champs suivants :interactionDateTime
: la date et l’heure auxquelles le contact s’est inscrit à l’événement.vid
: l’ID d’un contact existant.
- Exécutez une requête
- Si vous souhaitez utiliser l’adresse e-mail d’un des participants à l’événement :
- Exécutez une requête
POST
à/marketing/v3/marketing-events/attendance/{externalEventId}/{subscriberState}/email-create
. - Dans le corps de la requête, fournissez un objet
inputs
qui comprend les champs suivants :interactionDateTime
: la date et l’heure auxquelles le contact s’est inscrit à l’événement.email
: l’adresse e-mail du participant en tant que valeur du champ d’adresse e-mail dans une entrée.
- Si l’adresse e-mail que vous incluez ne correspond pas à l’adresse d’un contact existant, un nouveau contact sera créé.
- Exécutez une requête
externalEventId
: l’identifiant de l’événement marketing. Consultez la section ci-dessus pour plus de détails sur l’utilisation de la propriété objectId d’un événement par rapport à l’utilisation de ses ID externes.subscriberState
: une énumération qui correspond au nouveau statut de participation du contact.REGISTERED
: indique que le contact HubSpot s’est inscrit à l’événement.ATTENDED
: permet d’indiquer que le contact HubSpot a assisté à l’événement. Si vous mettez à jour le statut d’un contact vers ATTENDED, vous pouvez également inclure les horodatagesjoinedAt
etleftAt
comme paramètres dans le corps de la requête, spécifié dans le format ISO8601 Instant.CANCELLED
: indique que le contact HubSpot qui s’était préalablement inscrit à l’événement a annulé son inscription.
Remarque :
Ces API sont idempotentes tant que l’ID du contact et la valeurinteractionDateTime
dans l’événement n’ont pas changé. Cela vous permet de définir en toute sécurité le statut de participation plusieurs fois sans que HubSpot ne crée d’événements en double dans les propriétés des événements marketing.Points de terminaison du statut du participant
Vous pouvez utiliser les points de terminaison de participation pour récupérer les données des participants à vos événements marketing. Vous pouvez interroger des données telles que des indicateurs agrégés pour un événement spécifique, ainsi que des données de participation pour un contact ou un événement spécifique. Consultez les points de terminaison de participation disponibles ci-dessous. Pour obtenir une référence complète de tous les paramètres disponibles pour chaque point de terminaison, consultez la documentation de référence.Remarque :
Le nombre d’activités indiqué sur la page des événements marketing de votre compte HubSpot peut différer des indicateurs agrégés correspondants du point de terminaison d’API des compteurs de participation.Par exemple, si un participant s’est inscrit à un événement, puis l’a annulé, puis s’est réinscrit au même événement, chacune de ces activités sera incluse dans les totaux que vous voyez dans l’interface utilisateur des événements marketing de votre compte. Si vous utilisez les points de terminaison du statut du participant ci-dessous, seul le statut actuel d’un participant est inclus dans le compteur associé pour cet indicateur (par exemple :attended
, registered
, cancelled
ou noShows
).Lire les participations pour un contact spécifique
Pour obtenir des données de participation à des événements pour un contact spécifique, effectuez une requêteGET
à /marketing/v3/marketing-events/participations/contacts/{contactIdentifier}/breakdown
, en utilisant l’ID ou l’adresse e-mail du contact comme paramètre de chemin contactIdentifier
.
La réponse comprendra un résumé de la participation du contact à l’événement dans le champ properties
:
Lire les données de répartition de la participation
Pour obtenir une répartition des données de participation à un événement spécifique, utilisez votreexternalAccountId
et le externalEventId
de votre événement pour faire une requête GET
à /marketing/v3/marketing-events/participations/{externalAccountId}/{externalEventId}/breakdown
.
Lire les compteurs de participation
Pour obtenir un récapitulatif agrégé de la participation à un événement, utilisez votreexternalAccountId
et le externalEventId
de votre événement pour faire une requête GET
à /marketing/v3/marketing-events/participations/{externalAccountId}/{externalEventId}
.
La réponse comprendra le nombre total de participants :
Filtrer les données de répartition de la participation
Lorsque vous récupérez des données de répartition ou des données de participation à un événement pour un contact spécifique, vous pouvez filtrer les données résultantes en utilisant les champs contactIdentifier, statut, limite ou après comme paramètres de requête dans votre requête.Paramètre de requête | Type | Description |
---|---|---|
contactIdentifier | Chaîne | L’adresse e-mail ou l’ID d’un contact spécifique |
state | Énumération | Le statut de participation de l’événement Les statuts de participation possibles sont les suivants :
|
limit | Nombre | Permet de limiter le nombre de résultats renvoyés. Par défaut, la limite est fixée à 10. La fourchette valide est comprise entre 1 et 100. |
after | Nombre | Permet de paginer entre les résultats de la réponse. Consultez le décalage fourni à la page précédente des données de réponse pour déterminer le prochain indice de résultats à renvoyer. |
Points de terminaison des associations de listes
Vous pouvez utiliser les points de terminaison décrits dans les sections ci-dessous pour gérer les associations entre vos listes et vos événements marketing. La plupart de ces points de terminaison nécessitent un champlistId
en tant que paramètre de chemin, que vous trouverez sur la page des détails de la liste dans votre compte HubSpot :
- Dans votre compte HubSpot, naviguez vers CRM > Listes.
- Cliquez sur le nom d’une liste.
- Dans l’angle supérieur droit, cliquez sur Détails.
- Dans le panneau de droite, l’ID de liste apparaîtra sous ID de liste à utiliser pour les intégrations d’API. Vous pouvez cliquer sur Copier l’ID de liste pour copier l’ID dans le presse-papiers.

- Dans votre compte HubSpot, accédez à CRM > Contacts.
- En haut à gauche, cliquez sur Contacts et dans le menu déroulant, sélectionnez Événements marketing.
- Cliquez sur le nom d’un événement marketing.
- Dans l’onglet Performances, cliquez sur Listes pour développer la section, puis sur l’onglet Listes ajoutées par le biais des associations.

Créer une association de liste avec un ID d’événement marketing
Pour créer une association entre un événement marketing et une liste existante, exécutez une requêtePUT
à /marketing/v3/marketing-events/associations/{marketingEventId}/lists/{listId}
.
En cas de succès, vous recevrez une réponse 204 No content
.
Créer une association de liste avec des ID d’événement et de compte externes
Pour créer une nouvelle association entre un événement marketing et une liste existante en utilisant l’ID de compte externe et l’ID d’événement externe, exécutez une requêtePUT
à /marketing/v3/marketing-events/associations/{externalAccountId}/{externalEventId}/lists/{listId}
.
En cas de succès, vous recevrez une réponse 204 No content
.
Obtenir des listes associées à un événement marketing en utilisant un ID d’événement marketing
Pour obtenir toutes les listes associées à un événement marketing, exécutez uneGET
requête à /marketing/v3/marketing-events/associations/{marketingEventId}/lists
.
La réponse sera au format suivant :
Obtenir des listes associées à un événement en utilisant des ID d’événement et de compte externes
Vous pouvez également obtenir des listes associées à un événement marketing en utilisant un ID de compte externe et l’ID d’événement externe. Exécutez une requêteGET
à /marketing/v3/marketing-events/associations/{externalAccountId}/{externalEventId}/lists
.
Supprimer l’association de liste en utilisant un ID d’événement marketing
Pour supprimer une association de liste pour un événement marketing en utilisant un ID d’événement marketing, exécutez une requêteDELETE
à /marketing/v3/marketing-events/associations/{marketingEventId}/lists/{listId}
.
En cas de succès, vous recevrez une réponse 204 No content
.
Supprimer l’association de liste à l’aide d’ID d’événement et de compte externes
Pour supprimer une association de liste pour un événement marketing utilisant l’ID de compte externe et un ID d’événement externe, exécutez une requêteDELETE
à /marketing/v3/marketing-events/associations/{externalAccountId}/{externalEventId}/lists/{listId}
.
En cas de succès, vous recevrez une réponse 204 No content
.
Configurer les paramètres d’application
Une certaine configuration est requise pour permettre aux événements marketing de se synchroniser correctement avec HubSpot. Si vous envoyez à HubSpot un changement de statut de participation (par exemple, une inscription ou une annulation), HubSpot vérifiera d’abord si un événement marketing existe pour l’ID d’événement spécifié. Si ce n’est pas le cas, HubSpot appellera le point de terminaison configuré pour votre application afin de récupérer les détails de l’événement marketing, puis créera l’événement dans HubSpot et publiera le changement de statut de participation. Ceci est fourni pour des raisons de commodité ; cependant, il est toujours recommandé que vous créiez vous-même les événements marketing via les méthodes CRUD, fournies dans la documentation de référence , sans vous appuyer sur cette fonctionnalité pour créer vos événements marketing dans HubSpot.Étape 1 : Créer une API dans votre application
Pour ce faire, HubSpot exige que chaque application qui utilise des événements marketing définisse une API pour récupérer des informations sur un événement marketing spécifique. Exigences :- Accepte :
externalAccountId
: un paramètre de requête spécifiant accountId pour le client dans l’application externe.appId
: le paramètre de requête qui spécifie l’ID de l’application HubSpot qui demande les détails de l’événement. Il s’agira de l’ID de votre application.externalEventId
: paramètre de chemin dans l’URL de la requête qui spécifie l’ID de l’événement dans l’application externe sur laquelle HubSpot nécessite des détails.
- Renvoie :
- Un objet JSON qui fournit les détails de l’événement marketing, qui comprend les champs suivants détaillés dans le tableau ci-dessous :
Nom du champ | Obligatoire | Type | Description du champ |
---|---|---|---|
eventName | true | Chaîne | Le nom de l’événement marketing. |
eventOrganizer | true | Chaîne | Le nom de l’organisateur de l’événement marketing. |
eventType | false | Chaîne | Permet de décrire le type d’événement concerné. Par exemple : WEBINAR , CONFERENCE , WORKSHOP |
startDateTime | false | Chaîne($date-time) | La date et l’heure de début de l’événement marketing. |
endDateTime | false | Chaîne($date-time) | La date et l’heure de fin de l’événement marketing. |
eventDescription | false | Chaîne | La description de l’événement marketing. |
eventUrl | false | Chaîne | Une URL dans l’application d’événement externe vers l’événement marketing. |
eventCancelled | false | Booléen | Indique si l’événement marketing a été annulé. La valeur par défaut est false |
X-HubSpot-Signature-v3
que vous pouvez utiliser pour vérifier que la requête provient de HubSpot. Découvrez-en davantage sur les signatures de requête pour plus de détails sur la signature et comment la valider.
Étape 2 : Fournir à HubSpot le chemin d’URL vers votre API
Maintenant que vous avez créé l’API dans votre application qui renverra un objet fournissant les détails d’un événement marketing spécifique, vous devez fournir à HubSpot le chemin d’URL de votre API en effectuant une requêtePOST
a /marketing/v3/marketing-events/{appId}/settings
. Cela permettra à HubSpot de déterminer comment faire des requêtes à votre application pour obtenir les détails d’un événement marketing.
Dans le corps de votre requête POST
, spécifiez votre URL à l’aide du champ eventDetailsURL
. La propriété eventDetailsURL
doit répondre aux deux exigences suivantes :
- Elle doit contenir au moins une séquence de caractères
%s
, que HubSpot utilise pour remplacer dans l’ID de l’événement (externalEventId
) comme paramètre de chemin d’accès. - Il doit s’agir du chemin complet vers la ressource API, y compris le préfixe
https://
et le nom de domaine (par exemple :my.event.app
).
eventDetailsURL
de https://my.event.app/events/%s
et que vous devez faire une requête pour récupérer les détails d’un événement avec l’ID 1234-event-XYZ
, pour l’application HubSpot avec l’ID app-101
et le compte avec l’ID ABC-account-789
, HubSpot fera une requête GET
à :
https://my.event.app/events/1234-event-XYZ?appId=app-101&externalAccountId=ABC-account-789