Funciones de personalización
Prefill automático de API key
Contenido dinámico en MDX
user
.
Visibilidad de la página
groups
al frontmatter de tus páginas. De forma predeterminada, todas las páginas son visibles para todos los usuarios.
Los usuarios solo verán las páginas de los groups
a los que pertenecen.
Formato de datos del usuario
Tiempo de expiración de la sesión en segundos desde el epoch. Si el usuario carga una página después de este momento, sus datos almacenados se eliminan automáticamente y debe volver a autenticarse.
Para intercambios con JWT: Esto difiere del atributo
exp
del JWT, que determina cuándo se considera inválido un JWT. Por seguridad, establece el exp
del JWT en una duración corta (10 segundos o menos). Usa expiresAt
para la duración real de la sesión (de horas a semanas).Lista de grupos a los que pertenece el usuario. Las páginas con
groups
coincidentes en su frontmatter son visibles para este usuario.Ejemplo: Un usuario con groups: ["admin", "engineering"]
puede acceder a páginas etiquetadas con los grupos admin
o engineering
.Datos personalizados accesibles en tu contenido Uso en Con los datos de
MDX
mediante la variable user
. Úsalos para personalizar dinámicamente tu documentación.Ejemplo básico:MDX
:user
del ejemplo, se mostraría como: Welcome back, Ronan! Your Enterprise plan includes…Renderizado condicional avanzado:La información en
user
solo está disponible para usuarios con sesión iniciada. Para los usuarios que no han iniciado sesión, el valor de user
será {}
. Para evitar que la página falle con usuarios desconectados, usa siempre el encadenamiento opcional en los campos de user
. Por ejemplo, {user.org?.plan}
.Valores específicos del usuario que rellenan por adelantado los campos del área de pruebas de la API. Ahorra tiempo a los usuarios al autocompletar sus datos cuando prueban APIs.Ejemplo:Si un usuario realiza solicitudes en un subdomain específico, puedes enviar
{ server: { subdomain: 'foo' } }
como un campo apiPlaygroundInputs
. Este valor se rellenará por adelantado en cualquier página de la API con el valor subdomain
.Los campos
header
, query
y cookie
solo se rellenarán por adelantado si forman parte de tu esquema de seguridad de OpenAPI. Si un campo está en las secciones Authorization
o Server
, se rellenará por adelantado. Crear un parámetro de encabezado estándar llamado Authorization
no habilitará esta función.Ejemplo de datos de usuario
Configuración de la personalización
- JWT (JSON Web Token)
- OAuth 2.0
- Sesión compartida
Requisitos previos
- Un sistema de inicio de sesión que pueda generar y firmar JWT
- Un servicio backend que pueda crear URL de redirección
Implementación
1
Genera una key privada.
- En tu dashboard, ve a Autenticación.
- Selecciona Personalization.
- Selecciona JWT.
- Ingresa la URL de tu flujo de inicio de sesión existente y selecciona Guardar cambios.
- Selecciona Generate new key.
- Almacena tu key de forma segura donde pueda accederla tu backend.
2
Integra la personalización de Mintlify en tu flujo de inicio de sesión.
Modifica tu flujo de inicio de sesión existente para incluir estos pasos después de que el usuario inicie sesión:
- Crea un JWT que contenga la información del usuario que ha iniciado sesión en el formato
User
. Consulta la sección User data format más arriba para obtener más información. - Firma el JWT con la clave secreta, usando el algoritmo ES256.
- Crea una URL de redirección de vuelta a tu documentación, incluyendo el JWT como hash.
Ejemplo
Tu documentación está alojada endocs.foo.com
. Quieres que tu documentación esté separada de tu dashboard (o no tienes un dashboard) y habilitar la personalización.Genera un secreto JWT. Luego, crea un endpoint de inicio de sesión en https://foo.com/docs-login
que inicie un flujo de inicio de sesión hacia tu documentación.Después de verificar las credenciales del usuario:- Genera un JWT con los datos de usuario en el formato de Mintlify.
- Firma el JWT y redirige a
https://docs.foo.com#{SIGNED_JWT}
.
Conservar anclajes de página
Para redirigir a los usuarios a secciones específicas después de iniciar sesión, usa este formato de URL:https://docs.foo.com/page#jwt={SIGNED_JWT}&anchor={ANCHOR}
.Ejemplo:- URL original:
https://docs.foo.com/quickstart#step-one
- URL de redirección:
https://docs.foo.com/quickstart#jwt={SIGNED_JWT}&anchor=step-one