Structure du projet
- Tous les composants du projet doivent se trouver dans le répertoire
srcspécifié dans le fichier de configurationhsproject.jsonde premier niveau. - Toutes les fonctionnalités et tous les composants de l’application doivent se trouver dans le répertoire
src/app/. Dans ce répertoireapp/, vous définirez des sous-répertoires pour chaque fonctionnalité que vous souhaitez que votre application prenne en charge :- Les événements d’application sont configurés dans
app-events/. - Les objets d’application sont définis dans
app-objects/. - Toutes les caractéristiques de la carte sont définies dans
cards/. - Les fonctionnalités de la page Paramètres sont définies dans
settings/. - La télémétrie est configurée dans
telemetry/. - Les abonnements Webhook sont définis dans
webhooks/. - Les actions de workflow personnalisées sont définies dans
workflow-actions/.
- Les événements d’application sont configurés dans
- Dans chaque sous-répertoire d’entités, vous configurerez l’entité à l’aide d’un fichier
*-hsmeta.json. Vous pouvez préfixer le nom du fichier avec un élément significatif pour votre application (par exemple,my-app-hsmeta.json), tant que le fichier se termine par-hsmeta.json. Ces fichiers doivent se trouver à la racine de leur dossier respectif (par exemple,app/my-app-hsmeta.json,cards/my-card-hsmeta.json).
app-hsmeta.json de schéma d’application de niveau supérieur dans la section schéma d’application ci-dessous. Une fois que vous êtes prêt à ajouter des fonctionnalités d’application, consultez la section Ajout de fonctionnalités d’application.
Afficher un exemple sur GitHub
*-hsmeta.json.
Spécification des UID
Le champuid est un identifiant unique en interne pour votre application spécifique et doit également être globalement unique dans le projet. Toutes les fonctionnalités de l’application auront leur propre uid défini dans leurs fichiers *-hsmeta.json respectifs, qui doivent être différents du uid de niveau supérieur que vous choisissez dans le fichier app-hsmeta.json de votre application.
Schéma de l’application
La configuration de premier niveau de votre application est spécifiée dans un fichier de configurationapp-hsmeta.json du répertoire app.
app-hsmeta.json.
Afficher un exemple sur GitHub
Les champs marqués par sont * obligatoires.
Distribution
Le champdistribution dans le schéma de votre application vous permet de configurer la manière dont vous souhaitez distribuer votre application :
- Si vous prévoyez de lister votre application sur le marketplace des applications de HubSpot, définissez le champ
distributionsur"marketplace". Un exemple de schéma d’application pour cette option se trouve ici. Si vous choisissez cette option, assurez-vous de définir danstypeavec la propriétéauthsuroauth, comme indiqué dans la section Authentification ci-dessous. - Si vous souhaitez autoriser l’installation de votre application sur un ensemble spécifique de comptes ajoutés à la liste d’autorisation ou si vous souhaitez limiter l’installation à un seul compte à la fois, définissez
distributionsur"private". Veillez à définir letypedans la propriétéauthen conséquence :- Si vous souhaitez installer votre application dans plusieurs comptes sur la base d’une liste d’inclusion que vous configurez dans les paramètres de votre projet, définissez l’authentification
typesuroauth. Consultez l’exemple de schéma d’application pour cette option ici. - Pour limiter l’installation à un seul compte, soit le même que celui que vous utilisez pour le développement, soit un autre compte auquel l’utilisateur installateur a accès, définissez l’authentification
typesurstatic. Un exemple de schéma d’application pour l’authentification statique est disponible ici.
- Si vous souhaitez installer votre application dans plusieurs comptes sur la base d’une liste d’inclusion que vous configurez dans les paramètres de votre projet, définissez l’authentification
Authentification
L’authentification pour votre application est configurée via la propriétéauth dans le schéma de votre application. Vous pouvez spécifier les exigences en matière de domaine de votre application, les URL de redirection et le type d’authentification.
Les champs marqués par sont * obligatoires.
Périmètres d’accès
Dans le champauth d’un fichier de configuration d’application, vous pouvez indiquer trois types de domaines : les domaines requis, les domaines conditionnellement requis et les domaines facultatifs.
Au minimum, votre application doit inclure le domaine read pour permettre aux clients d’accéder au type d’objet CRM associé.
Ajout de fonctionnalités de l’application
Pour configurer les fonctionnalités de l’application telles que les abonnements webhook, les actions de workflow personnalisées et les cartes d’application, consultez les guides ci-dessous pour plus de détails sur l’ajout des fichiers*-hsmeta.json associés à votre projet :