Cryptlex Documentation
  • Welcome to Cryptlex!
  • Getting Started
    • Overview
    • Licensing Models
  • License Management
    • License Templates
    • Implementing License Models
    • Custom License Fields
    • Meter Attributes
    • Creating Licenses
    • Renewing Licenses
    • Extending Licenses
    • Suspending Licenses
    • Revoking Licenses
    • Maintenance Policies
  • User Management
    • Roles
    • Creating Users
    • Authenticating Users
    • Organizations
    • Resellers
    • Customer Portal
    • Reseller Portal
    • Google SSO
    • SAML SSO
  • Feature Management
    • Overview
    • Feature Flags and Product Versions
    • Use Cases
    • Creating Product Versions
  • Release Management
    • Overview
    • Creating Releases
    • Distributing Releases
  • Node Locked Licenses
    • Overview
    • Using LexActivator
      • Using LexActivator with C, C++ and Objective C
      • Using LexActivator with C#
      • Using LexActivator with VB.NET
      • Using LexActivator with Java
      • Using LexActivator with Delphi
      • Using LexActivator with Python
      • Using LexActivator with Go
      • Using LexActivator with Node.js
      • Using LexActivator with Ruby
      • Using LexActivator with Android
      • Using LexActivator with iOS
      • Using LexActivator with Flutter
    • Using Web API
    • Offline Activations
    • Proxies and Firewall
  • Floating Licenses
    • Overview
    • Hosted Floating License Server
    • On-Premise Floating Licenses
      • LexFloatServer
      • Using LexFloatClient
        • Using LexFloatClient with C, C++ & Objective C
        • Using LexFloatClient with C#
        • Using LexFloatClient with VB.NET
        • Using LexFloatClient with Java
        • Using LexFloatClient with Delphi
        • Using LexFloatClient with Python
        • Using LexFloatClient with Node.js
        • Using LexFloatClient with Go
        • Using LexFloatClient with Android
        • Using LexFloatClient with iOS
      • Offline Floating License
  • Named User Licenses
  • Timed Trials
    • Verified Trials
    • Unverified Trials
  • Licensing Docker Apps
  • Webhooks
  • Automated Emails
  • Web Integration
    • Personal Access Tokens
    • Using Web API
    • Using Zapier
    • Using FastSpring
    • Custom Development
  • Changelog
    • Web API
    • LexActivator
    • LexFloatClient
    • LexFloatServer
  • Legal
    • Terms of Service
    • Privacy Policy
    • Subprocessors
    • Data Processing Addendum
    • Service Level Agreement
    • Security, Privacy, and Compliance
    • Open Source Licenses
  • Cryptlex On-Premise
    • Overview
    • System Requirements
    • Server Layout
    • Installation Guide
      • Docker Compose
      • Kubernetes
    • Configuring Client Libraries
    • Monitoring and Error Reporting
Powered by GitBook
On this page
  • Metadata properties
  • Product metadata
  • License metadata
  • Enforcing schema for metadata fields
  • User metadata
  • Activation metadata
  • Trial activation metadata
  1. License Management

Custom License Fields

Metadata properties

The metadata which can be added to products, licenses and users has following three properties:

Key

Name of the metadata key.

Value

Value of the metadata key.

View Permissions

Admins can control the visibility of metadata by configuring the metadata permissions as follows:

• Activation: Metadata will be accessible to developers in the LexActivator SDK (and via Web API through the POST v3/activations endpoint).

• User: Metadata will be visible to users within the customer portal (and via Web API through the GET v3/me/licenses endpoint).

• Organization: Metadata will be visible to the organization-admins in the customer portal (and via Web API through the GET v3/organizations/:id/licenses endpoint).

• Reseller: Metadata will be visible to reseller-admins in the reseller portal (and via Web API through the GET v3/resellers/:id/licenses endpoint).

Product metadata

This metadata can be added to products and can be accessed in your application once a trial or license is activated.

It can be used for storing some product-level information that you want to access in your app and this information can change over time.

License metadata

This metadata can be added to your licenses at the time of creating a license. You can store additional data like order_id, customer_id , feature1, feature2 etc. with the license.

This can be accessed in your application once a license is activated. Its common use case is feature detection, i.e. if you wish to restrict the features in your application based on the value of metadata fields.

In order to require licenses to have specific metadata properties, set them in the license template requiredMetadataKeys field.

Enforcing schema for metadata fields

You can enforce the schema for metadata fields in the license template too, so you don't have to manually create the fields every time you create a license. Just provide the field names as comma-separated strings e.g. order_id, customer_id , feature1, feature2 etc. in the required metadata keys property of the license template.

User metadata

This metadata can be added to your license users at the time of creating a user. You can store additional data like phone_number, address etc. in the user metadata.

Activation metadata

This metadata can be added by your application at the time of activating the license.

It can be used to collect additional details from the machine on which the license is activated, e.g. number of CPU cores, any custom data provided by the user etc.

Trial activation metadata

This metadata can be added by your application at the time of activating the trial.

It can be used to collect additional details from the machine on which the trial is activated, e.g. number of CPU cores, any custom data provided by the user etc.

PreviousImplementing License ModelsNextMeter Attributes

Last updated 8 months ago