Pre-Seeded Provisioning
Hosting providers can supply LICENSE_KEY during installation so the customer does not need to type it. Pre-seeding changes the License step's contents; the setup wizard still collects the required choices and completes activation.
Provision the installation
- Issue the installation's license through the Partner API.
- Capture the returned key in your protected provisioning secret store before starting the installation. Keep the license ID and order reference separately.
- Supply
LICENSE_KEYto the installer process using your provisioning system's secret injection mechanism, together with the required domain and installation settings. Follow Installation. - Complete the wizard and verify the resulting License & Edition state.
Use a single process environment for injection and execution. An export in one cloud-init runcmd entry does not establish the environment for a separate entry. Do not place a literal key in a reusable cloud-init example, shell history, repository, ticket or installer log. The installer persists the supplied value in protected installation configuration for the panel process.
What the wizard displays
While setup is required, the status response exposes license_pre_seeded when a server-held key is available. The License step displays a pre-installed-license status and hides the key input while checking it. The dedicated preseeded validate and activate endpoints use the server-held value, not a client-supplied key.
Validation and activation are separate operations. On validation failure, the wizard can show manual-entry controls; resolve the failed provisioning or choose the available license/free path. A preseed flag alone is not proof of activation.
After setup, the preseeded setup routes are closed. Protect the host-held key and confirm first login and the paid edition before handing the installation to the customer. This flow does not eliminate the other setup prerequisites.