Skip to main content
FrogBot adds fields when a collection or feature needs them. The exact schema therefore depends on collection settings such as authentication, uploads, drafts, trash, and FrogBot features such as chat, AI usage tracking, board views, and jobs. Some generated fields can be customized by defining a top-level field with the same name. FrogBot merges supported auth, upload, draft, and feature-field overrides with required defaults. ID and timestamp declarations replace their generated field instead.

Override example

This auth collection adds read access control to the generated apiKey field. FrogBot preserves the field’s built-in hooks and admin configuration because the declaration is merged into the generated field:

Document fields

Custom IDs should be required or generated by a hook. Text IDs must not contain / or ..

Authentication fields

Authentication-enabled collections receive fields according to their auth configuration. Matching supported fields are merged into the generated configuration. The password override also affects the admin panel’s new-password and confirm-password controls. salt and hash are reserved and cannot be overridden.

Upload fields

Upload-enabled collections receive file metadata fields from the upload, folder, and trash configuration. A collection marked file: true enables uploads but does not itself declare these fields. Matching upload fields are merged recursively where supported. The internal file field is reserved. See Files for FrogBot’s file collection behavior.

Version fields

Draft-enabled collections receive _status. A matching top-level _status field merges supported customization into the generated field.

Chat fields

When chat is configured, FrogBot supplies or merges fields into the default or marked chat collections. Message usage contains inputTokens, outputTokens, totalTokens, reasoningTokens, cachedInputTokens, model, and provider. These fields are present only on collections serving the corresponding chat role. See Chat.

AI fields

Enabling ai supplies or merges an AI usage collection. Its reserved base fields are: costUSD is a USD Money field. The AI policy plugin adds models, monthlyBudget, and spendThisPeriodUSD to your auth collection.

Admin view fields

Each board view adds a hidden indexed Text field named _order_<view>, where hyphens in the normalized view slug become underscores. FrogBot uses it for fractional board ordering. It is generated only for collections with the corresponding board view.

Job fields

The jobs collection includes fields used for durable execution and atomic claims: waitpoint is not an author input and is hidden from APIs. See Jobs.

Plugin fields

Plugins can add their own fields under explicit plugin configuration. For example, the Roles plugin controls a roles field; it is not an unconditional core field. See Roles for its configuration and merge behavior.