Fonctionnalités de personnalisation
Préremplissage de clé d’API
Contenu MDX dynamique
user
.
Visibilité des pages
groups
au frontmatter de vos pages. Par défaut, chaque page est visible par chaque utilisateur.
Les utilisateurs ne verront que les pages des groups
auxquels ils appartiennent.
Format des données utilisateur
Durée d’expiration de la session en secondes depuis l’époque Unix. Si l’utilisateur charge une page après ce moment, ses données stockées sont automatiquement supprimées et il doit se reconnecter.
Pour les échanges JWT : Ceci diffère de l’attribut
exp
du JWT, qui détermine quand un JWT est considéré comme invalide. Pour des raisons de sécurité, définissez l’attribut exp
du JWT sur une durée courte (10 secondes ou moins). Utilisez expiresAt
pour la durée réelle de la session (de quelques heures à plusieurs semaines).Liste des groupes auxquels l’utilisateur appartient. Les pages dont le frontmatter contient des
groups
correspondants sont visibles par cet utilisateur.Exemple : Un utilisateur avec groups: ["admin", "engineering"]
peut accéder aux pages étiquetées avec les groupes admin
ou engineering
.Données personnalisées accessibles dans votre contenu Utilisation dans Avec l’exemple de données
MDX
via la variable user
. Utilisez-les pour une personnalisation dynamique dans toute votre documentation.Exemple de base :MDX
:user
, le rendu serait : Welcome back, Ronan! Your Enterprise plan includes…Rendu conditionnel avancé :Les informations dans
user
ne sont disponibles que pour les utilisateurs connectés. Pour les utilisateurs déconnectés, la valeur de user
sera {}
. Pour éviter que la page ne plante pour les utilisateurs déconnectés, utilisez toujours l’opérateur d’enchaînement optionnel sur vos champs user
. Par exemple, {user.org?.plan}
.Valeurs propres à l’utilisateur qui préremplissent les champs du bac à sable d’API. Elles font gagner du temps aux utilisateurs en remplissant automatiquement leurs données lors des tests d’API.Exemple :Si un utilisateur effectue des requêtes sur un sous-domaine spécifique, vous pouvez envoyer
{ server: { subdomain: 'foo' } }
comme champ apiPlaygroundInputs
. Cette valeur sera préremplie sur toute page d’API avec la clé subdomain
.Les champs
header
, query
et cookie
ne seront préremplis que s’ils font partie de votre schéma de sécurité OpenAPI. Si un champ se trouve dans les sections Authorization
ou Server
, il sera prérempli. Créer un paramètre d’en-tête standard nommé Authorization
n’activera pas cette fonctionnalité.Exemple de données utilisateur
Configuration de la personnalisation
- JWT (JSON Web Token)
- OAuth 2.0
- Session partagée
Prérequis
- Un système d’authentification capable de générer et de signer des JWT
- Un service backend capable de créer des URL de redirection
Implémentation
1
Générez une clé privée.
- Dans votre Dashboard, accédez à Authentification.
- Sélectionnez Personnalisation.
- Sélectionnez JWT.
- Saisissez l’URL de votre flux de connexion existant puis sélectionnez Enregistrer les modifications.
- Sélectionnez Generate new key.
- Stockez votre key en lieu sûr, accessible par votre backend.
2
Intégrez la personnalisation Mintlify à votre flux de connexion.
Modifiez votre flux de connexion existant pour inclure ces étapes après la connexion de l’utilisateur :
- Créez un JWT contenant les informations de l’utilisateur connecté au format
User
. Consultez la section User data format ci-dessus pour plus d’informations. - Signez le JWT avec la clé secrète, en utilisant l’algorithme ES256.
- Créez une URL de redirection vers votre documentation, en incluant le JWT comme hash.
Exemple
Votre documentation est hébergée surdocs.foo.com
. Vous souhaitez que votre documentation soit distincte de votre Dashboard (ou vous n’avez pas de Dashboard) et activer la personnalisation.Générez un secret JWT. Créez ensuite un endpoint de connexion à https://foo.com/docs-login
qui lance un flux de connexion vers votre documentation.Après vérification des identifiants de l’utilisateur :- Générez un JWT avec les données utilisateur au format Mintlify.
- Signez le JWT et redirigez vers
https://docs.foo.com#{SIGNED_JWT}
.
Préserver les ancres de page
Pour rediriger les utilisateurs vers des sections spécifiques après connexion, utilisez ce format d’URL :https://docs.foo.com/page#jwt={SIGNED_JWT}&anchor={ANCHOR}
.Exemple :- URL d’origine :
https://docs.foo.com/quickstart#step-one
- URL de redirection :
https://docs.foo.com/quickstart#jwt={SIGNED_JWT}&anchor=step-one