Skip to main content
Activates a license for a device by recording activation details and incrementing the activation count. The system automatically captures the requesting IP address and user agent. On the first activation, the license status changes from pending_activation to active, and the expiration date is calculated based on the product’s validity period settings. Each activation is tracked individually, allowing you to view the complete activation history. The license cannot be activated if it has been revoked, has expired, or if the maximum activation limit has been reached.
Required scope: licenses.write. A key without it receives a 403 error. See Authentication.

Path Parameters

string
required
The licence key to activate (e.g., ABC-123-XYZ-789)

Request Body

string
Optional unique identifier for the device (e.g., MAC address, hardware UUID, machine ID). Max 255 characters.
The IP address and user agent are automatically captured from the request and do not need to be provided.

Response

string
License activated successfully
object

Error Responses

object
Returned when:
  • The licence has been revoked
  • The licence is already active on a product whose licences need no activation
  • The licence has expired
  • The activation limit has been reached
object
Returned when the licence key doesn’t exist or doesn’t belong to your store
object
Returned when device_identifier is not a string or exceeds 255 characters

Implementation Notes

First Activation

When a licence is activated for the first time:
  • Status changes from pending_activation to active
  • activated_at is set to the current timestamp
  • expires_at is calculated based on the product’s validity period (if configured)

Subsequent Activations

  • activations.count is incremented
  • A new activation record is created in the activation history
  • The licence status remains active, and activated_at and expires_at keep their first values

Licences That Need No Activation

When the product’s licence settings have requires_activation set to false, licences are issued already active. Calling this endpoint on such a licence returns 400; validate it with Get License instead. See Licences that need no activation.

Device Tracking

Each activation is recorded with:
  • the device_identifier you send (optional)
  • the IP address of the request, with its country
  • the parsed user agent of the request
  • the activation timestamp
You can retrieve the full activation history using the Get License Activations endpoint.

Example: Desktop Application