Docs
ExtensionsCore

Overview

The licensing engine: licenses, products, customers, addons, whitelists, validation, and logs.

core is the heart of Kora. It is always loaded, and every other extension builds on it. It manages your licenses and the records around them, validates keys over the API, and keeps a log of what happened.

The validation endpoint your product calls, and the full management API, are on the API Reference, with a live playground and code samples. Settings are on the Configuration page.

What it manages

RecordWhat it is
LicensesThe keys you issue. Each belongs to a product and a customer, can carry addons and whitelists, and can expire.
ProductsThe things you license. Products can carry custom fields and reusable templates.
CustomersWho a license belongs to. Customers carry custom fields such as an email or Discord id.
AddonsOptional extras attached to a product or license (for example a "Full Source" upgrade).
WhitelistsHeader, body, or IP allow-lists that a key is checked against on validation, each with an optional per-key limit.

Everything above is managed from the dashboard (Licenses, Products, Customers pages), the console (licenses, products, customers, addons, whitelists commands), and the API.

Validation

Keys are checked at POST /api/licenses/validate. It is public, so your product calls it directly with no API key. The response tells you whether the key is valid, along with its status, product, customer, and any addons.

The full request and response are on the API Reference.

Logs

core records two logs, each with a configurable retention:

  • Requests every API call, with method, path, status, duration, and caller. Shown on the Requests page.
  • Activity licensing events such as validations, rejections, and expiries. Shown on the Activity page.

On this page