Assign Licenses to Devices
# Assign Licenses to Devices ### `POST /licenses/{accountName}/assign` Assigns Firmware Over-the-air (FOTA) licenses to a list of devices. When licenses are assigned, ThingSpace Software Management begins monitoring the devices for reachability. **Note:** The account must have unused licenses available to assign to the devices. The total number of licenses and the number of used licenses can be found with the GET /licenses/{accountName} request. ## HTTP Request [POST https://thingspace.verizon.com/api/fota/v3/firmware/licenses/{acc}/assign](/docs/premium-apis/software-management/software-management-v1/api-endpoints/software-management-licenses-v1/assignlicensestodevices) ## Header Parameters The request header must contain a current ThingSpace authorization token, set the content to "JSON" and a current VZ-M2M-session token. |Parameter Name|Data Type|Description| |-----|-----|-----| | **Authorization** *(required)* | string | HTTP Authorization request header containing a valid Bearer token: `Authorization: Bearer {token}` | | **VZ-M2M-Token** *(required)* | string | A valid session token returned by a Connectivity Management `POST /session/login` request. | | **Content-Type** *(required)* | string | Must be `application/json`. | ## Request Parameters You must include the `accountName` in the path. |Parameter Name|Data Type|Description| |-----|-----|-----| | **accountName** *(required)* | string | Account identifier. This is numeric and in the format of **0000123456-00001**. Leading zeros must be included. | ## Request Body None.. ## Success Responses **Status 200** Example Success Response ```json { "accountName": "0000123456-00001", "licCount": 2, "licUsedCount": 2, "deviceList": [ { "deviceId": "15-digit IMEI", "status": "LicenseAssignSuccess", "Reason": "Device license preexisting" }, { "deviceId": "15-digit IMEI", "status": "LicenseAssignSuccess", "Reason": "Device license preexisting" } ] } ``` ## Success Parameters |Parameter Name|Data Type|Description| |-----|-----|----| | **accountName** | string | Account identifier. | | **licTotalCount** | integer | Total FOTA license count. | | **licUsedCount** | integer | Assigned FOTA license count. | | **deviceList** | array | | | **deviceId** | string | The device's IMEI. | | **status** | string | Status of the license assignment. Valid values include: **LicenseAssignSuccess** and **LicenseAssignFailure**. | | **Reason** | string | More information about the status: **"Device license preexisting"** or a reason for a failure such as **"Device Not Found"**. | ## Failure Responses All error messages are returned in this format: ```json { "errorCode": "error code string", "errorMessage": "error message string" } ``` Error codes and messages are listed on the [Error Messages page](https://thingspace.verizon.com/documentation/api-documentation.html#/http/software-management/guides/error-messages), along with explanations and suggestions for corrective actions.