Licenses (vendor workspace)
Issue, distribute, revoke, and monitor licenses from the dashboard. Covers the four-step create wizard, detail tabs (including Usage for metered types), license types, and vendor vs end-user views.
Vendors create licenses against a product and software release, then distribute the license key and signed license.bin. License type drives expiry, seats, activations, sessions, and SDK validation rules.
Walkthrough: Generate your first license · Model guides: Perpetual, Trial, Subscription, Floating, Concurrent, Node-locked, Credit-Based, Usage-Based.
License models at a glance
- Perpetual — buy-once; online or offline; optional expiry for maintenance.
- Trial — time-boxed evaluation; extend or convert to paid.
- Subscription — recurring term; renew or revoke on churn.
- Floating — shared pool; seats enforced by live sessions; always online.
- Concurrent — shared team key; seats enforced by device activations.
- Node-locked — one machine per license; hardware bind + transfer; auto-bind or owner approval.
- Credit-Based (
MeteredToken) — online-only; shared credit wallet; per-feature token pricing. Full guide. - Usage-Based (
MeteredCount) — online-only; shared use counter; one use per consume. Full guide.
License lifecycle (vendor view)
- Prerequisites — product, release, RSA keys generated (RSA keys).
- Create — four-step wizard (Activation → License Type → Basic Info → Details).
- Distribute — copy license key; download
license.binfrom detail view. - Activate (customer) — SDK or
POST /api/Licenses/validatewith productX-API-KEY. - Operate — monitor activations/sessions; extend trials; adjust seats where allowed.
- Revoke / delete — immediate invalidation for online paths; offline files fail on next online refresh.
- Transfer — reassign issued-to user or node-locked device where policy allows.
Where to work in the dashboard
Use the sidebar Licenses list for cross-product search, or open a product → Licenses tab when you already know the software context. End customers use My Licenses (not the vendor workspace) for keys issued to their account.
Create wizard — Step 1: Activation
Choose how the license is validated at runtime:
- Online — server validation, activations, and sessions; required for Floating, Subscription, Credit-Based, and Usage-Based.
- Offline — signed
license.binonly; Perpetual, Trial, and Node-Locked can use offline mode.
Create wizard — Step 2: License Type
Pick the model card—everything downstream (seats, sessions, tokens, binding) follows this choice.
- Type cards — Perpetual, Trial, Subscription, Floating, Concurrent, Node-Locked, Credit-Based, Usage-Based (plan may gate types).
- Online-only types are disabled when Offline activation is selected on step 1.
Create wizard — Step 3: Basic Info
- Product — required when creating from the global list; pre-filled in product context.
- Software release — required; binds validation and update checks to a version line.
- Issuer — optional vendor name on license metadata.
- Issued to — email, end-user picker, or auto (type-dependent).
- Entitlement set — optional package from the product Entitlement Sets tab.
Create wizard — Step 4: Details
Operational limits and labels operators and support teams rely on after issuance.
- License name — internal label (required); appears in lists and audit logs.
- Duration / expiry — subscription length, trial period, or none for perpetual.
- Seats & limits — max activations (concurrent/node-locked), max concurrent users (floating), token balance (credit-based), usage caps (usage-based).
- Node-Locked — device binding mode — Auto-bind on first validation or Product owner approval (Details step only).
- Perpetual online — optional username/password for credential validation.
- Notes — rich-text operator notes (sales context, support tickets).
- Success screen — copy license key; open detail to download
license.bin.
License detail tabs (vendor)
Opened from any license row. Tab visibility depends on license type and whether you are a product owner or system Admin.
Overview (always)
Single-pane summary for day-to-day vendor ops.
- License key, status badge, type, release, issued-to, expiry.
- Download
license.bin, revoke, delete, transfer user, edit link. - Copy key for email delivery; audit log correlates downloads with IP.
Activations
Device and environment seats for binding models. Visible when the license type supports hardware or device tracking and you have owner/Admin rights.
- Per-device rows with block/unblock and support notes.
- Primary surface for Concurrent seat math (activations, not sessions).
- Node-Locked — approve pending devices when binding mode is Product owner approval.
- Perpetual online — audit trail of machines (e.g.
2/∞in licenses list).
See Activations.
Sessions
Live online connections with heartbeat timestamps. Shown for online-capable licenses—especially Floating where seats follow live sessions, and for Perpetual online / Node-Locked online monitoring.
- Disconnect stale clients holding seats after app crash.
- Correlate session id with API logs for support.
- Live toggle and auto-refresh on global Sessions page.
See Sessions.
Usage
Credit-Based and Usage-Based licenses only: token balance or metered counters, consumption history, and operator adjustments. See Credit-Based and Usage-Based guides.
Device
Node-locked licenses only: bound hardware fingerprint, activation history, transfer/unbind workflows when policy allows a machine change.
License status lifecycle
- Active — valid for validation within policy limits.
- Expired — past expiry (trial/subscription); validation fails.
- Revoked — operator-forced stop; online validation fails immediately.
- Suspended / locked — billing or compliance holds (deployment-specific).
Roles
- Product owner / system Admin — create, edit, revoke, delete, see Activations tab.
- Assigned Member — may view licenses on permitted releases; typically cannot create.
- End user — routed to
/dashboard/my-licensesfor keys issued to their account.
Anonymous validation (customer runtime)
Apps call POST https://licenpro.runasp.net/api/Licenses/validate with product X-API-KEY—never the RSA private key or operator JWT.
