Remove FOTA Licenses

POST /licenses/{acc}/remove

Removes FOTA licenses from a specified list of devices. If the devices have not been upgraded, a license can be removed. When licenses are removed, the ThingSpace Software Management ends monitoring the devices for reachability.


Uses and Requirements

Remove unused licenses from devices. A license is unused if the device has not had a firmware upgrade since the license was assigned, and if no firmware upgrade is in progress for the device.

Note: This request is only needed for accounts that have a monthly recurring billing (MRC) subscription. Accounts with event-based billing do not need to assign or remove licenses.

Request Components

HTTP Request

POST https://thingspace.verizon.com/api/fota/v3/licenses/{acc}/remove

Resource Path and Query Parameters

You must include the account name in the path.

Parameter Name Data Type Description
acc
required
string The name of the account for which you want to remove licenses. An account name is usually numeric, and must include any leading zeros.

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.
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 Body

The request body provides the device list.

Parameter Name Data Type Description
deviceList
required
array The IMEIs of the devices to remove licenses from

Example Request

Remove FOTA licenses from three devices.

curl POST https://thingspace.verizon.com/api/fota/v3/licenses/{acc}/remove 
-H 'VZ-M2M-Token: {M2M token}' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {bearer token}' \
{
  "deviceList": [
    "15-digit IMEI",
    "15-digit IMEI",
    "15-digit IMEI"
  ]
}

Success Responses

Status 200

Parameter Name Data Type Description
accountName string Account identifier
licTotalCount integer Total FOTA license count.
licUsedCount integer Assigned FOTA license count.
deviceList array device
   deviceId string Device IMEI .
   status string Status of the license removal. Valid values include:
  • Success
  • Failure
   resultReason string More information about the status, such as "Success" or a reason for a failure, such as "Device Not Found."
   updatedTime string($date-time) Time of the most recent status.
   recentAttemptTime string($date-time) The time of the most recent attempt to remove a FOTA license.
   nextAttemptTime string($date-time) The next time the license will attempt to be removed.

Example Success Response

Status 200

{
  "accountName": "0000123456-00001",
  "licCount": 9000,
  "licUsedCount": 998,
  "deviceList": [
    {
      "deviceId": "15-digit IMEI",
      "status": "Success",
      "resultReason": "Success",
      "updatedTime": "2021-06-10T15:13:30.941Z",
      "recentAttemptTime": "2021-06-10T15:13:30.941Z",
      "nextAttemptTime": "2021-06-10T15:13:30.941Z"    },
    {
      "deviceId": "15-digit IMEI",
      "status": "Success",
      "resultReason": "Success"
      "updatedTime": "2021-06-10T15:13:30.941Z",
      "recentAttemptTime": "2021-06-10T15:13:30.941Z",
      "nextAttemptTime": "2021-06-10T15:13:30.941Z"    },
    {
      "deviceId": "15-digit IMEI",
      "status": "Failure",
      "resultReason": "No license attached to device"
      "updatedTime": "2021-06-10T15:13:30.941Z",
      "recentAttemptTime": "2021-06-10T15:23:30.941Z",
      "nextAttemptTime": "2021-06-11T15:13:30.941Z"    }
  ]
}

Failure Responses

Status 400

All error messages are returned in this format:

 { 
   "errorCode": "error code string",
   "errorMessage": "error message string"
}

Error codes and messages are listed on the Error Messages page, along with explanations and suggestions for corrective actions.