curl --request POST \
--url https://app.lukittu.com/api/v1/dev/teams/{teamId}/licenses \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"customerIds": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"productIds": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"expirationType": "NEVER",
"suspended": true,
"sendEmailDelivery": true,
"metadata": [
{
"key": "<string>",
"value": "<string>",
"locked": true
}
],
"expirationStart": "CREATION",
"expirationDate": "2023-11-07T05:31:56Z",
"expirationDays": 2,
"ipLimit": 1,
"hwidLimit": 2
}
'{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"licenseKey": "<string>",
"expirationType": "NEVER",
"suspended": true,
"teamId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdByUserId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"ipLimit": 1,
"hwidLimit": 2,
"expirationStart": "CREATION",
"expirationDate": "2023-11-07T05:31:56Z",
"expirationDays": 2,
"metadata": [
{
"key": "<string>",
"value": "<string>",
"locked": true
}
],
"lastActiveAt": "2023-11-07T05:31:56Z",
"customers": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"teamId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdByUserId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"email": "[email protected]",
"fullName": "<string>",
"username": "<string>",
"metadata": [
{
"key": "<string>",
"value": "<string>",
"locked": true
}
],
"address": {
"street": "<string>",
"city": "<string>",
"state": "<string>",
"country": "<string>",
"postalCode": "<string>"
},
"discordAccount": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"customerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"discordId": "<string>",
"username": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"avatar": "<string>"
}
}
],
"products": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"teamId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdByUserId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"url": "<string>",
"metadata": [
{
"key": "<string>",
"value": "<string>",
"locked": true
}
]
}
]
},
"result": {
"timestamp": "2023-11-07T05:31:56Z",
"valid": true,
"details": "<string>"
}
}Create a new license with the specified configuration. The license will be automatically generated with a unique key.
curl --request POST \
--url https://app.lukittu.com/api/v1/dev/teams/{teamId}/licenses \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"customerIds": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"productIds": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"expirationType": "NEVER",
"suspended": true,
"sendEmailDelivery": true,
"metadata": [
{
"key": "<string>",
"value": "<string>",
"locked": true
}
],
"expirationStart": "CREATION",
"expirationDate": "2023-11-07T05:31:56Z",
"expirationDays": 2,
"ipLimit": 1,
"hwidLimit": 2
}
'{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"licenseKey": "<string>",
"expirationType": "NEVER",
"suspended": true,
"teamId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdByUserId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"ipLimit": 1,
"hwidLimit": 2,
"expirationStart": "CREATION",
"expirationDate": "2023-11-07T05:31:56Z",
"expirationDays": 2,
"metadata": [
{
"key": "<string>",
"value": "<string>",
"locked": true
}
],
"lastActiveAt": "2023-11-07T05:31:56Z",
"customers": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"teamId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdByUserId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"email": "[email protected]",
"fullName": "<string>",
"username": "<string>",
"metadata": [
{
"key": "<string>",
"value": "<string>",
"locked": true
}
],
"address": {
"street": "<string>",
"city": "<string>",
"state": "<string>",
"country": "<string>",
"postalCode": "<string>"
},
"discordAccount": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"customerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"discordId": "<string>",
"username": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"avatar": "<string>"
}
}
],
"products": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"teamId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdByUserId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"url": "<string>",
"metadata": [
{
"key": "<string>",
"value": "<string>",
"locked": true
}
]
}
]
},
"result": {
"timestamp": "2023-11-07T05:31:56Z",
"valid": true,
"details": "<string>"
}
}API key authentication for development endpoints.
You can create API keys in your team's settings on the Lukittu dashboard.
Include the API key in the Authorization header as: Bearer YOUR_API_KEY
Example:
Authorization: Bearer lukittu_api_key_abc123def456...Your team's UUID. You can find this value in your team's settings on the Lukittu dashboard. UUID v4 identifier
Customer UUIDs to associate with this license
UUID v4 identifier
Product UUIDs to associate with this license
UUID v4 identifier
Defines how license expiration is calculated
NEVER, DATE, DURATION Whether to create the license in suspended state
Whether to send license details via email
Defines when the license expiration countdown begins
CREATION, ACTIVATION Required when expirationType is DATE
Required when expirationType is DURATION
x >= 1x >= 0x >= 1License created successfully
Response data
Show child attributes
Unique license identifier
Lukittu license key format: XXXXX-XXXXX-XXXXX-XXXXX-XXXXX where X is an uppercase letter (A-Z) or digit (0-9)
Defines how license expiration is calculated
NEVER, DATE, DURATION Whether the license is suspended
Team that owns this license
User who created this license
License creation timestamp
License last update timestamp
Maximum number of different IP addresses that can use this license
x >= 0Maximum number of different hardware IDs that can use this license
x >= 1Defines when the license expiration countdown begins
CREATION, ACTIVATION Specific expiration date (when expirationType is DATE)
Number of days until expiration (when expirationType is DURATION)
x >= 1Last activity timestamp for this license
Customers associated with this license
Show child attributes
Unique customer identifier
Team that owns this customer
User who created this customer record
Customer record creation timestamp
Customer record last update timestamp
Customer email address
Customer full name
Customer username
Customer address information
Associated Discord account information
Show child attributes
Discord account record ID
Associated customer ID
Discord user ID (snowflake)
Discord username
Discord account record creation timestamp
Discord account record last update timestamp
Discord avatar hash (null if no custom avatar)
Products associated with this license
Show child attributes
Unique product identifier
Product name
Team that owns this product
User who created this product
Product creation timestamp
Product last update timestamp
Product URL or homepage
Show child attributes