Skip to main content

Licensing

Every Siter deployment requires a license — a signed text block issued by the Siter team that sets the plan, expiration date, and the number of editor seats. The API validates licenses against the public key configured at deployment time (Licensing__PublicKey), so a license cannot be altered or forged.

This guide covers applying and renewing licenses. For the deployment-time variables, see Deploying a Siter Environment.

Licensing models

The multiTenant setting selects between two models:

  • Single-tenant (multiTenant=false, the default) — one system-wide license covers the whole deployment. The license is attached to the built-in Default customer, either through the Admin UI or through configuration (recommended for containerized deployments — see below).
  • Multi-tenant (multiTenant=true) — each customer/organization carries its own license, applied individually through the Admin UI.

How to apply or renew a license from the Admin UI

You must be a system administrator.

  1. Click Admin in the top navigation bar, then Licensing

    Admin Licensing tab listing customers with their user and editor counts

  2. The Customer Licenses table lists each customer with its user and editor counts. Click the customer to license — in a single-tenant deployment, click Default

  3. Paste the license text you received from the Siter team into the License Text field

  4. Siter validates the text as soon as you leave the field and shows the parsed License Details — plan, validity, expiration, and the editor-seat limit. If the text is not a valid license, Siter says so and refuses to save it.

    Update System License page with license text pasted and validated details showing plan, validity, expiration, and max editors

  5. Click Save

Renewal is the same flow — paste the replacement license over the old one and save. The change takes effect immediately; no restart is required.

Single-tenant: applying the license through configuration

For single-tenant deployments, the system license can be supplied by configuration instead of the Admin UI — the natural fit for containerized environments where configuration lives in the compose file. Siter checks the configured license at every startup and applies it to the Default customer whenever it has changed, so renewing is: update the value, restart the API.

Siter looks for the license in this order:

SourceDescription
Licensing__LicenseFilePathPath to a license file on disk (volume-mount the file into the API container).
Licensing__SystemLicenseStringThe license text itself, as a configuration value.
SITER_SYSTEM_LICENSEThe license text itself, as a plain environment variable.

When the license is supplied this way, the Default customer's page in the Admin UI becomes read-only and directs administrators to update the configuration instead — the configured value is the source of truth.

note

The license text may be pasted as XML or as its Base64 form — both are accepted everywhere a license is entered.

Editor seats

The license caps the number of active editor accounts (users with edit rights) for the customer. The Users tab on the customer's page shows the limit and the current count (e.g., "This license is limited to 99 active editor user accounts. Active Editors Assigned: 7"), and the Customer Licenses table shows per-customer user and editor counts at a glance. Deactivating a user frees their seat.

Troubleshooting

"This does not seem to be a valid license code"

Cause: The pasted text is incomplete, altered, or was signed for a different public key than the one this deployment was configured with.

Solution: Re-copy the license text exactly as provided, including the signature block. If it still fails, confirm with the Siter team that the license matches your deployment's Licensing__PublicKey.

The Default customer's license cannot be edited

Cause: The deployment supplies the system license through configuration (SITER_SYSTEM_LICENSE, Licensing__SystemLicenseString, or Licensing__LicenseFilePath), which takes precedence over the Admin UI.

Solution: Update the configured value (or the mounted license file) and restart the API.

Users cannot edit even though the license is valid

Cause: The active editor count has reached the license's editor-seat limit.

Solution: Check the customer's Users tab for the seat count. Deactivate unused editor accounts, or contact the Siter team for a license with more seats.