Metadata
Metadata lets you attach custom fields to products, licenses, users, and activations.
Metadata properties
Metadata added to a product, license, or user has three properties:
| Property | Description |
|---|---|
| Key | Name of the metadata field. |
| Value | Value stored against the key. |
| View Permissions | Controls who can see the field. See below. |
View Permissions
Admins control the visibility of metadata by granting one or more of the following permissions:
| Permission | Visible to | Web API |
|---|---|---|
| Activation | Your app, through the LexActivator SDK | POST /v3/activations |
| User | End users in the customer portal | GET /v3/me/licenses |
| Organization | Organization admins in the customer portal | GET /v3/organizations/:id/licenses |
| Reseller | Reseller admins in the reseller portal | GET /v3/resellers/:id/licenses |
Product metadata
This metadata can be added to products and can be accessed in your application once a trial or license is activated.
Use it to store product-level information that you want to access in your app and that can change over time. Retrieve it in your app with GetProductMetadata().
License metadata
License metadata allows you to attach custom data to each license at the time of creation. You can store useful identifiers such as order_id, customer_id, or any other key-value data relevant to your business logic.
This metadata can also be accessed within your application once the license is activated, making it ideal for use cases where additional context is needed alongside the license. Retrieve it in your app with GetLicenseMetadata().
Enforcing a 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. Provide the field names as comma-separated strings, such as order_id and customer_id, 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 and address in the user metadata. Retrieve it in your app with GetLicenseUserMetadata().
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, such as the number of CPU cores or custom data provided by the user. Set it with SetActivationMetadata() and retrieve it with GetActivationMetadata().
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, such as the number of CPU cores or custom data provided by the user. Set it with SetTrialActivationMetadata() and retrieve it with GetTrialActivationMetadata().