device.upgrade.execute (Trigger upgrade)
device.upgrade.execute: Trigger upgrade
What it does
Triggers upgrade asynchronously. Progress: Upgrade progress (device.upgrade.process); you can also subscribe to System upgrade events and Receive device messages. This method does not appear in device.capability.list. Capability catalog upgrade leaves often use Config; this API requires Upgrade. If the device is not eligible to upgrade (for example canBeUpgrade is false or no upgrade package is available), the call returns DV1006 (NOT_UPGRADE_DEVICE); check device detail or version list before invoking.
Request URL
POST https://openapi-[DataCenter].easy4ip.com/openapi/v2/device.upgrade.execute
Minimum permission
The administrator does not need an extra permission on a device they bound. A shared device needs the device upgrade permission. A bound sub-user does not. A sub-account needs Upgrade.
Request parameters
| Name | Type | Required | Default | Legal values | Description |
|---|---|---|---|---|---|
token | String | yes | Access token for an administrator, sub-user, or sub-account | ||
deviceId | String | yes | Device serial number | ||
productId | String | no | Optional. If sent and it does not match the device model → DV2009 |
For common request fields and signing, see Signing conventions and Common request payload.
Request example
{
"id": "d5c287b4-5b2f-4f03-baf5-8032c5c354af",
"system": {
"ver": "1.0",
"appId": "lcdxxxxxxxxx",
"sign": "xjhCQBoJ9hRDsCjyDcHjtDNzRZ3ZJezcawsfWeiaoxU=",
"time": 1706511734,
"nonce": "f5a1ae2d-c09c-4d39-a744-83a5c2c653c2"
},
"params": {
"token": "<yourAccessToken>",
"deviceId": "TESTIPC000012345"
}
}
Response data fields
No business fields. On success, code is "0" and data is {}.
Response example
{
"id": "d5c287b4-5b2f-4f03-baf5-8032c5c354af",
"result": {
"code": "0",
"msg": "Operation is successful",
"data": {}
}
}
Error codes
| Code | When |
|---|---|
DV1006 | Device cannot upgrade (not eligible or no upgrade info) |
For gateway and other device error codes, see Global return codes.
