Veldreferentie configureren

Volledige referentie voor elk veld in config.json. Dit bestand regelt het runtime-productgedrag: planlimieten, facturering, webhooks en functievlaggen. Het staat los van .env, dat geheimen en infrastructuurbedrading bevat.

Start voorbeeld


Dit is het aanbevolen startpunt voor een zelf-hostende implementatie zonder dat er facturering is geconfigureerd. Alle limieten zijn ingesteld op null (onbeperkt) en factureringsfuncties zijn uitgeschakeld. Vervangen [email protected] met uw eigen adres.

beheerders#


Een reeks e-mailadressen waaraan sitebeheerderstoegang wordt verleend. Beheerders hebben toegang tot bevoorrechte pagina's, zoals de batchprocesplanner en systeembrede gebruiksdashboards.

VeldTypeVereistBeschrijving
adminsstring[]VereistLijst met e-mailadressen met beheerderstoegang. Moet overeenkomen met het e-mailadres dat is gekoppeld aan het Clerk-account van de gebruiker.

functies#


Functievlaggen die bepalen welke delen van de productinterface actief zijn. Voor eenvoudige, zelfgehoste implementaties kunt u alle factureringsfuncties uitschakelen en indien nodig alleen de plannervlag laten staan.

VeldTypeVereistBeschrijving
subscriptionEnforcementEnabledbooleanVereistWanneer dit waar is, kunnen gebruikers betaalde abonnementen bekijken en upgraden. Als dit niet waar is, toont de upgrade-UI in plaats daarvan een tijdelijke aanduiding voor facturering.
workspaceBillingEnabledbooleanVereistIndien waar, verschijnen factureringsniveaus en abonnementsgegevens in de zijbalk en in de werkruimte-instellingen. Stel deze in op false om de gehele factureringsinterface volledig te verbergen.
batchSchedulerEnabledbooleanVereistIndien waar, is de batchprocesplanner actief en toegankelijk voor de beheerder. Vereist dat Redis en BullMQ actief zijn.
customMCPServerTokensbooleanVereistAls dit niet waar is, verifieert de MCP-server met behulp van het standaard OAuth/Clerk-token. Wanneer dit waar is, worden in plaats daarvan zelfbeheerde API-tokens gebruikt: handig voor omgevingen zonder Clerk MCP-ondersteuning.

grenzen#


Een reeks limietsets die het resourcegebruik bepalen. Elke invoer kan worden gekoppeld aan een factureringsniveau via billingTier, of ingesteld op null van toepassing op alle gebruikers, ongeacht het abonnement. Voor eenvoudige implementaties zonder facturering, één enkele invoer met "billingTier": null is voldoende. null waarden voor numerieke limieten betekenen onbeperkt.

VeldTypeVereistBeschrijving
idstringVereistUnieke identificatie voor deze limietset (bijvoorbeeld gratis, pro, standaard).
maxTrackableItemsnumberVereistMaximaal aantal traceerbare items (formulieren + API-eindpunten) dat een gebruiker per werkruimte kan maken.
maxResponsesPerSurveynumber | nullVereistMaximaal aantal toegestane reacties per enquête/formulier. nul betekent onbeperkt.
maxWorkspaceMembersnumber | nullVereistMaximaal aantal leden in een werkruimte. nul betekent onbeperkt.
maxApiLogsPerMinutenumberVereistMaximaal aantal logboekgebeurtenissen dat per minuut per traceerbaar item kan worden opgenomen. Voor overtollige verzoeken geldt een tariefbeperking.
maxApiPayloadBytesnumberVereistMaximale grootte in bytes van één logboekpayload. Verzoeken groter dan dit worden afgewezen.
logRetentionDaysnumberVereistAantal dagen dat logboekvermeldingen worden bewaard voordat ze worden opgeschoond. Geldt voor alle logboeken binnen deze laag.
maxCreatedWorkspacesnumber | nullVereistMaximaal aantal werkruimten dat één gebruiker kan maken. nul betekent onbeperkt.
billingTierstring | nullVereistDe factureringslaag-ID waarop deze limiet van toepassing is. Moet overeenkomen met een ID in de billing.tiers-matrix. Stel deze in op null om deze limiet toe te passen op alle gebruikers, ongeacht het abonnement.

facturering#


Optionele factureringsconfiguratie voor Lemon Squeezy-integratie. Als u geen betaalde abonnementen gebruikt, stelt u dit in lemonSqueezyStoreId En manageUrl naar null en vertrek tiers als een lege array. Er wordt verwezen naar niveau-id-waarden door limit[].billingTier: ze moeten exact overeenkomen.

VeldTypeVereistBeschrijving
lemonSqueezyStoreIdstring | nullOptioneelUw Lemon Squeezy-winkel-ID. Vereist als u betalingen verwerkt via Lemon Squeezy.
manageUrlstring | nullOptioneelURL naar de factureringsbeheerpagina die aan gebruikers wordt getoond. Meestal de URL van uw Lemon Squeezy-klantportaal.

billing.tiers[]

Array van factureringslagen die worden weergegeven in de upgrade-UI. Elke laag moet een unieke ID hebben die overeenkomt met een overeenkomstige vermelding in borders[].billingTier.

VeldTypeVereistBeschrijving
idstringVereistUnieke niveau-ID. Er wordt verwezen naar limieten[].billingTier.
namestringVereistWeergavenaam die aan gebruikers wordt getoond (bijvoorbeeld Pro, Team).
priceLabelstringVereistPrijsreeks weergegeven in de gebruikersinterface (bijvoorbeeld $ 25).
priceIntervalstringVereistFactureringsinterval weergegeven onder de prijs (bijvoorbeeld per maand).
descriptionstringVereistKorte beschrijving van wat deze laag inhoudt.
tone"neutral" | "accent" | "strong"VereistVisueel thema van de niveaukaart. accent en sterk zijn gemarkeerde stijlen; neutraal is de standaard.
mostPopularbooleanVereistAls dit waar is, wordt er een badge Meest populair weergegeven op deze niveaukaart.
lemonSqueezyVariantIdstring | nullOptioneelLemon Squeezy-productvariant-ID voor dit niveau. Vereist om afrekenen te laten werken.
enabledbooleanVereistIndien onwaar, wordt deze laag verborgen voor de upgrade-UI, zelfs als facturering is ingeschakeld.

gebruik#


Globale API-gebruikscontroles die van toepassing zijn op alle werkruimten en gebruikers.

VeldTypeVereistBeschrijving
invalidApiKeyRateLimitPerMinutenumberVereistHet maximale aantal toegestane aanvragen met een ongeldige API-sleutel per minuut per IP voordat de bron wordt beperkt. Helpt het opvullen van inloggegevens te voorkomen.
maxBodyBytesnumberVereistMaximale grootte in bytes voor de hoofdtekst van een logboekaanvraag op API-gatewayniveau. Verzoeken die dit overschrijden, worden afgewezen voordat ze de servicelaag bereiken.
pageSizenumberVereistAantal opgehaalde loggegevens per pagina bij het laden van de logviewer.

webhaken#


Beheert de uitgaande webhook-bezorgwachtrij, ondersteund door Redis en BullMQ. De snelheidsbeperking is hier van toepassing op de wachtrijconsument, niet op inkomende logboekopname.

VeldTypeVereistBeschrijving
queue.enabledbooleanVereistWanneer dit waar is, worden uitgaande webhooks in Redis in de wachtrij geplaatst en asynchroon afgeleverd. Vereist dat Redis actief is.
queue.rateLimitMsnumberVereistMinimale milliseconden om te wachten tussen opeenvolgende webhookleveringen uit de wachtrij.
queue.rateLimitMaxnumberVereistMaximaal aantal webhook-gebeurtenissen dat kan worden verzonden binnen het rateLimitMs-venster.

partij#


Configuratie voor de batchplanner op de achtergrond. De planner moet ook worden ingeschakeld via features.batchSchedulerEnabled.

VeldTypeVereistBeschrijving
schedulerTimeZonestringVereistIANA-tijdzonereeks die wordt gebruikt voor het plannen van batchtaken (bijvoorbeeld UTC, Amerika/New_York). Heeft invloed op het moment waarop op cron gebaseerde taken worden geactiveerd.