Terminology
This is a list of terms and abbreviations used in the 10Duke Scale documentation.
Terms
API client
An API client is any system or component connecting to the 10Duke Scale APIs.
Your application that the end user uses to consume licenses and that interacts with the 10Duke Scale APIs is an API client. It can be, for example, a desktop, mobile, or web application, or a physical device.
Other examples of API clients are CRM systems, e-commerce systems, integration tools, and scripts.
API keys
A key pair used for authorizing access to 10Duke Scale APIs. The API client signs the 10Duke Scale JWT token using a private key it holds, and 10Duke Scale verifies the token using the public key.
Activation code
Activation codes are a mechanism that allows you to distribute licenses that your customers can redeem later.
You generate activation codes together with the license settings, and licenses are automatically issued to customers when they redeem the activation codes.
Authentication
Authentication means the verification of an end user’s or API client’s identity.
Authorization
Authorization means determining if access to protected resources has been granted.
Checkout
The checkout starts the consumption of the license. The API client requests to check out a license for a license consumer, and receives a license token that authorizes the use of the license.
Customer
Your customers can be companies or individual consumers, depending on whether you’re selling your product on the B2B or B2C market (or both).
End user
End users are the people who consume licenses by accessing and using your products.
Depending on who you’re issuing licenses to, they can be, for example, your B2C customers, users of your B2B customers (such as a company’s employees), or users through your resellers or distributors.
You create end users as a type of license consumer in 10Duke Scale.
Enforced licensing
In enforced licensing, license consumption is limited by the quantity defined in the license. For example, a license can specify a certain amount of use time, and license consumption is not allowed after the available time has been consumed.
Feature
A resource you want to license, such as a feature or a module in your software application.
Your preconfigured products define which features are enabled in each product, and a license to a product allows the customer to use those specific features. You can also enable features on the fly by issuing feature licenses.
Feature flag
Using the 10Duke License Checkout API, you can retrieve a combined list of all the features that a customer or license consumer has access to. These are referred to as “feature flags”, which help you, for example, to control access for a user who has access to features through multiple licenses, or even to toggle access to features on or off without consuming a license.
Feature license
Feature licenses are issued by defining the features and the license model for the license on the fly, instead of using preconfigured products.
Heartbeat
When a license is being consumed, the API client uses a heartbeat message (an API call) to periodically call 10Duke Scale to verify if license use is still allowed and to update usage statistics.
ID token
A standards-based JWT token that contains the details of an authenticated end user.
The API client receives the OIDC ID token from an identity provider after successfully authenticating the end user, and passes the token to 10Duke Scale when making API calls.
Identity provider
An identity provider provides user identity and authentication services.
In identity-based licensing, 10Duke Scale needs to know the end user who is consuming the license. To authenticate end users, 10Duke Scale relies on authentication by a trusted identity provider.
License
A license describes a contract between the licensor (you, the vendor) and a licensee (a customer who has purchased your product). Your licensed software or device connects to 10Duke Scale for authorizing access to the product.
You can issue licenses to customers by using your preconfigured products or by dynamically specifying products and features for the license.
You can apply different types of dimensions for license quantity when issuing licenses, for example, seats or use time.
License consumer
An end user, a device, or a license key that consumes licenses.
License consumption
End users or devices consume licenses when they access a resource (such as your software application) that is protected by a license. Licenses can be consumed in enforced or metered mode.
License container
License containers are used to organize licenses, for example, for access control needs. Each license can only belong to one license container.
License key
License keys can be used to authorize the consumption of licenses in a way that hides who or what is consuming a license.
A license key is a type of license consumer in 10Duke Scale, and you create it as part of a license.
License lease
A license lease is the authorization to consume a licensed resource, conveyed to the API client in a license token.
The lease provides information on the product and features that the license consumer is authorized to consume, the license they’re consuming, the license quantity (the number of seats, the number of uses, or use time), and the validity time of the license.
10Duke Scale creates the license lease when the license consumer starts consuming a license, and sends the API client a license token that describes the lease. The API client makes a periodic heartbeat call to 10Duke Scale to verify the lease is still valid.
License management
License management means the configuring, issuing, assigning, reconciling, revoking, and terminating of licenses. The vendor can carry out these tasks using the 10Duke Scale UI console or through the APIs.
License model
A license model describes the rules that govern how licenses can be consumed. It reflects the business terms on which you as a vendor are granting a license to your customer.
For your preconfigured products, you define the license model as part of the product configuration.
License token
A secure JWT token that 10Duke Scale sends to the API client when a license consumer starts consuming a license. The license token describes the license lease, and the API client uses the token to enforce the license terms.
Licensee
A customer that has a contract with you, the vendor, with a right to use a resource protected by a license. A licensee can be, for example, a company or a consumer that has purchased your product.
Licensor
This is you, the software vendor: the company that grants licenses to licensees.
Metered licensing
In metered licensing, license consumption is not limited by a quantity defined in the license, consumption is only tracked. For example, with a use time-based license, the license consumer can consume the license as needed, and 10Duke Scale provides statistics on the amount of time they have used the license.
Product
Products serve as your preconfigured catalog of what you’re selling and licensing.
A preconfigured product consists of one or more product configurations. You issue licenses to the product using a particular product configuration.
Instead of using a preconfigured product, you can also specify product and feature information for a new license on the fly.
Product configuration
Product configurations can be used to define different variants of a product. For example, you could define a basic and professional variant of your product, or a trial variant with more limited access to features.
A product configuration defines a set of features and a license model, which are applied to the licenses you issue using that configuration.
Product license
Product licenses are issued using preconfigured products, as opposed to issuing feature licenses on the fly.
Seat
License seats tie license consumption to the number of consumers consuming the license (for example, the number of users using your software application).
When issuing a license, you can define how many seats are available (enforced licensing), or seat use can be tracked based on license consumption (metered licensing).
Token validation keys
A key pair used for license token signing and validation. 10Duke Scale signs license tokens using the private key, and the API client verifies the signatures using the public key.
Use count
Use count in a license ties license consumption to how much is consumed from the license’s use count (for example, with a license that counts the number of prints, how many prints a user has taken).
When issuing a license, you can define how much use count is available (enforced licensing), or the use count can be tracked based on license consumption (metered licensing).
Use time
Use time in a license ties license consumption to how much time is consumed from the license’s use time (for example, how long a user uses your software application).
When issuing a license, you can define how much use time is available (enforced licensing), or use time can be tracked based on license consumption (metered licensing).
Abbreviations
API
Application programming interface
AWS
Amazon Web Services
B2B
Business-to-business
B2C
Business-to-consumer
CRM
Customer relationship management
EOL
End-of-life
IANA
Internet Assigned Numbers Authority
JIT
Just-In-Time
JSON
JavaScript Object Notation
JWKS
JSON Web Key Set
JWT
JSON Web Token
OIDC
OpenID Connect
REST
Representational state transfer
RSA
Rivest–Shamir–Adleman
SaaS
Software as a service
SKU
Stock keeping unit
UI
User interface
URL
Uniform Resource Locator