Fonctionnalités de personnalisation
Préremplissage de la clé API
Contenu MDX dynamique
user
.
Visibilité des pages
groups
au frontmatter de vos pages. Par défaut, chaque page est visible pour tous les utilisateurs.
Les utilisateurs ne verront que les pages associées aux 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 réauthentifier.
Pour les échanges JWT : Cela diffère de la revendication
exp
du JWT, qui détermine quand un JWT est considéré invalide. Par sécurité, définissez la revendication 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 dont l’utilisateur est membre. Les pages dont le frontmatter contient des
groups
correspondants sont visibles pour cet utilisateur.Exemple : Un utilisateur avec groups: ["admin", "engineering"]
peut accéder aux pages étiquetées avec le groupe 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 l’ensemble de 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. Cela fait 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 qui utilise la valeur 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. La création d’un paramètre d’en-tête standard nommé Authorization
n’activera pas cette fonctionnalité.Exemple de données d’utilisateur
Configurer 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
Generate a private key.
- Dans votre Dashboard, accédez à Authentication.
- Sélectionnez Personalization.
- Sélectionnez JWT.
- Saisissez l’URL de votre flux de connexion existant et sélectionnez Enregistrer les modifications.
- Sélectionnez Generate new key.
- Stockez votre key en toute sécurité à un emplacement accessible par votre backend.
2
Integrate Mintlify personalization into your login flow.
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. Puis créez 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 de 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