Structure du projet
Dans le contexte d’un projet, vous placerez les définitions des types d’événements dans un répertoireapp-events sous app/. Le répertoire app-events doit contenir un fichier de définition de schéma JSON pour chaque type d’événement (*-hsmeta.json).
- Votre application doit utiliser l’authentification OAuth et être configurée pour la distribution sur le marketplace des applications. En outre, l’application doit inclure
timelinedans sonrequiredScopes. Découvrez-en davantage sur la configuration de l’application. - Votre projet doit être correctement déployé avant de pouvoir inclure un composant d’événement d’application.
Schéma de type d’événement
Voici les options de configuration disponibles pour les schémas de type d’événement (*-hsmeta.json). Notez que certains des attributs ci-dessous ne peuvent pas être modifiés après la création du type d’événement.
Les champs marqués par * sont requis.
Propriétés d’événement
Lors de la définition du schéma d’événement, utilisez le tableauproperties pour définir les champs vers lesquels vous enverrez les données d’occurrence d’événement. Chaque type d’événement peut avoir jusqu’à 500 propriétés.
Les champs marqués par * sont requis.
Horodatage de propriété
Dans certains cas, vous souhaiterez peut-être modifier les valeurs des propriétés de la fiche d’informations CRM en fonction des données d’occurrence d’événement de l’application. Par exemple, vous pouvez vouloir mettre à jour le prénom et le nom de famille d’un contact avec de nouvelles valeurs définies par l’occurrence (par exemple, soumission de formulaire). Pour mettre à jour les propriétés des fiches d’informations CRM via des occurrences d’événement, vous pouvez lier une propriété d’événement à une propriété CRM dans le schéma de type d’événement. Dans les champs de définition d’une propriété d’événement donnée, incluez le champobjectPropertyName et précisez la propriété CRM à associer. Une fois qu’une propriété est liée, HubSpot mettra toujours à jour la valeur de la propriété sur la fiche d’informations CRM en utilisant la valeur de l’occurence la plus récente en fonction du champ timestamp.
Par exemple, le schéma de type d’événement ci-dessous associe la propriété d’événement customerName à une propriété de contact personnalisée nommée custom_property_name. Lorsque les données d’occurrence d’événement incluent une valeur pour customerName, custom_property_name sera mise à jour pour la fiche d’informations CRM associée.
Modèles de rendu
Les schémas de type d’événement peuvent inclure les champsheaderTemplate et detailTemplate pour configurer le rendu des occurrences d’événement sur les chronologies des fiches d’informations CRM.
headerTemplate: une description d’une ligne de l’événement en haut de la carte d’activité (jusqu’à 1 000 caractères).detailTemplate: les détails de l’événement dans le corps de la carte d’activité (jusqu’à 10 000 caractères).
- Dans les deux modèles, vous pouvez accéder à toutes données de
propertytransmises par l’occurrence d’événement à l’aide de la syntaxe{{propertyName}}. - Dans le
detailTemplate, vous pouvez également accéder aux valeursextraDatatransmises par l’occurrence d’événement à l’aide de la syntaxe{{extraData.fieldName}}. Vous pouvez accéder à n’importe quel niveau d’attribut en notation par pointsextraData, tel que{{extraData.person1.preferredName}}.
customerName et loginLocation, ainsi que le champ surveyData de extraData envoyé via l’occurrence d’événement.
detailTemplate inclut l’assistant #if pour effectuer une restitution conditionnelle du contenu selon que les données d’occurrence d’événement incluent ou non le champ surveyData dans extraData.
- Si
extraDatacontientsurveyData, afficher les réponses à l’enquête après connexion. - En l’absence de
surveyDatalors de l’occurrence de l’événement, afficherNo additional information..
Utilisation d’iframes
Lorsque les données d’occurrence d’événement contiennent le champtimelineIFrame, la carte d’activité de la chronologie inclura un lien hypertexte sur lequel les utilisateurs pourront cliquer pour ouvrir le contenu lié dans un iframe.
Occurrence de l’événement
Pour envoyer des occurrences d’événements pour un type d’événement donné, effectuez une requêtePOST aux points de terminaison ci-dessous. L’API d’événements d’application comprend des points de terminaison pour l’envoi d’occurrences d’événements uniques et de lots d’occurrences de plusieurs événements. Pour les deux points de terminaison, les données d’occurrence d’événement devront être validées par rapport à un schéma de type d’événement existant, que vous indiquerez eventTypeName dans le corps de la requête.
- Envoyer une occurrence unique
- Envoyer un lot d'occurrences
Pour envoyer une occurrence d’événement unique, effectuez une requête
POST à /integrators/timeline/v4/events.Dans le corps de la requête, incluez les données d’occurrence d’événement, en respectant le schéma défini du type d’événement.eventTypeName, que vous pouvez récupérer via l’API.
Les champs marqués par * sont requis.
Si certaines occurrences ne sont pas validées, les occurrences validées avec succès seront toujours acceptées et persistées. Le message d’erreur dans la réponse fournira des informations sur ce que vous devrez corriger.
Association des fiches d’informations CRM
Chaque événement doit être associé à une fiche d’informations CRM, le type d’objet CRM étant défini par le schéma de type d’événement. L’API des événements de l’application comprend plusieurs champs pour associer les données d’occurrence d’événement aux fiches d’informations CRM. Pour tous les objets CRM pris en charge, il est recommandé d’utiliser le champobjectId. Cependant, dans certaines situations, vous souhaiterez peut-être utiliser les autres champs.
utk/email: si vous ne connaissez pas l’ID du contact, utilisez le champutket/ouemailpour l’identification. Fournir ces deux identifiants vous permet également de créer et de mettre à jour des contacts. Par exemple :- Si
utkcorrespond à un contact existant mais que l’emailne correspond pas, HubSpot mettra à jour le contact avec la nouvelle adresse e-mail. - Si aucun
objectIdn’est fourni, l’occurrence de l’événement sera associée à un contact existant correspondant àutk/email, ou HubSpot créera un nouveau contact si aucune correspondance n’est trouvée. - Notez que le
utkseul ne peut pas créer de nouveaux contacts. Vous devez toujours inclure l’emailavecutkpour garantir une bonne association.
- Si
domain: pour l’association d’entreprises, vous devez fournir l’objectId, mais vous pouvez également l’inclure ledomainpour mettre à jour la propriété dedomainde cette entreprise.