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