customer metadata fields (address, postcode, state, country, city, reference)
Interactive reference (raw)
:::note
:::
For a trial license to be created, the product must have trial licenses enabled by setting allow_trial to true.
By default, the same combination of hardwareID and product will generate the same trial key. This ensures that users cannot obtain multiple trial keys on the same device.
If you want to permit multiple trial licenses on the same device, you can enable this feature by adjusting the Allow multiple licenses on trial setting in the vendor platform under your company account settings.
Schema
Request Query Parameters
JSON Schema
Response Body
The response from this endpoint will differ depending in whether a trial license already exists for the requested product, hardware ID and email* (*if using user-based license)
1
If a new trial license is being created
2
If a trial license already exists
Examples
Errors
If an error occurs, the response will have an HTTP status code of 400 or higher, and the response body will contain an error description in the following format:
JSON Schema
List of exceptions
missing_parameters (400): Some parameters are missing in the request: { params }
missing_hardware_id (400): The hardware_id missing in the request
unknown_product (400): Provided product was not found
trial_not_allowed (400): Product does not allow trial
email_missing (400): An email is missing for user-based product
type TrialKeyResponseBody = {
id: number,
license_type: 'perpetual' | 'time-limited' | 'consumption' | 'subscription',
order_id: number,
product_id: number,
max_activations: number,
times_activated: number,
is_trial: true,
active: boolean,
enabled: boolean,
max_transfers: number,
trial_days: number,
maintenance_duration: string | null, // Length of time expressed in days, months or years, e.g. 5d, 2m, 3y
validity_period: string | null, // Date string in full ISO 8601 format, e.g. "2024-09-27T23:30:48.016Z"
enable_maintenance_period: boolean,
prevent_vm: boolean,
is_hardware_key_auth: boolean,
initial_password: string,
metadata: JSON,
created_at: number, // UNIX Timestamp in milliseconds
updated_at: number, // UNIX Timestamp in milliseconds
LicenseProductFeatures: ({
id: number,
product_feature_id: number,
max_consumption: number,
allow_overages: boolean,
max_overages: number,
reset_consumption: number,
consumption_period: string | null,
expiry_date: string | null, // Date string in full ISO 8601 format, e.g. "2024-09-27T23:30:48.016Z"
is_floating: boolean,
is_floating_cloud: boolean,
metadata: JSON,
// the following properties are only present if is_floating=true or is_floating_cloud=true
floating_timeout: number,
floating_users: number,
})[],
LicenseCustomFields: {
product_custom_field_id: number,
value: string
}[],
// the following properties are only present for key-based product licenses
license: string,
license_key: string,
// the following properties are only present for user-based product licenses
license_user: string,
initial_password: string,
max_license_users: number,
license_user_id: number | null,
// the following properties are only present if license_type="subscription"
grace_period: number,
allow_grace_period: boolean,
// the following properties are only present if license_type="consumption"
allow_overages: boolean,
max_overages: number,
max_consumptions: number,
valid_duration: null,
consumption_period: string | null,
reset_consumption: boolean,
}
{
license_type: 'perpetual' | 'time-limited' | 'consumption' | 'subscription',
is_trial: true,
// the following property is only present on key-based product licenses
license: string,
// the following property is only present on user-based product licenses
license_user: string,
}