Referencia del campo de configuración

Referencia completa para cada campo en config.json. Este archivo controla el comportamiento del producto en tiempo de ejecución: límites del plan, facturación, webhooks e indicadores de funciones. esta separado de .env, que guarda secretos y cableado de infraestructura.

Ejemplo inicial


Este es el punto de partida recomendado para una implementación autohospedada sin facturación configurada. Todos los límites están establecidos en null (ilimitado) y las funciones de facturación están deshabilitadas. Reemplazar [email protected] con tu propia dirección.

administradoras#


Una serie de direcciones de correo electrónico a las que se les concede acceso de administrador del sitio. Los administradores pueden acceder a páginas privilegiadas, como el programador de procesos por lotes y los paneles de uso de todo el sistema.

CampoTipoRequeridaDescripción
adminsstring[]RequeridaLista de direcciones de correo electrónico con acceso de administrador. Debe coincidir con el correo electrónico asociado con la cuenta de Secretario del usuario.

características#


Indicadores de funciones que controlan qué partes de la interfaz de usuario del producto están activas. Para implementaciones autohospedadas simples, puede desactivar todas las funciones de facturación y dejar solo el indicador del programador si es necesario.

CampoTipoRequeridaDescripción
subscriptionEnforcementEnabledbooleanRequeridaCuando es verdadero, los usuarios pueden ver y actualizar a planes pagos. Cuando es falso, la interfaz de usuario de actualización muestra un marcador de posición de facturación próximamente.
workspaceBillingEnabledbooleanRequeridaCuando es verdadero, los niveles de facturación y la información del plan aparecen en la barra lateral y en la configuración del espacio de trabajo. Configúrelo en falso para ocultar por completo toda la interfaz de usuario de facturación.
batchSchedulerEnabledbooleanRequeridaCuando es verdadero, el programador de procesos por lotes está activo y el administrador puede acceder a él. Requiere que Redis y BullMQ estén en ejecución.
customMCPServerTokensbooleanRequeridaCuando es falso, el servidor MCP se autentica utilizando el token estándar OAuth/Clerk. Cuando es cierto, se utilizan tokens de API autoadministrados, lo que resulta útil para entornos sin compatibilidad con Clerk MCP.

límites#


Una serie de conjuntos de límites que controlan el uso de recursos. Cada entrada se puede vincular a un nivel de facturación mediante billingTier, o establecer en null para aplicarse a todos los usuarios independientemente del plan. Para implementaciones simples sin facturación, una sola entrada con "billingTier": null es suficiente. null los valores para límites numéricos significan ilimitados.

CampoTipoRequeridaDescripción
idstringRequeridaIdentificador único para este conjunto de límites (por ejemplo, gratuito, profesional, predeterminado).
maxTrackableItemsnumberRequeridaNúmero máximo de elementos rastreables (formularios + puntos finales de API) que un usuario puede crear por espacio de trabajo.
maxResponsesPerSurveynumber | nullRequeridaNúmero máximo de respuestas permitidas por encuesta/formulario. nulo significa ilimitado.
maxWorkspaceMembersnumber | nullRequeridaNúmero máximo de miembros en un espacio de trabajo. nulo significa ilimitado.
maxApiLogsPerMinutenumberRequeridaNúmero máximo de eventos de registro que se pueden ingerir por minuto por elemento rastreable. Las solicitudes en exceso tienen una tarifa limitada.
maxApiPayloadBytesnumberRequeridaTamaño máximo en bytes de una carga útil de registro único. Las solicitudes mayores a esta cantidad se rechazan.
logRetentionDaysnumberRequeridaNúmero de días que se conservan las entradas del registro antes de eliminarlas. Se aplica a todos los registros dentro de este nivel.
maxCreatedWorkspacesnumber | nullRequeridaNúmero máximo de espacios de trabajo que un solo usuario puede crear. nulo significa ilimitado.
billingTierstring | nullRequeridaEl ID del nivel de facturación al que se aplica este límite. Debe coincidir con una identificación en la matriz billing.tiers. Configúrelo en nulo para aplicar este límite a todos los usuarios independientemente del plan.

facturación#


Configuración de facturación opcional para la integración de Lemon Squeezy. Si no estás utilizando planes pagos, configura lemonSqueezyStoreId y manageUrl a null y dejar tiers como una matriz vacía. Los valores de ID de nivel están referenciados por limites[].billingTier: deben coincidir exactamente.

CampoTipoRequeridaDescripción
lemonSqueezyStoreIdstring | nullOpcionalTu ID de tienda Lemon Squeezy. Requerido si está procesando pagos a través de Lemon Squeezy.
manageUrlstring | nullOpcionalURL a la página de administración de facturación que se muestra a los usuarios. Normalmente, la URL del portal del cliente de Lemon Squeezy.

billing.tiers[]

Matriz de niveles de facturación que se muestran en la interfaz de usuario de actualización. Cada nivel debe tener una identificación única que coincida con una entrada correspondiente en limites[].billingTier.

CampoTipoRequeridaDescripción
idstringRequeridaIdentificador de nivel único. Referenciado por límites[].billingTier.
namestringRequeridaNombre para mostrar que se muestra a los usuarios (por ejemplo, Pro, Team).
priceLabelstringRequeridaCadena de precio que se muestra en la interfaz de usuario (por ejemplo, $25).
priceIntervalstringRequeridaIntervalo de facturación que se muestra debajo del precio (por ejemplo, por mes).
descriptionstringRequeridaBreve descripción de lo que incluye este nivel.
tone"neutral" | "accent" | "strong"RequeridaTema visual de la tarjeta de nivel. acento y fuerte son estilos resaltados; neutral es el valor predeterminado.
mostPopularbooleanRequeridaCuando es verdadero, muestra una insignia de Más popular en esta tarjeta de nivel.
lemonSqueezyVariantIdstring | nullOpcionalID de variante del producto Lemon Squeezy para este nivel. Requerido para que el pago funcione.
enabledbooleanRequeridaCuando es falso, este nivel está oculto en la interfaz de usuario de actualización incluso si la facturación está habilitada.

uso#


Controles globales de uso de API que se aplican en todos los espacios de trabajo y usuarios.

CampoTipoRequeridaDescripción
invalidApiKeyRateLimitPerMinutenumberRequeridaNúmero máximo de solicitudes con una clave API no válida permitidas por minuto por IP antes de que la fuente tenga una velocidad limitada. Ayuda a prevenir el relleno de credenciales.
maxBodyBytesnumberRequeridaTamaño máximo en bytes para el cuerpo de una solicitud de registro en el nivel de puerta de enlace API. Las solicitudes que superen este límite se rechazan antes de llegar a la capa de servicio.
pageSizenumberRequeridaNúmero de entradas de registro obtenidas por página al cargar el visor de registros.

ganchos web#


Controla la cola de entrega de webhooks salientes respaldada por Redis y BullMQ. La limitación de velocidad aquí se aplica al consumidor de la cola, no a la ingesta de registros entrantes.

CampoTipoRequeridaDescripción
queue.enabledbooleanRequeridaCuando es verdadero, los webhooks salientes se ponen en cola en Redis y se entregan de forma asincrónica. Requiere que Redis esté ejecutándose.
queue.rateLimitMsnumberRequeridaMilisegundos mínimos de espera entre entregas consecutivas de webhooks desde la cola.
queue.rateLimitMaxnumberRequeridaNúmero máximo de eventos de webhook que se pueden enviar dentro de la ventana rateLimitMs.

lote#


Configuración para el programador por lotes en segundo plano. El programador también debe habilitarse a través de features.batchSchedulerEnabled.

CampoTipoRequeridaDescripción
schedulerTimeZonestringRequeridaCadena de zona horaria de IANA utilizada para programar trabajos por lotes (por ejemplo, UTC, América/Nueva_York). Afecta cuando se activan los trabajos basados ​​en cron.