HubDB

Last updated:
APPLICABLE PRODUCTS
  • Marketing Hub
    • Enterprise
  • CMS Hub
    • Professional or Enterprise

HubDB est un outil qui vous permet de créer des tableaux pour stocker des données dans des lignes, des colonnes et des cellules, un peu comme dans une feuille de calcul. Vous pouvez personnaliser les colonnes, les lignes et les autres paramètres d'un tableau HubDB en fonction de vos besoins.

Les tableaux HubDB sont accessibles à la fois dans HubSpot et via l'API HubDB. Par exemple, vous pouvez utiliser un tableau HubDB pour stocker les commentaires d'un mécanisme externe et les récupérer ultérieurement.

hubdb-table-example0Les données HubDB peuvent ensuite être récupérées de plusieurs façons, en fonction de votre cas d'utilisation. Pour obtenir des données d'un tableau HubDB, vous pouvez :

  • Interroger les données en externe via l'API HubDB.
  • Utiliser les balises HubL de HubSpot pour transférer les données dans le CMS.
  • Utiliser l'API HubDB avec des fonctions sans serveur pour offrir une expérience d'application web interactive.

Remarque : Si vous avez un compte Marketing Hub Entreprise, vous pouvez utiliser HubDB pour restituer le contenu des e-mails marketing. Cependant, vous ne pouvez pas utiliser les propriétés de contact pour filtrer les tableaux HubDB dans les e-mails. 

Pour utiliser les données HubDB dans les pages, vous avez besoin de CMS Hub Pro ou Entreprise.

Accéder à HubDB

Il existe deux types d'accès que vous pouvez attribuer à un utilisateur afin qu'il puisse utiliser HubDB. Ces deux paramètres sont situés dans la zone des autorisations de l'utilisateur. Pour attribuer un accès, accédez à Paramètres > Utilisateurs et équipes, puis passez la souris sur un utilisateur. Ensuite, choisissez Modifier dans le menu des actions.

Limites techniques HubDB

  • 10 000 lignes par tableau HubDB.
  • 1 000 tableaux HubDB par compte.
  • 10 analyses de tableau par page CMS. Défini comme un appel unique à hubdb_table_rows()
  • Limites générales de l'API de HubSpot
  • Les HubDB dont les pages dynamiques sont activées doivent avoir des chemins en minuscules. Ainsi, les URL de ces pages ne sont pas sensibles à la casse.

Création de votre premier tableau

Ouvrez l'application de l'éditeur HubDB et cliquez sur le bouton Créer un tableau (ou utilisez les API pour créer un tableau).
Remarque : Tous les nouveaux tableaux créés ont le statut de brouillon. Ils ne peuvent pas être utilisés pour sortir des données via HubL ou l'API tant que vous n'avez pas publié le tableau.

Créez un nouveau tableau HubDB en cliquant sur le bouton Créer un tableau.

Définir les autorisations de votre tableau

Vous pouvez gérer les paramètres de vos tableaux HubDB en cliquant sur Actions, puis Gérer les paramètres. Les paramètres suivants sont disponibles :

  • Autoriser l'accès API public : [Activé par défaut] Lorsque cette option est désactivée, le contenu de votre tableau ne peut être consulté que dans l'application ou avec des API authentifiées. Lorsque cette option est activée, votre tableau peut être interrogé par des API non authentifiées.
  • Activez la création de pages dynamiques à l'aide de données de lignes : Avec les pages dynamiques, vous pouvez aussi créer une page pour chaque ligne de votre tableau. En activant cette option, vous pourrez alors sélectionner les colonnes de votre tableau HubDB qui serviront de source pour votre méta-description, votre image en vignette et votre URL canonique.
Comment accéder à la zone des paramètres de votre table.

Architecture HubDB

Tableaux

Un tableau est un arrangement bidimensionnel de lignes et de colonnes. Lorsqu'un tableau est créé, il reçoit un identifiant unique qui peut être utilisé pour l'identifier. 

Lignes

Les rangées sont des tranches horizontales d'un tableau. Toutes les valeurs d'une ligne sont liées, généralement à un identifiant principal unique. Dans une application de feuille de calcul, les lignes sont représentées par des chiffres, en commençant par 1. Chaque ligne du tableau se voit attribuer un identifiant unique lors de sa création. 

Colonnes

Les colonnes sont des tranches verticales d'un tableau. Chaque colonne a un type. Dans une feuille de calcul, elles sont représentées par des colonnes alphabétiques comme A, B, C, etc. Il existe deux types de colonnes :

Colonnes intégrées

Chaque ligne d'un tableau comporte quelques colonnes intégrées :

Use this table to describe parameters / fields
ColonneDescription
hs_id

Un ID numérique unique, attribué automatiquement pour cette ligne.

hs_created_at

Un horodatage de la date de création de cette ligne.

hs_path

Avec des pages dynamiques, cette chaîne est le dernier segment du chemin d'accès de l'URL de la page.

hs_name

Avec des pages dynamiques, il s'agit du titre de la page.

Colonnes personnalisées

Remarque : Depuis le 1er octobre 2020, les colonnes de la zone de texte enrichi dans HubDB sont limitées à 65 000 caractères. Pour plus d'informations, veuillez consulter notre journal des modifications concernant ce changement.

Les tableaux peuvent comporter autant de colonnes personnalisées que vous le souhaitez. Il peut s'agir de texte, de texte enrichi, de chiffres, de devises, de dates, d'heures, d'images, de vidéos, de sélections ou de lieux (latitude et longitude). 

Lorsqu'une colonne est créée, elle reçoit un identifiant numérique unique pour le tableau, qui commence à la valeur 1. Les ID des colonnes sont croissants, mais pas nécessairement séquentiels. Les ID de colonne ne peuvent pas être réutilisés, donc si un tableau compte deux colonnes, 1 et 2, et que la deuxième colonne est supprimée, la prochaine colonne créée aura l'ID 3.

Cellules

Les cellules stockent les valeurs à l'intersection d'une ligne et d'une colonne. Les cellules peuvent être lues ou mises à jour individuellement ou en tant que partie d'une ligne. Définir la valeur d'une cellule sur null équivaut à supprimer la valeur de la cellule.

Accéder aux données HubDB via HubL

Obtenir des lignes

Vous pouvez interroger des tableaux à partir de HubL et itérer sur les résultats. Pour lister les lignes d'un tableau, utilisez la fonction HubL hubdb_table_rows(). Vous pouvez accéder à un tableau via son ID ou son nom. Il est recommandé de référencer un tableau HubDB par son nom, car cela peut faciliter la portabilité du code entre les comptes HubSpot. Le nom de tableau immuable est défini lors de la création d'un nouveau tableau et peut être retrouvé à tout moment en sélectionnant Actions > Gérer les paramètres dans l'éditeur de tableau. L'ID d'un tableau peut être trouvé dans la barre d'adresse de l'éditeur de tableau ou dans le tableau de bord des tableaux HubDB sous la colonne ID. 

Capture d'écran de la fenêtre modale de création de tableau

Voici un exemple d'utilisation de hubdb_table_rows() pour récupérer des données.

{% for row in hubdb_table_rows(<tableId or name>, <filterQuery>) %} the value for row {{ row.hs_id }} is {{ row.<column name> }} {% endfor %}

<filterQuery> utilise la même syntaxe que l'API HTTP. Par exemple, hubdb_table_rows(123, "employees__gt=10&orderBy=count") renvoie une liste de lignes où la colonne « employees » est supérieure à 10, ordonnée selon la colonne « count ». Une liste complète des paramètres facultatifs <filterQuery> est disponible ici.

Remarque : Au lieu d'utiliser plusieurs requêtes de lignes avec différents paramètres <filterQuery>, vous devez effectuer une seule requête et utiliser les filtres selectattr() ou rejectattr() pour filtrer vos lignes :

{% set all_cars = hubdb_table_rows(<tableId or name>) %} {% set cars_with_windows = all_cars|selectattr('windows') %} {% set teslas = all_cars|selectattr('make','equalto','tesla') %}

Pour obtenir une seule ligne, utilisez la fonction HubL hubdb_table_row().

{% set row = hubdb_table_row(<tableId or name>, <rowId>) %} the value for {{ row.hs_id }} is {{ row.<column name> }}

Les noms des colonnes intégrées et personnalisées sont insensibles à la casse. HS_ID fonctionnera de la même manière que hs_id.

Attributs des lignes
Use this table to describe parameters / fields
AttributDescription
row.hs_id

L'identifiant unique au niveau mondial pour cette ligne.

row.hs_path

Lorsque vous utilisez des pages dynamiques, cette chaîne est la valeur de la colonne Chemin de page et le dernier segment du chemin d'accès de l'URL.

row.hs_name

Lorsque vous utilisez des pages dynamiques, cette chaîne est la valeur de la colonne Titre de la page pour la ligne.

row.hs_created_at

Horodatage Unix de la date de création de la ligne.

row.hs_child_table_id

Lorsque vous utilisez des pages dynamiques, il s'agit de l'ID de l'autre tableau qui alimente les données de la ligne.

row.column_name

Obtenez la valeur de la colonne personnalisée par le nom de la colonne.

row["column name"]

Obtenez la valeur de la colonne personnalisée par le nom de la colonne.

Obtenir des informations sur les tableaux

La fonction hubdb_table peut être utilisée pour obtenir des informations sur un tableau, notamment son nom, ses colonnes, sa dernière mise à jour, etc.

{% set table_info = hubdb_table(<tableId or name>) %}
Attributs de tableau

Les attributs listés ci-dessous sont en référence à la variable à laquelle la fonction hubdb_table() a été attribuée dans le code ci-dessus. Votre variable peut être différente.
Remarque : Il est recommandé de l'attribuer à une variable pour une utilisation plus facile. Si vous ne voulez pas faire cela, vous pouvez utiliser
{{ hubdb_table(<tableId>).attribute }}

Use this table to describe parameters / fields
AttributDescription
table_info.id

L'ID du tableau.

table_info.name

Le nom du tableau.

table_info.columns

Une liste d'informations sur les colonnes. Vous pouvez utiliser une boucle for pour itérer à travers les informations disponibles dans cet attribut.

table_info.created_at

L'horodatage de la date de création de la table.

table_info.published_at

L'horodatage de la date de publication de ce tableau.

table_info.updated_at

L'horodatage de la dernière mise à jour de ce tableau.

table_info.row_count

Le nombre de lignes dans le tableau.

Obtenir des informations sur les colonnes

{% set table_info = hubdb_table_column(<tableId or name>, <columnId or column name>) %}

La fonction hubdb_table_column peut être utilisée pour obtenir des informations sur une colonne du tableau telles que son libellé, son type et ses options.

Attributs de colonne

Les attributs listés ci-dessous sont en référence à la variable à laquelle la fonction hubdb_table_column() a été attribuée dans le code ci-dessus. Votre variable peut être différente.
Remarque : Il est recommandé de l'attribuer à une variable pour une utilisation plus facile. Si vous ne voulez pas faire cela, vous pouvez utiliser
{{ hubdb_table_column(<tableId>,<columnId or column name>).attribute }}

Use this table to describe parameters / fields
AttributDescription
table_info.id

L'ID de la colonne.

table_info.name

Le nom de la colonne.

table_info.label

Le libellé à utiliser pour la colonne.

table_info.type

Le type de cette colonne.

table_info.options

Pour les colonnes de type select, il s'agit d'un mappage de optionId vers les informations option.

table_info.foreignIds

Pour les colonnes de type foreignId, une liste de foreignIds (avec les propriétés id et name).

Méthodes de colonne
Use this table to describe parameters / fields
MéthodeDescription
getOptionByName("<option name")

Pour certains types de colonnes, vous pouvez obtenir des informations sur les options par leur nom.

Colonnes de texte enrichi

Le type de colonne richtext fonctionne de la même manière que le champ de texte enrichi pour les modules. Les données stockées sont au format HTML ; l'interface utilisateur HubDB fournit une interface d'édition de texte. Une différence notable toutefois : l'interface utilisateur HubDB ne permet pas de modifier directement le code source des champs de texte enrichi. Cela permet d'éviter les situations où un utilisateur non expert pourrait saisir un code HTML non valide, ce qui élimine tout problème indésirable d'apparence ou de fonctionnalité de votre site. Pour les situations où vous avez besoin d'un code d'intégration ou d'un code HTML plus personnalisé, vous pouvez utiliser la fonction d'intégration de l'éditeur de texte enrichi pour placer votre code personnalisé. 

Utilisation des API REST de HubDB

Si vous souhaitez gérer vos données HubDB en externe ou utiliser des fonctions sans serveur, vous pouvez utiliser nos API REST que vous trouverez ici.


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é.