Skip to main content

Create a new license

POST 

https://api.freemius.com/v1/products/{product_id}/installs/{install_id}/plans/{plan_id}/pricing/{pricing_id}/licenses.json

Auth:Bearer TokenSCOPE: PRODUCT

Product-scoped API tokens allow you to operate on the product itself. This token usually allows read-only access to the product configuration and write access to several operations on subscriptions, customers, payments, and more. For most SaaS or app integrations, this is the token you will need.

  1. Go to the Freemius Developer Dashboard.
  2. Open the Settings page of the relevant product.
  3. Click the API & Keys tab.
  4. Copy the API Bearer Authorization Token from the UI.

Create a new license and assign it to the install.

Either period or expires_at must be set.

Request

Path Parameters

    product_id integer<int64>required

    The ID of the product.

    Possible values: >= 1

    Example: 1234
    install_id integer<int64>required

    The ID of the install.

    Possible values: >= 1

    Example: 1234
    plan_id integer<int64>required

    The ID of the plan.

    Possible values: >= 1

    Example: 1234
    pricing_id integer<int64>required

    The ID of the Pricing.

    Possible values: >= 1

    Example: 1234

Query Parameters

    fields string

    Comma separated list of fields to return in the response. If not specified, all fields are returned.

    Example: id,name,slug

Bodyrequired

    is_block_featuresboolean
    Default value: true

    Whether to block features after expiration of the license. If set to false, this would not block features, would only block updates.

    periodnumber

    The billing cycle of the subscription in number of months. 1 means monthly, 12 means annually, 0 means lifetime usually when subscriptions are created for lifetime trials.

    Possible values: [1, 12, 0]

    expires_atstring<date-time>nullable

    The expiration date of the license. If null then it's a lifetime license.

    Example: 2025-12-31 23:59:59
    send_emailboolean

    Whether or not to email the license key and download link to the user.

Responses

License created successfully.

Schema
idstring<int64>

The unique identifier of the entity.

Possible values: >= 1

Example: 123456
createdstring<date-time>

The date and time the entity was created, under UTC timezone.

Example: 2025-01-01 00:00:00
updatedstring<date-time>nullable

The date and time the entity was updated, under UTC timezone. If null then the entity was never updated since its creation.

Example: 2025-01-01 00:00:00
plugin_idstring<int64>

The ID of the product the entity belongs to.

Possible values: >= 1

Example: 123456
user_idstring<int64>nullable

The ID of the user the entity belongs to. If NULL then still not associated to any user.

Possible values: >= 1

Example: 123456
plan_idstring<int64>

The ID of the plan associated with the entity.

Possible values: >= 1

Example: 123456
pricing_idstring<int64>nullable

The ID of the pricing associated with the entity.

Possible values: >= 1

Example: 123456
quotaintegernullable

The maximum number of license activations. If null then the license will support unlimited activations.

Example: 10
activatedinteger

The total number of production activation the license has. This does not count local or staging environment activations.

Example: 1
activated_localintegernullable

The number of times the license is activated on local or staging environments.

Example: 1
expirationstring<date-time>nullable

The expiration date of the license. If null then it's a lifetime license.

Example: 2025-12-31 23:59:59
secret_keystring

The license key. This is used for activating the license on the user's site.

Example: sk_123FGqM456Pa786WtOp%^+67Y+;sXXz
is_free_localhostboolean
Default value: true

Whether the license offers unlimited local or staging environment activations.

is_block_featuresboolean
Default value: true

Whether to block features after expiration of the license. If set to false, this would not block features, would only block updates.

is_cancelledboolean

If the license is canceled from the Developer Dashboard.

is_whitelabeledboolean

Guide the Freemius WP SDK when the product should be running in a white-label mode.

environmentnumber

The environment the entity belongs to. 0 means it belongs to the production environment, 1 means it belongs to the sandbox environment.

Possible values: [1, 0]

Example: 0
sourcenumber

The source of the migration data. To get support migrating from other platform please see our documentation.

  • 0 - Freemius
  • 1 - Other
  • 2 - Easy Digital Downloads (EDD)
  • 3 - WooCommerce (WC)
  • 4 - Rating Widget
  • 5 - Gumroad
  • 6 - CodeCanyon
  • 7 - ThemeForest
  • 8 - AppSumo
  • 9 - SendOwl
  • 10 - WHMCS
  • 11 - Lemon Squeezy

Possible values: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

We use essential cookies to enable our site to function. With your consent, we also use analytics and advertising cookies to understand how visitors interact with our site and to improve our services.
Learn More