Assigning Feature Entitlements
Feature entitlements define what a license enables within your product. In Cryptlex, feature entitlements can be assigned to a license in two ways: via Entitlement Sets or directly on the license itself. This flexibility allows both standardized tier-based licensing and custom per-customer overrides.
A feature is available to a license by being present on it and unavailable when absent, so there is no enabled or disabled value to set. The value is a separate, optional string field that Cryptlex delivers, so your app parses and interprets it, and your code enforces whatever it configures.
Linking feature entitlements via Entitlement Sets
Entitlement Sets serve as reusable bundles of feature entitlements that can be linked to multiple licenses. You can select an Entitlement Set when creating or editing a license in the admin portal.
Use when:
- You offer predefined product tiers like "Standard", "Pro", or "Enterprise"
- You want to ensure consistency across licenses
- You prefer centralized management of feature entitlements
Assigning feature entitlements directly to a license
Feature entitlements can also be added directly to a license without using an Entitlement Set, when creating or editing the license in the admin portal.
Use when:
- Each customer requires a specific configuration outside the standard tiers
- You need to override a value from the Entitlement Set for a specific license
- You want to grant temporary or experimental access to a feature
Combining both approaches
Cryptlex supports a hybrid approach where a license can use both an Entitlement Set and additional direct license-level feature entitlements.
Example:
- License uses the
ProEntitlement Set (with feature entitlementmax_projects = 20) - You override
max_projects = 50directly on the license - You also add
priority_supportdirectly for this specific customer
At runtime, license-level entitlements take precedence over values from the linked Entitlement Set. See Accessing Feature Entitlements for the resolution order.