Documentation / @tenancy-node/admin-api / ServeAdminOptions
Interface: ServeAdminOptions
Defined in: admin-api/src/admin.ts:401
Extends
Properties
allowedHosts?
optionalallowedHosts?: readonlystring[]
Defined in: admin-api/src/context.ts:70
Hosts desde los que responde. Por defecto los dominios centrales, localhost y 127.0.0.1.
Inherited from
bodyLimitBytes?
optionalbodyLimitBytes?:number
Defined in: admin-api/src/context.ts:85
Tamaño máximo del body. Por defecto 1 MiB.
Inherited from
clientIp?
optionalclientIp?: (req) =>string|null|undefined
Defined in: admin-api/src/context.ts:113
IP del cliente a mano (por ejemplo req.ip de Express). Tiene prioridad sobre trustProxy.
Parameters
req
IncomingMessage
Returns
string | null | undefined
Inherited from
cookieName?
optionalcookieName?:string
Defined in: admin-api/src/context.ts:75
Inherited from
host?
optionalhost?:string
Defined in: admin-api/src/admin.ts:404
Por defecto 127.0.0.1: el panel no queda expuesto; se entra por VPN o túnel SSH.
impersonationTtlSeconds?
optionalimpersonationTtlSeconds?:number
Defined in: admin-api/src/context.ts:79
Vida de los tokens de impersonación. Por defecto 60 s.
Inherited from
AdminOptions.impersonationTtlSeconds
impersonationUrl?
optionalimpersonationUrl?: (input) =>string
Defined in: admin-api/src/context.ts:81
URL que abre la sesión impersonada en la app del tenant.
Parameters
input
domain
string | null
tenantId
string
token
string
Returns
string
Inherited from
issuer?
optionalissuer?:string
Defined in: admin-api/src/context.ts:91
Nombre en la app de autenticación (2FA). Por defecto tenancy-node.
Inherited from
leads?
optionalleads?:boolean|LeadsOptions
Defined in: admin-api/src/context.ts:119
Formulario público "Solicitar demo" de la web comercial: POST <prefix>/leads sin sesión. Por defecto apagado (el panel igual lista y gestiona las solicitudes que crees con admin.leads.create()). Cada solicitud publica el evento lead.created.
Inherited from
loginRateLimit?
optionalloginRateLimit?:object
Defined in: admin-api/src/context.ts:77
Intentos de login fallidos antes de bloquear. Por defecto 5 cada 15 min (por IP y por email).
max
max:
number
windowMs
windowMs:
number
Inherited from
logoMaxBytes?
optionallogoMaxBytes?:number
Defined in: admin-api/src/context.ts:87
Tamaño máximo del logo que se sube desde el editor de tema. Por defecto 2 MiB.
Inherited from
maskedColumns?
optionalmaskedColumns?:RegExp
Defined in: admin-api/src/context.ts:83
Columnas que el explorador de datos oculta.
Inherited from
port?
optionalport?:number
Defined in: admin-api/src/admin.ts:402
prefix?
optionalprefix?:string
Defined in: admin-api/src/context.ts:68
Prefijo de la API. Por defecto /admin/api.
Inherited from
publicDocs?
optionalpublicDocs?:boolean
Defined in: admin-api/src/context.ts:89
/openapi.json sin autenticación. Por defecto true.
Inherited from
secureCookies?
optionalsecureCookies?:boolean
Defined in: admin-api/src/context.ts:72
Cookies Secure (HTTPS). Por defecto true; desactívalo solo en desarrollo local.
Inherited from
sessionSecret
sessionSecret:
string
Defined in: admin-api/src/context.ts:66
Secreto para los tokens CSRF (mínimo 32 caracteres). Usa una variable de entorno.
Inherited from
sessionTtlMs?
optionalsessionTtlMs?:number
Defined in: admin-api/src/context.ts:74
Duración de las sesiones. Por defecto 8 h.
Inherited from
tenantFields?
optionaltenantFields?: readonlyTenantField[]
Defined in: admin-api/src/context.ts:109
Campos de tenant.data que pide el formulario "Nuevo tenant" (por ejemplo el email del administrador inicial, que después lee el seed). Además se pueden cargar datos libres.
Inherited from
tenantUsers?
optionaltenantUsers?:TenantUsersAdapter
Defined in: admin-api/src/context.ts:111
Usuarios de la app en cada tenant: el panel los lista, los crea y entra como ellos.
Inherited from
trustProxy?
optionaltrustProxy?:number|boolean
Defined in: admin-api/src/context.ts:104
Detrás de un proxy (nginx, un balanceador), toma la IP del cliente de X-Forwarded-For para el límite de intentos de login y la auditoría. true confía en todo el encabezado (usa la primera IP); un número, en esa cantidad de proxies (cuenta desde la derecha). Por defecto false: la IP es la del socket. Actívalo solo si el panel no es accesible sin pasar por el proxy, porque el encabezado lo puede escribir cualquiera.
Inherited from
ui?
optionalui?:string|boolean
Defined in: admin-api/src/context.ts:96
Servir la interfaz del panel en el prefijo sin /api (/admin). true usa @tenancy-node/admin-ui; o la ruta de una UI compilada. Por defecto no se sirve.