---
canonical_url: "https://docs.composio.dev/toolkits/netlicensing"
markdown_url: "https://docs.composio.dev/toolkits/netlicensing.md"
product: "platform"
version: null
last_updated: null
---

# NetLicensing

NetLicensing is a software license management platform for administering products, license models, licensees, licenses, and commerce workflows.

- **Category:** developer tools
- **Auth:** API_KEY
- **Composio-managed OAuth available?** N/A
- **Tools:** 21
- **Triggers:** 0
- **Slug:** `NETLICENSING`
- **Version:** 20260826_00

## Tools

### Check In Licensee Session

**Slug:** `NETLICENSING_CHECK_IN_LICENSEE_SESSION`

Return and release a NetLicensing floating-license session for a licensee and return the validation results and provider cache TTL when supplied.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `session_id` | string | Yes | Required unique identifier for the floating-license session. |
| `product_number` | string | No | Product number used by general validation when required for licensee auto-creation. |
| `licensee_number` | string | Yes | Licensee number or alias whose floating-license session is being changed. |
| `max_checkout_validity` | integer | No | Optional positive maximum checkout validity for the session, in seconds. |
| `product_module_number` | string | Yes | Number of the Floating product module that owns the session. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check Out Licensee Session

**Slug:** `NETLICENSING_CHECK_OUT_LICENSEE_SESSION`

Allocate a NetLicensing floating-license session for a licensee and return the validation results with their cache TTL.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `session_id` | string | Yes | Required unique identifier for the floating-license session. |
| `product_number` | string | No | Product number used by general validation when required for licensee auto-creation. |
| `licensee_number` | string | Yes | Licensee number or alias whose floating-license session is being changed. |
| `max_checkout_validity` | integer | No | Optional positive maximum checkout validity for the session, in seconds. |
| `product_module_number` | string | Yes | Number of the Floating product module that owns the session. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Bundle

**Slug:** `NETLICENSING_CREATE_BUNDLE`

Create a purchasable NetLicensing bundle from existing license templates.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Human-readable bundle name. |
| `price` | number | No | Bundle price. A positive price requires currency to be EUR. |
| `active` | boolean | Yes | Whether the bundle is active. |
| `number` | string | No | Optional stable bundle number; NetLicensing generates one when omitted. |
| `currency` | string | No | Bundle-price currency. Required as EUR when price is positive. |
| `description` | string | No | Bundle description. |
| `license_template_numbers` | array | Yes | One or more license-template numbers included in the bundle. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create License

**Slug:** `NETLICENSING_CREATE_LICENSE`

Assign a license from a license template to a licensee.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Human-readable license name. |
| `price` | number | No | License-specific price. A positive price requires currency to be EUR. |
| `active` | boolean | Yes | Whether the license is active. |
| `hidden` | boolean | No | Whether the license is hidden from customer-facing views. |
| `number` | string | No | Optional stable license number; NetLicensing generates one when omitted. |
| `currency` | string | No | License-price currency. Required as EUR when price is positive. |
| `quantity` | integer | No | Allocated quantity. |
| `start_date` | string | No | ISO-8601 date-time when the license starts. |
| `time_volume` | integer | No | License-specific time allowance override. |
| `used_quantity` | integer | No | Initial consumed quantity. |
| `parent_feature` | string | No | Parent feature license number when this license is a child feature. |
| `licensee_number` | string | Yes | Number of the licensee receiving the license. |
| `time_volume_period` | string ("DAY" | "WEEK" | "MONTH" | "YEAR") | No | Period unit for time_volume. |
| `license_template_number` | string | Yes | Number of the template defining license behavior. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Licensee

**Slug:** `NETLICENSING_CREATE_LICENSEE`

Create a licensee under a product so licenses can be assigned and validated.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Human-readable licensee name. |
| `active` | boolean | Yes | Whether the licensee is active. |
| `number` | string | No | Optional stable licensee number; NetLicensing generates one when omitted. |
| `product_number` | string | Yes | Number of the product that owns the licensee. |
| `custom_properties` | object | No | Non-secret custom licensee properties. Use exact NetLicensing property names as keys. |
| `marked_for_transfer` | boolean | No | Whether this licensee's licenses may be transferred to another licensee. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Licenses From Bundle

**Slug:** `NETLICENSING_CREATE_LICENSES_FROM_BUNDLE`

Create one or more licenses for a licensee from the license templates associated with a bundle.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `bundle_number` | string | Yes | Number of the bundle whose templates will create licenses. |
| `licensee_number` | string | Yes | Number of the licensee that will receive the created licenses. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create License Template

**Slug:** `NETLICENSING_CREATE_LICENSE_TEMPLATE`

Create a license template under a product module using a supported license type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Human-readable template name. |
| `price` | number | No | Template price. A positive price requires currency to be EUR. |
| `quota` | integer | No | Default quota for quota-based licensing. |
| `active` | boolean | Yes | Whether the template is active. |
| `hidden` | boolean | No | Whether the template is hidden from customer-facing views. |
| `number` | string | No | Optional stable template number. |
| `currency` | string | No | Template-price currency. Required as EUR when price is positive. |
| `quantity` | integer | No | Default quantity for quantity-based licensing. |
| `automatic` | boolean | No | Whether licenses are generated automatically from this template. |
| `time_volume` | integer | No | Time allowance for time-limited licenses. |
| `license_type` | string ("FEATURE" | "TIMEVOLUME" | "FLOATING" | "QUANTITY") | Yes | License type returned by NETLICENSING_LIST_LICENSING_OPTIONS. |
| `max_sessions` | integer | No | Maximum concurrent sessions. |
| `hide_licenses` | boolean | No | Whether licenses generated from this template are hidden. |
| `time_volume_period` | string ("DAY" | "WEEK" | "MONTH" | "YEAR") | No | Period unit for time_volume. |
| `product_module_number` | string | Yes | Number of the parent product module. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Product

**Slug:** `NETLICENSING_CREATE_PRODUCT`

Create a NetLicensing product that can contain product modules and licensees.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Human-readable product name. |
| `active` | boolean | Yes | Whether the product is active. |
| `number` | string | No | Optional stable product number; NetLicensing generates one when omitted. |
| `version` | string | Yes | Product version label. |
| `vat_mode` | string ("GROSS" | "NET") | No | Whether configured prices include VAT (GROSS) or exclude it (NET). |
| `discounts` | array | No | Discount tiers, each defined by a qualifying total price, currency, and discount amount. |
| `description` | string | No | Product description. |
| `licensing_info` | string | No | Licensing information shown for the product. |
| `licensee_auto_create` | boolean | No | Whether validation may automatically create missing licensees. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Product Module

**Slug:** `NETLICENSING_CREATE_PRODUCT_MODULE`

Create a licensing-model-specific module under a NetLicensing product.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Human-readable module name. |
| `active` | boolean | Yes | Whether the module is active. |
| `number` | string | No | Optional stable module number; NetLicensing generates one when omitted. |
| `red_threshold` | integer | No | Usage threshold for a failing validation result. |
| `product_number` | string | Yes | Number of the parent product. |
| `licensing_model` | string | Yes | Licensing model name returned by NETLICENSING_LIST_LICENSING_OPTIONS. |
| `yellow_threshold` | integer | No | Usage threshold for a warning validation result. |
| `custom_properties` | object | No | Model-specific scalar properties. Use exact NetLicensing property names as keys. |
| `node_secret_modes` | array | No | Node-secret modes enabled for the module: PREDEFINED and/or CLIENT. |
| `max_checkout_validity` | integer | No | Maximum checkout validity supported by the selected model. |
| `license_template_types` | array | No | License template types required by the TryAndBuy licensing model: TIMEVOLUME and/or FEATURE. These are template types, not license-template resource numbers. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Resource

**Slug:** `NETLICENSING_DELETE_RESOURCE`

Permanently delete a product, product module, license template, licensee, license, or bundle by number. Optional cascade deletion is limited to supported resource types.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `force_cascade` | boolean | No | Also delete dependent records. Supported only for product, product_module, license_template, and licensee; use with care. |
| `resource_type` | string ("product" | "product_module" | "license_template" | "licensee" | "license" | "bundle") | Yes | Type of resource to permanently delete. |
| `resource_number` | string | Yes | Number of the resource to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Resource

**Slug:** `NETLICENSING_GET_RESOURCE`

Get one product, product module, license template, licensee, license, transaction, or bundle by its NetLicensing number.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `resource_type` | string ("product" | "product_module" | "license_template" | "licensee" | "license" | "transaction" | "bundle") | Yes | Type of NetLicensing resource to retrieve. |
| `resource_number` | string | Yes | Provider-assigned or caller-assigned number of the resource. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Licensing Options

**Slug:** `NETLICENSING_LIST_LICENSING_OPTIONS`

Return the supported licensing models and license types used when configuring product modules and license templates.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Resources

**Slug:** `NETLICENSING_LIST_RESOURCES`

List one page of products, product modules, license templates, licensees, licenses, transactions, or bundles for the connected vendor.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `next_cursor` | string | No | Opaque continuation cursor returned by a previous call. Omit for the first page and pass it back unchanged for the next page. |
| `resource_type` | string ("product" | "product_module" | "license_template" | "licensee" | "license" | "transaction" | "bundle") | Yes | Type of NetLicensing resource to list. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Transfer Licenses

**Slug:** `NETLICENSING_TRANSFER_LICENSES`

Irreversibly transfer all eligible licenses from a source licensee marked for transfer to a target licensee in the same product.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `source_licensee_number` | string | Yes | Number of the source licensee, which must be marked for transfer and belong to the same product as the target. |
| `target_licensee_number` | string | Yes | Number of the target licensee that will receive the licenses. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Bundle

**Slug:** `NETLICENSING_UPDATE_BUNDLE`

Update selected bundle details or replace its complete set of license templates. At least one mutable field is required.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Replacement bundle name. |
| `price` | number | No | Replacement bundle price. A positive price requires currency to be EUR. |
| `active` | boolean | No | Set whether the bundle is active. |
| `currency` | string | No | Replacement bundle-price currency. Required as EUR when price is positive. |
| `new_number` | string | No | Replacement bundle number. |
| `description` | string | No | Replacement bundle description. |
| `bundle_number` | string | Yes | Number of the bundle to update. |
| `license_template_numbers` | array | No | Complete replacement set of included license-template numbers. Supply at least one; a bundle cannot be left without templates. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update License

**Slug:** `NETLICENSING_UPDATE_LICENSE`

Update a license's identity/number, name, parent-feature relationship, status, timing, pricing, visibility, or quantity. At least one mutable field is required.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Replacement license name. |
| `price` | number | No | Replacement price. A positive price requires currency to be EUR. |
| `active` | boolean | No | Set whether the license is active. |
| `hidden` | boolean | No | Set customer-facing visibility. |
| `currency` | string | No | Replacement license-price currency. Required as EUR when price is positive. |
| `quantity` | integer | No | Replacement allocated quantity. |
| `new_number` | string | No | Replacement license number. It can be changed only before the associated creation transaction closes. |
| `start_date` | string | No | Replacement ISO-8601 start date-time. |
| `time_volume` | integer | No | Replacement time allowance. |
| `used_quantity` | integer | No | Replacement consumed quantity. |
| `license_number` | string | Yes | Number of the license to update. |
| `parent_feature` | string | No | Replacement parent feature license number. |
| `time_volume_period` | string ("DAY" | "WEEK" | "MONTH" | "YEAR") | No | Replacement period unit for time_volume. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Licensee

**Slug:** `NETLICENSING_UPDATE_LICENSEE`

Update selected status, identity, transfer, or non-secret custom properties of a licensee. At least one mutable field is required.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Replacement licensee name. |
| `active` | boolean | No | Set whether the licensee is active. |
| `new_number` | string | No | Replacement licensee number. |
| `licensee_number` | string | Yes | Number of the licensee to update. |
| `custom_properties` | object | No | Non-secret custom properties to update. Use exact NetLicensing property names as keys. |
| `marked_for_transfer` | boolean | No | Set whether this licensee's licenses may be transferred. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update License Template

**Slug:** `NETLICENSING_UPDATE_LICENSE_TEMPLATE`

Update selected pricing, visibility, limits, or license behavior on a license template. At least one mutable field is required.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Replacement template name. |
| `price` | number | No | Replacement price. A positive price requires currency to be EUR. |
| `quota` | integer | No | Replacement default quota. |
| `active` | boolean | No | Set whether the template is active. |
| `hidden` | boolean | No | Set customer-facing visibility. |
| `currency` | string | No | Replacement template-price currency. Required as EUR when price is positive. |
| `quantity` | integer | No | Replacement default quantity. |
| `automatic` | boolean | No | Set automatic license generation. |
| `new_number` | string | No | Replacement template number. |
| `time_volume` | integer | No | Replacement time allowance. |
| `license_type` | string ("FEATURE" | "TIMEVOLUME" | "FLOATING" | "QUANTITY") | No | Replacement license type from NETLICENSING_LIST_LICENSING_OPTIONS. |
| `max_sessions` | integer | No | Replacement maximum concurrent sessions. |
| `hide_licenses` | boolean | No | Set visibility of generated licenses. |
| `time_volume_period` | string ("DAY" | "WEEK" | "MONTH" | "YEAR") | No | Replacement period unit for time_volume. |
| `license_template_number` | string | Yes | Number of the license template to update. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Product

**Slug:** `NETLICENSING_UPDATE_PRODUCT`

Update selected properties of an existing product; supplying discounts replaces the complete discount set, and an empty discounts list clears all discounts by sending one empty discount field. At least one mutable field is required.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Replacement product name. |
| `active` | boolean | No | Set whether the product is active. |
| `version` | string | No | Replacement version label. |
| `vat_mode` | string ("GROSS" | "NET") | No | Set whether prices include VAT (GROSS) or exclude it (NET). |
| `discounts` | array | No | Discount tiers to apply as the product's complete replacement set. Pass an empty list to clear all discounts; NetLicensing requires this as one empty discount field. |
| `new_number` | string | No | Replacement product number. |
| `description` | string | No | Replacement product description. |
| `licensing_info` | string | No | Replacement licensing information. |
| `product_number` | string | Yes | Number of the product to update. |
| `licensee_auto_create` | boolean | No | Set whether validation may automatically create licensees. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Product Module

**Slug:** `NETLICENSING_UPDATE_PRODUCT_MODULE`

Update selected properties and model-specific settings of a product module. At least one mutable field is required. When provided, non-empty node_secret_modes and license_template_types arrays each replace the complete corresponding set; omit either array to leave that set unchanged. The obsolete license_template_numbers name is not an input.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Replacement module name. |
| `active` | boolean | No | Set whether the module is active. |
| `new_number` | string | No | Replacement module number. |
| `red_threshold` | integer | No | Replacement failing threshold. |
| `licensing_model` | string | No | Replacement licensing model returned by NETLICENSING_LIST_LICENSING_OPTIONS. |
| `yellow_threshold` | integer | No | Replacement warning threshold. |
| `custom_properties` | object | No | Model-specific scalar properties to update. Use exact NetLicensing property names as keys; standard product-module properties are not allowed. |
| `node_secret_modes` | array | No | Non-empty replacement set of node-secret modes: PREDEFINED and/or CLIENT. Omit this field to leave the current set unchanged. |
| `max_checkout_validity` | integer | No | Replacement maximum checkout validity. |
| `product_module_number` | string | Yes | Number of the product module to update. |
| `license_template_types` | array | No | Non-empty replacement set of TryAndBuy license template types: TIMEVOLUME and/or FEATURE. These are template types, not license-template resource numbers; omit this field to leave the current set unchanged. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Validate Licensee

**Slug:** `NETLICENSING_VALIDATE_LICENSEE`

Validate a NetLicensing licensee's active licenses and return the validation results with their cache TTL. Depending on the configured product, validation may auto-create the licensee when licensee_name and product_number are supplied.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `licensee_name` | string | No | Licensee name used by product configurations that auto-create licensees. |
| `product_number` | string | No | Expected product number when the licensee identifier alone is insufficient. |
| `licensee_number` | string | Yes | Licensee number or alias to validate, up to 1000 characters. |
| `product_modules` | array | No | Product modules to validate, with licensing-model parameters keyed by their exact NetLicensing names. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
