Skip to main content

Create a license

POST 

https://api.freemius.com/v1/products/{product_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 for the plan and pricing. Please note that:

  1. Either period or expires_at or is_block_features must be set.
  2. If you create a license with is_block_features set to false and do not specify period and expires_at, the license will never expire or block features and will continue to work for lifetime.
  3. If you specify an email address, the user must have already activated a license or installed your product before. If your user has not activated a license, then please don't use the field and when they activate the license we will collect their email and register the user with Freemius.
  4. Use the source parameter only when creating migrated licenses from a legacy system.

More information about every other parameters can be found below.

Request

Path Parameters

    product_id integer<int64>required

    The ID of the product.

    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

Bodyrequired

    is_whitelabeledboolean

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

    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]

    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.

    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
    emailstring

    (optional) License owner email.

    existing_install_idstring

    (optional) If the module type is bundle and existing_install_id is a valid ID of an install that is using a product of the bundle, a child license will automatically be created and activated for the install.

    send_emailboolean

    (optional) Whether to email the license key and download link to the user.

    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]

    license_keystring

    (optional) Predefined license key - this can be used when duplicating a license of another product into another product.

Responses

The license created successfully.

Schema
license object

A license represents authorization to use available features of the product.

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