Seed Configuration
Seeds the company’s FMV1 configuration from code-defined starter content. The server materializes the selected starter modules in-memory and runs them through the same import pipeline: validate, parse, compare, and apply changes.
Seed builds the configuration from the framework’s own code-defined starter content. Use it to put a company into a usable FMV1 configuration state without supplying a configuration body of your own.
Choose what gets seeded with one of two mutually-exclusive fields
(supplying both is a 400):
starterSheet— a single named variant that expands to a complete, importable out-of-box config (base + exposure scheme + rater + every default feature module).modules— an EXPLICIT starter-module selection (checkbox granularity, #3428). The list is authoritative for every axis and feature: the server unions it with the always-on base (core+default) but appends no default feature modules. Discover the valid module ids and their axis groups viaGET /configuration/seed/options.
Supplying neither seeds the product default (single-exposure-list).
By default, seeding a company that already has a non-empty configuration
is refused with a 409 (ConfigAlreadyExists). Re-send with replace: true
to overwrite the existing configuration (#3428).
On success the response returns success: true. If the starter content fails
validation, no changes are applied and the endpoint returns a 400 with
an error describing the failure (it does not return success: false).
Required permission: company.configuration:import
This endpoint requires an API key created with the FMV1_CONFIGURATION_MANAGER role. See Authentication for how to create API keys with specific roles.
Authorizations
User-principal OAuth 2.0 Bearer authentication. Send a user-scoped Auth0 access token (audience = the app API audience) as Authorization: Bearer <jwt>. The request resolves to the user's identity and is authorized by their Role on the {companyId} in the path — the same role-based permissions the web app enforces. This is the path the MCP connector uses to act on a user's behalf; endpoints that accept it list both BearerAuth and ApiKeyAuth.
Path Parameters
Company identifier
Body
Request to seed FMV1 configuration from code-defined starter content. The server materializes the starter content in-memory and runs it through the import pipeline.
There are two mutually-exclusive ways to choose what gets seeded:
-
starterSheet— a single named variant (the pre-#3428 contract). The server resolves it to a base + exposure-scheme (+ rater) selection AND appends every default feature module, so the output is a complete, importable out-of-box config. -
modules— an EXPLICIT starter-module selection (checkbox granularity). The list is authoritative for every axis and feature: the server unions it with the always-on base (core+default) but appends NO default feature modules.
Supplying both starterSheet and modules is a 400 (InvalidModuleSelection). Supplying neither seeds the product default (single-exposure-list: single exposure-list modeling with the default rater).
A single named starter variant to seed. Mutually exclusive with modules. If both starterSheet and modules are omitted, the product default variant (single-exposure-list) is used. Discover the valid names and their descriptions via GET /configuration/seed/options (options). An unknown name fails with a 400 (UnknownStarterSheet) listing the available variants.
default-rater, single-exposure-list, standalone-primary-insured An EXPLICIT starter-module selection (checkbox granularity, #3428) — the module ids to seed. Mutually exclusive with starterSheet. The server unions the list with the always-on base (core + default) and appends no default feature modules, so the caller names its own exposure scheme, rater, and policy-number flavor. Discover the valid ids (and their axis group) via GET /configuration/seed/options (modules). An unknown id fails with a 400 (UnknownStarterModule) listing the valid ids; a colliding pick-one axis selection (e.g. two raters, or two exposure schemes) fails with a 400 (InvalidModuleSelection).
Overwrite an existing configuration (#3428). Seeding a company whose config is already non-empty is refused with a 409 (ConfigAlreadyExists) UNLESS this is true; a never-configured company seeds without it. This guards config-only customization; the downstream breaking-change gate still independently protects companies that hold entity data.
