Licensing
Planeon ships with a signed, compiled-in Free license and needs no license file, account, or network access to start working. Applying a paid license later only ever raises what the platform allows — it never interrupts a desktop or session that's already running, and going over a limit is never a hard stop, only a block on the next thing that would grow usage further.
Editions
A license carries an edition label (Free, Pro, Enterprise) shown as a badge on the License page, plus the actual entitlement: a set of per-dimension limits and optional features. The Free edition's limits are fixed and built into every release; Pro and Enterprise limits and features are set per the license your vendor issues you, so the table below shows what each dimension or feature can mean, not one fixed number per paid edition:
| Dimension / feature | Free (built-in default) | Pro / Enterprise |
|---|---|---|
| Seats (named users) | 25 | Set by your license |
| Clusters | 1 | Set by your license |
| Organizations | 1 | Set by your license |
| Desktop pools | Unlimited | Set by your license |
| Managed VMs | Unlimited | Set by your license |
| Concurrent sessions | Unlimited (reserved dimension — not enforced in any edition yet) | Reserved dimension — not enforced yet |
| White-label branding | Not available | Reserved feature flag (white_label) — see below |
| Multi-organization | Not available | Reserved feature flag (multi_org) — see below |
| Metering export | Not available | Reserved feature flag (metering_export) — see below |
The three feature flags (white_label, multi_org, metering_export)
are reserved, the same way the concurrent-sessions dimension is: a
license can carry them today, but the capabilities themselves ship in
future releases — a license granting them now enables each one when it
arrives, with no license change needed. Nothing in the current release
changes behavior based on these flags.
Seats mean named users, not per-machine installs: a user consumes a seat the first time they get a desktop entitlement, directly or through a group. Administrators and operators who hold no desktop entitlement consume no seat. Seats are allocated first-come, first-served, in the order each user first appeared.
The Free edition
A fresh install runs on the Free edition with zero configuration: 1 cluster, 1 organization, 25 seats, unlimited desktop pools and managed VMs, and no expiry — it never needs to phone home or be renewed, and works fully offline. This is the permanent fallback the platform returns to whenever no paid license is installed, or an installed one lapses past its grace period (see Expiry and grace below).
Installing a license
Open Settings → License (visible to users with the platform:admin
permission). The License card shows your current edition, its limits
and usage, and seat holders, and has two controls:
- Apply — paste the signed license token (a JWT your vendor gives you) into the text box under Apply a license and select Apply. A license whose limits sit below your current usage is still accepted — going over a limit is a visible, survivable state, not a rejected one (see Limits and what happens at a limit below).
- Remove license — falls back to the Free edition immediately, after a confirmation ("Remove the installed license? The platform falls back to the free edition.").
The same two operations are available over the API — PUT /api/v1/license to apply a token, DELETE /api/v1/license to remove it,
both guarded by the same platform:admin permission, plus GET /api/v1/license to read the same status the License card shows. There's
no separate activation flow or vendor account portal: the token you apply
is the license.
Outside the License page itself, a small banner surfaces warning,
grace, and degraded states across every page of the console — it
stays silent while your license is valid, and for users without
platform:admin.
Expiry and grace
An installed license moves through one path as it approaches and passes its expiry date:
Valid → Warning (starting 14 days before expiry; full limits still apply, the License page just starts flagging it) → Grace (after expiry or revocation, for the license's grace period — 14 days unless your license specifies a different one) → Degraded (limits fall back to the Free edition's).
Nothing in this path ever stops a running desktop or session. Degraded only means no new pools, VMs, or clusters above the Free edition's limits, and no new sessions for users already over the Free seat limit — everything already running keeps running.
Limits and what happens at a limit
Every limit is checked only against new activity — creating a cluster, a pool, a VM slot, or starting a new session for a user who doesn't already hold a seat. Existing resources and active sessions are never touched by a license change, including applying a smaller license than your current usage.
When a dimension is over its limit, the License page shows exactly which seat holders and which dimensions sit over the line, and only the next create or session start that would grow usage further is denied — for example, a pool that's already over its license's managed-VM limit simply isn't grown further by reconciliation until you're back under the limit or apply a larger license.
Next steps
Purchasing and support for Pro and Enterprise licenses is outside the scope of this page — contact your Planeon vendor or reseller.