Products
The anchor for RSA keys, releases, entitlements, licenses, and API credentials. Every product tab, access type, owner rule, and settings section explained.
A product is the software you license. All license files, validation traffic, RSA signing keys, and product X-API-KEY values belong to one product id. Organizations assign products to tenants; product owners run day-to-day licensing.
Walkthrough: Create your first product · RSA keys & API credentials.
Product lifecycle
- Create — name, initial release version/level, access type (Associated vs Opened), optional description and image.
- Configure — Features, entitlement sets, client-update settings, RSA keys in Settings.
- Staff — add org members on Users tab; refine release access on Access Matrix.
- Release — ship version lines under Releases tab (Releases guide).
- Issue licenses — Licenses tab or global list (Licenses guide).
- Operate — activations, sessions, analytics filtered to this product.
- Retire — deactivate or delete from Settings danger zone (cascades releases and licenses).
Access types: Associated vs Opened
Chosen at create time; drives UI and license rules:
- Associated (Organization) — full vendor workflow. All product tabs, all license types (subject to plan). Licenses tie to org context; only assigned org users access the product.
- Opened (All users) — simplified distribution. Dashboard shows only Overview and Releases tabs. License creation is restricted (e.g. perpetual offline patterns); intended for broadly opened software catalogs.
Product tabs (full owner view)
Tab visibility is computed in the product layout:
- Opened products — Overview + Releases only.
- End user (not in
owners[], not system Admin) — Overview, Releases, Licenses (no Settings, Users, Access Matrix, Audit, Features, Entitlements). - Product owner or system Admin — all tabs below.
Overview
Default tab after opening a product. Confirms access type, owner list, current release line, and license counts before you issue keys or edit entitlements.
- Status badge — Active vs locked (subscription/plan limits may block management).
- Quick counts — releases, licenses, recent activations where the UI surfaces them.
- Owners — who can manage RSA keys, Users, Access Matrix, and license CRUD.
- End-user landing — assigned Members often start here then open Releases or Licenses.
Features
Capability catalog for this product. Each feature becomes a stable key your app checks at runtime via the SDK FeatureManager.
- Create Feature — name, description, and assignment to entitlement groups (Groub/Group tags in UI).
- Search — filter long catalogs before bundling into sets.
- Do not skip keys — feature keys must stay stable across releases; renaming breaks signed entitlements in the field.
Deep dive: Features & entitlements.
Entitlement Sets
Reusable SKUs that bundle features for license issuance. Operators pick a set in the license wizard instead of toggling dozens of flags per customer.
- Create Set — name, description, linked releases, and member features with per-feature values.
- Release scope — sets can target specific version lines (e.g. 1.0.0 vs 1.0.3).
- License wizard — optional dropdown on step 1 attaches packaged entitlements to new keys.
Releases
Version lines for this product. Every license binds to one release id for validation, entitlement scope, and SDK update checks.
- New Release — multi-step wizard: basic info, entitlement sets, files, notes.
- Table columns — version, type (Stable/Beta/…), published status, created/released dates, license count.
- Global list — sidebar Releases shows cross-product view; product tab is the primary operator path.
See Releases guide for draft vs published and artifact linking.
Licenses
Issue, edit, revoke, and download license material for this product.
- Create — two-step wizard (type, product, release, entitlement set → seats, expiry, notes).
- Distribute — license key string + signed
license.binfrom detail view. - Member view — assigned users see licenses they can activate; management buttons require ownership.
- Types — perpetual, trial, subscription, floating, concurrent, node-locked, credit-based, usage-based (Licenses guide).
Users
Onboard organization members onto this product. Users added here gain product scope but no release access until the Access Matrix grants versions.
- Select organization — dropdown lists orgs where this product is assigned.
- Multi-select members — pick people who are not already on the product.
- Empty state — when every org member is already assigned, the modal explains that onboarding is complete.
- Owners — listed in
product.owners; separate from Users tab assignment.
Access Matrix
Fine-grained per-user, per-release grants. Essential when org Members should see only specific version lines or when Viewers need read-only release access.
- Manage Access — checkbox list of all published releases plus Grant to all versions (includes future releases).
- Search versions — filter long release lists inside the modal.
- Status banner — shows how many versions a user already has vs total available.
- Without matrix rows — assigned Members may see the product but cannot activate licenses on blocked versions.
Audit Logs
Product-scoped audit trail—narrower than org audit but includes license lifecycle events tied to this software.
- Typical actions — LicenseCreated, LicenseDeleted, LicenseFileDownload, InvitationSent (when product context applies).
- Filters & export — same pattern as org audit: action, entity type, date range, CSV export.
- Support workflow — correlate customer ticket with IP and timestamp before revoking a key.
Settings
Product owners configure runtime behavior and cryptographic material. End users and non-owners never see this tab.
- General — name, description, status, access type (where editable after create).
- Client product updates — toggle Offer product updates to clients; when disabled, update APIs return no upgrade for this product.
- License signing keys (RSA) — generate, regenerate, download public PEM; private key never leaves the server (RSA guide).
- Danger zone — delete product; releases and licenses cascade.
Rotation warning: regenerating RSA keys invalidates existing license.bin files until customers re-download licenses and apps embed the new public key.
Who can do what on products
- System Admin (JWT) — bypasses many ownership checks on API; sees admin sidebar.
- Product owner — full tab set (except Opened trim); create/edit licenses, RSA keys, Users, Access Matrix.
- Assigned Member — Overview, Releases, Licenses (consume/activate per matrix); no Settings.
- Viewer — read-only paths via access matrix; no license creation.
- Org Admin without ownership — org team management but not product RSA keys unless also listed as owner.
REST & runtime
/api/Products/… — CRUD, RSA key routes, settings. Customer apps use product X-API-KEY on anonymous license routes—not your operator JWT.
Products & releases API · Licenses API · .NET SDK · System overview
