Ventry
application

Licenses

// What a license is

A license is the unit of distribution between you and an end-user. A customer redeems a license key in your protected app; VentryShield binds that key to their hardware (HWID), keeps it valid until its expiration date, and rejects further use if it is revoked or moved to a different machine.

  • NAMEHuman-friendly label for the key.
  • KEYThe opaque secret the end-user actually enters.
  • TYPECategory — e.g. Standard, Pro, Lifetime — used in analytics and on the Discover marketplace.
  • EXPExpiration timestamp, or - for an unlimited license.
  • HWIDThe hardware ID currently using the key, or - if the key has never been redeemed.

// The licenses table

/applications/[applicationName]/licenses presents a TanStack React Table with columns for name, key, type, created date, expiration and a per-row actions menu. The toolbar above the table provides:

  • SEARCHSearch by license key.
  • FILTERStatus filter — All, Active, Expired, Unused.
  • COLSColumn visibility toggle so you can hide noise.
  • PAGECustom pagination footer.

// Creating licenses

The Create License button opens a dialog (createLicenseButton). You provide a name, a type, a duration, whether the key is HWID-bound and how many keys to mint at once. Bulk creation generates many keys in a single call and adds them straight into the table.

// Per-row actions

Each row exposes View / Edit (viewLicenseButton): inspect the key, see who is using it, change its expiration, or delete it. Sensitive operations require the ManageLicenses permission.

// Bulk operations

Select multiple rows with the checkboxes, then use the Bulk Manage button (bulkManageButton) to:

  • DURExtend or replace the expiration date in one call.
  • DELPermanently delete every selected license.

// Permissions

Viewing the page requires SeeLicenses or owner. Creating, editing and deleting licenses require ManageLicenses.