Propriétés

Utilisez les propriétés pour stocker des informations sur les fiches d'informations du CRM. HubSpot fournit un ensemble de propriétés par défaut pour chaque objet de CRM. Vous pouvez également créer et gérer vos propres propriétés personnalisées dans HubSpot ou à l'aide de l'API de propriétés. 

Lors de la création de propriétés, il est important de réfléchir à l'architecture de vos données. Dans de nombreux cas, la création de propriétés personnalisées pour les objets standard de HubSpot est la bonne marche à suivre. Cependant, vous devrez parfois créer un objet personnalisé distinct avec son propre ensemble de propriétés.

Propriétés par défaut

Les objets de CRM sont définis par un type principal et un ensemble de propriétés. Chaque type contient un ensemble de propriétés standards, représenté par une carte de noms et de valeurs. 

Découvrez-en davantage sur les propriétés par défaut pour différents objets :

Groupes de propriétés

Les groupes de propriétés sont utilisés pour regrouper des propriétés associées. Toutes les propriétés regroupées apparaîtront les unes à côté des autres sur les fiches d'informations HubSpot. Si votre intégration crée des propriétés d'objets personnalisés, une propriété personnalisée facilitera l'identification de ces données.

Type de propriété et valeurs fieldType

Lorsque vous créez ou mettez à jour des propriétés, les valeurs type et fieldType sont obligatoires. La valeur type détermine le type de propriété, c'est-à-dire une chaîne ou un nombre. La propriété fieldType détermine la façon dont la propriété apparaîtra dans HubSpot ou sur un formulaire, c'est-à-dire en tant que champ de texte brut, menu déroulant ou sélecteur de dates.

Dans le tableau ci-dessous, découvrez les valeurs de propriété type et fieldType disponibles.

Valeurs valides pour le champ type et les valeurs fieldType compatibles
type Description Valeurs fieldType valides
bool Champ contenant des options binaires (par exemple, Oui ou Non, Vrai ou Faux). booleancheckbox, calculation_equation
enumeration Une chaîne représentant un ensemble d'options séparées par un point-virgule. booleancheckbox, checkbox, radio, select, calculation_equation
date Une valeur représentant un jour, un mois et une année spécifiques. Les valeurs doivent être représentées au format UTC et peuvent être formatées sous forme de chaînes ISO 8601 ou d'horodatages EPOCH en millisecondes (c.-à-d. minuit UTC). date
dateTime Une valeur représentant un jour, un mois, une année et une heure spécifiques. L'application HubSpot n'affichera pas l'heure. Les valeurs doivent être représentées au format UTC et peuvent être formatées sous forme de chaînes ISO 8601 ou d'horodatages UNIX en millisecondes. date
string Une chaîne de texte brut limitée à 65 536 caractères. file, text, textarea, calculation_equation, html, phonenumber
number Une valeur numérique contenant des chiffres et au maximum une décimale. number, calculation_equation

Valeurs valides pour fieldType :

FieldtypeDescription
booleancheckbox

Une entrée qui permet aux utilisateurs de sélectionner Oui ou Non. Lorsque vous l'utilisez dans un formulaire, cette case sera affichée comme une case à cocher unique. Découvrez comment ajouter une valeur aux propriétés de case à cocher unique.

calculation_equation

Une équation personnalisée qui peut calculer des valeurs en fonction d'autres valeurs de propriété et/ou d'associations. Découvrez comment définir des propriétés de calcul.

case à cocher

Une liste de cases à cocher qui permettent à un utilisateur de sélectionner plusieurs options à partir d'un ensemble d'options pour la propriété. Découvrez comment formater des valeurs lors de la mise à jour de propriétés avec plusieurs cases à cocher.

date

Une valeur de date, affichée comme un sélecteur de date.

file

Permet de charger un fichier dans un formulaire. Stocké et affiché en tant que lien d'URL vers le fichier.

html

Une chaîne, restituée dans un format HTML nettoyé, qui permet l'utilisation d'un éditeur de texte enrichi pour la propriété.

number

Une chaîne de chiffres ou de nombres sous forme décimale ou en notation scientifique.

phonenumber

Une chaîne de texte brut affichée comme un numéro de téléphone formaté.

radio

Une entrée qui permet aux utilisateurs de sélectionner l'une des options autorisées pour la propriété. Lorsque vous l'utilisez dans un formulaire, elle sera affichée comme un ensemble de cases d'option.

select

Une entrée déroulante qui permet aux utilisateurs de sélectionner l'une des options autorisées pour la propriété.

texte

Une chaîne de texte brut, affichée dans une entrée de texte sur une seule ligne.

textarea

Une chaîne de texte brut, affichée dans une entrée de texte sur plusieurs lignes.

Créer des propriétés d'identifiant unique

Lorsqu'une fiche d'informations est créée dans HubSpot, un ID de fiche d'informations (hs_object_id) est généré automatiquement et doit être considéré comme une chaîne. Ces ID sont uniques pour chaque type d'objet seulement. Un contact et une entreprise peuvent donc avoir le même ID. Pour les contacts et les entreprises, il existe des identifiants uniques supplémentaires, y compris l'adresse e-mail (email) d'un contact et le nom de domaine (domain) d'une entreprise.

Dans certains cas, vous pouvez créer votre propre propriété d'identifiant unique afin qu'il ne soit pas possible de saisir la même valeur pour plusieurs fiches d'informations. Vous pouvez avoir jusqu'à dix propriétés d'ID unique par objet. Pour créer une propriété nécessitant des valeurs uniques via l'API :

  • Effectuez une demande POST à /marketing/v3/marketing-events/attendance/{externalEventId}/{subscriberState}/email-create.
  • Dans le corps de votre demande, pour le champ hasUniqueValue, définissez la valeur sur true.
/// Example request body { "groupName": "dealinformation", "name":"system_a_unique", "label": "Unique ID for System A", "hasUniqueValue": true, "type": "string", "fieldType": "text" }

Une fois votre propriété d'ID unique créée, vous pouvez l'utiliser dans un appel d'API pour récupérer des fiches d'informations spécifiques. L'URL de la demande pourrait ressembler à ceci : GET https://api.hubapi.com/crm/v3/objects/deals/abc?idProperty=system_a_unique. Cela renverra la transaction avec la valeur abc dans le champ system_a_unique.

Vous pouvez ensuite utiliser cette valeur de propriété d'identifiant unique pour identifier et mettre à jour des fiches d'informations spécifiques de la même manière que vous pouvez utiliser hs_object_id, email (contacts) ou domain (entreprises).

Créer des propriétés calculées

Les propriétés calculées définissent une valeur de propriété en fonction d'autres propriétés dans la même fiche d'informations d'objet. Elles sont définies à l'aide d'une formule, qui peut inclure des opérations telles que le minimum, le maximum, le compte, la somme ou la moyenne. Vous pouvez utiliser l'API de propriétés pour lire ou créer des propriétés calculées dans votre compte HubSpot, en utilisant un type de champ calculation_equation et un type number, bool, string ou enumeration.

Vous pouvez définir la formule de calcul de la propriété avec le champ calculationFormula.

Remarque : Les propriétés de calcul créées via l'API ne peuvent pas être modifiées dans HubSpot. Vous pouvez modifier ces propriétés uniquement via l'API des propriétés.

Syntaxe des propriétés calculées

À l'aide de calculationFormula, vous pouvez écrire votre formule avec des opérateurs arithmétiques, des opérateurs de comparaison, des opérateurs logiques, des instructions conditionnelles et d'autres fonctions.

Syntaxe littérale

  • Chaîne littérale : les chaînes constantes peuvent être représentées avec des guillemets simples ('constant') ou des guillemets doubles ("constant").
  • Nombre littéral : les nombres constants peuvent être n'importe quel nombre réel et peuvent inclure une notation ponctuelle. 1005 et 1.5589 sont des nombres constants valides.
  • Booléen littéral : les booléens constants peuvent être true ou false.

Syntaxe de propriété

  • Variables de propriétés de chaîne : pour qu'une chaîne d'identificateurs soit interprétée comme une propriété de chaîne, elle doit être encadrée dans la fonction string. Par exemple, string(var1) sera interprété comme la valeur de la propriété de chaîne var1.
  • Variables de propriétés numériques : tous les identifiants seront interprétés comme des variables de propriétés numériques.  Par exemple, var1 sera interprété comme la valeur de la propriété numérique var1.
  • Variables de propriétés booléennes : pour qu'un identifiant soit interprété comme une propriété booléenne, il doit être encadré dans la fonction bool. Par exemple, l'identifiant bool(var1) sera interprété comme la valeur de la propriété booléenne var1.

Remarque : Le texte utilisé est sensible à la casse pour tous les types, à l'exception des chaînes. Par exemple, If A ThEn B est exactement identique à if a then b, mais 'a' est différent de 'A'. Les espaces, les onglets et les nouvelles lignes seront utilisés pour la tokenisation, mais seront ignorés.

Opérateurs

Les opérateurs peuvent être utilisés avec des valeurs littérales et de propriété. Pour les opérateurs arithmétiques, vous pouvez utiliser la notation de préfixe pour multiplier et la parenthèse peut être utilisée pour spécifier l'ordre des opérations.

OpérateurDescriptionExamples
+
Add numbers or strings.

property1 + 100

-
Subtract numbers.property1 + 100 - property2
*
Multiply numbers. 10property1 = 10 * property1
/
Divide numbers.property1 * (100 - property2/(50 - property3))
<
Checks if a value is less than another. Supported by number properties or constants.a < 100
&gt;
Checks if a value is greater than another. Supported by number properties or constants.a > 50
&lt;=
Checks if a value is less than or equal to another. Supported by number properties or constants.a <= b
&gt;=
Checks if a value is greater than or equal to another. Supported by number properties or constants.

b>= c

=
Checks if a value is equal to another. Supported by both numbers and strings.(a + b - 100c * 150.652) = 150-230b
equals
Checks if a value is equal to another. Supported by both numbers and strings.a + b - 100.2c * 150 equals 150 - 230
!=
Checks if a value is not equal to another. Supported by both numbers and strings.string(property1) != 'test_string'
or
Checks if either or two values are true. a > b or b <= c
and
Checks if both values are true.bool(a) and bool(c)
not
Checks if none of the values are true.not (bool(a) and bool(c))

Fonctions

Les fonctions suivantes sont prises en charge :

Use this table to describe parameters / fields
FonctionDescriptionExamples
max
Will have between 2 and 100 input numbers, and will return the maximum number out of all the inputs.max(a, b, c, 100) or max(a, b)
min
Will have between 2 and 100 input numbers, and will return the minimum number of out all the inputs.

min(a, b, c, 100) or min(a, b)

is_present
Evaluates whether an expression can be evaluated.

is_present(bool(a))= true si la propriété est booléenne, mais is_present(bool(a)) = false si la propriété est vierge ou non booléenne.

contains
Has two strings as inputs and will return true if the first input contains the second.

contains('hello', 'ello') = true, tandis que contains('ello', 'hello') = false.

concatenate
Joins a list of strings. The list of inputs can go from 2 up to 100.

concatenate('a', 'b', string(a), string(b))

Il existe également deux fonctions d'analyse :

  • number_to_string : tente de convertir l'expression numérique d'entrée en chaîne.
  • string_to_number : tente de convertir l'expression de chaîne d'entrée en nombre.

Par exemple, "Nombre de voitures: " + nom_voitures n'est pas une propriété valide car vous ne pouvez pas ajouter une chaîne avec un nombre, mais "Nombre de voitures: " + number_to_string(nom_voitures) est valide.

Fonctions conditionnelles

Vous pouvez également saisir votre formule avec des fonctions conditionnelles en utilisant if, elseif, endif et else.

Par exemple, une fonction conditionnelle pourrait ressembler à : if boolean_expression then statement [expression elseif, puis condition]* [condition else | endif], où les crochets [a] indiquent que a est facultatif, a|b indique que a ou b fonctionnera, et * signifie 0 ou plus. endif peut être utilisé pour terminer une fonction conditionnelle prématurément, en veillant à ce que l'analyseur puisse identifier à quel élément if le prochain élément elseif appartient. 

Exemples de formules

Voici des exemples que vous pouvez utiliser pour vous aider à définir vos propres formules de calcul :

//Example formula "calculationFormula": "closed - started"

Un exemple plus avancé avec des conditions :

//Example formula "calculationFormula": "if is_present(hs_latest_sequence_enrolled_date) then if is_present(hs_sequences_actively_enrolled_count) an hs_sequences_actively_enrolled_count >= 1 then true else false else ''"

Mettre à jour ou effacer les valeurs d'une propriété

Une fois que vous avez défini des propriétés, vous pouvez mettre à jour leurs valeurs pour vos fiches d'informations via les API d'objet.Découvrez ci-dessous comment formater les valeurs pour des types de champs de propriété spécifiques et comment effacer des valeurs de propriété.

Ajouter des valeurs à des propriétés de case à cocher

Lors de la mise à jour des valeurs pour les propriétés de case à cocher d'une fiche d'informations, formatez les valeurs selon les modalités suivantes :

  • Propriété de case à cocher booléenne : pour afficher comme Oui ou cochée dans HubSpot, votre valeur doit être true. Pour afficher comme Non ou non cochée dans HubSpot, votre valeur doit être false.
  • Propriété de case à cocher à sélection multiple : pour ajouter ou joindre des valeurs à une propriété à plusieurs cases à cocher, ajoutez un point-virgule avant la première valeur et entre chaque valeur supplémentaire. Si la propriété possède une valeur existante, le point-virgule principal ajoutera les valeurs au lieu de les remplacer. Par exemple, un contact a la valeur existante DECISION_MAKER pour la propriété hs_buying_role. Pour ajouter des valeurs supplémentaires sans remplacer la valeur existante, votre demande ressemblera à ceci :
///Example body for PATCH request to /crm/v3/objects/contacts/{contactId} { "properties": { "hs_buying_role": ";BUDGET_HOLDER;END_USER" }}

Attribuer des propriétaires de fiche d'informations à des propriétés d'utilisateur

Lorsque vous attribuez des utilisateurs à des fiches d'informations de CRM via l'API, votre valeur doit être l'élément id du propriétaire de l'utilisateur, que vous pouvez trouver dans les paramètres de votre propriété ou via l'API des propriétaires. Par exemple, pour affecter un utilisateur en tant que propriétaire d'un contact, effectuez une demande PATCH à crm/v3/objects/contacts/{contactId}, avec le corps { "properties" :{ "hubspot_owner_id" : "41629779"}}.

Effacer une valeur de propriété

Vous pouvez effacer la valeur d'une propriété d'objet via l'API en définissant la valeur de la propriété sur une chaîne de caractères vide.

Par exemple, pour effacer firstname d'un objet de contact, envoyez une demande PATCH à https://api.hubapi.com/crm/v3/objects/contacts/{contactId} avec le corps { "properties": { "firstname": ""} }.


Cet article vous a-t-il été utile ?
Ce formulaire est destiné à recueillir les avis sur la documentation pour les développeurs. Si vous souhaitez faire part de votre avis sur les produits HubSpot, veuillez le partager sur le forum des idéesde la communauté.