Help Center/ IoT/ API Reference/ Northbound API Reference/ Device Upgrade/ Querying Details About a Specified Task
Updated on 2022-02-24 GMT+08:00

Querying Details About a Specified Task

Typical Scenario

After a device software or firmware upgrade task is created, an NA can call this API to query details about the upgrade task, including the configuration and execution status.

API Function

This API is used by an NA to query details about a software or firmware upgrade task, including the configuration and execution status.

API Prototype

Method

GET

URL

https://server:port/iodm/northbound/v1.5.0/operations/{operationId}

Transport Protocol

HTTPS

Request Parameters

Parameter

Mandatory or Optional

Type

Location

Description

app_key

Mandatory

String

header

Identifies an application that can be accessed on the IoT platform. The value of this parameter is allocated by the IoT platform when the application is created on the platform.

Authorization

Mandatory

String

header

Indicates the authentication information for accessing the IoT platform. The value is Bearer {accessToken}, in which {accessToken} indicates the access token returned by the Authentication API.

operationId

Mandatory

String

path

Identifies an operation task. The value of this parameter is returned by the IoT platform after the operation task is created.

Response Parameters

Status Code: 200 OK

Parameter

Type

Description

operationId

String

Identifies an operation task.

createTime

String

Indicates the time when the operation task is created. The time format is yyyyMMdd'T'HHmmss'Z'. An example value is 20151212T121212Z.

startTime

String

Indicates the time when the operation task is started. The time format is yyyyMMdd'T'HHmmss'Z'. An example value is 20151212T121212Z.

stopTime

String

Indicates the time when the operation task is stopped. The time format is yyyyMMdd'T'HHmmss'Z'. An example value is 20151212T121212Z.

operateType

String

Indicates the operation type.

  • firmware_upgrade
  • software_upgrade

targets

OperateDevices

Indicates the target device on which the operation is performed.

policy

OperatePolicy

Indicates the operation execution policy.

status

String

Indicates the status of the operation task.

  • wait: The operation task is waiting to be executed.
  • processing: The operation task is being executed.
  • failed: The operation task fails to be executed.
  • success: The operation task is successfully executed.
  • stop: The operation task stops being executed.

staResult

OperationStaResult

Indicates the statistics on operation results.

extendPara

Map<String, String>

Indicates extended information of the operation task. The value of this parameter varies depending on the operation type.

OperateDevices structure

Parameter

Type

Description

deviceGroups

List<String>

Indicates the device group name list. A maximum of 256 device groups are supported.

Either this parameter or devices must be specified.

deviceType

String

Indicates the device type.

This parameter must be specified when a device group is specified.

model

String

Indicates the device model.

This parameter must be specified when a device group is specified.

manufacturerName

String

Indicates the manufacturer name.

This parameter must be specified when a device group is specified.

devices

List<String>

Indicates the device ID list. A maximum of 256 devices are supported.

Either this parameter or deviceGroups must be specified.

OperatePolicy structure

Parameter

Type

Description

executeType

String

Indicates the execution type. The default value is now.

  • now: The operation task is executed now.
  • device_online: The operation task is executed when a device goes online.
  • custom: The execution type is customized.

startTime

String

Indicates the start time of the operation task. This parameter must be specified when executeType is set to custom. The value is in the format of yyyyMMdd'T'HHmmss'Z'. An example value is 20151212T121212Z.

endTime

String

Indicates the end time of the operation task. This parameter must be specified when executeType is set to custom. The value is in the format of yyyyMMdd'T'HHmmss'Z'. An example value is 20151212T121212Z.

retryType

Boolean

Indicates whether the platform retries the task upon an execution failure. The default value is false.

  • true: Retry is performed.
  • false: The platform does not retry the task.

retryTimes

Integer

Indicates the number of retries. The value ranges from 1 to 5. This parameter must be specified when retryType is set to true.

OperationStaResult structure

Parameter

Type

Description

total

Integer(64)

Indicates the number of operated devices.

wait

Integer(64)

Indicates the number of devices waiting to be operated.

processing

Integer(64)

Indicates the number of devices that are being operated.

success

Integer(64)

Indicates the number of devices that are operated successfully.

fail

Integer(64)

Indicates the number of devices that fail to be operated.

stop

Integer(64)

Indicates the number of devices that stop being operated.

timeout

Integer(64)

Indicates the number of devices that fail to be operated due to a timeout.

Request Example

Method: GET
Request:
https://server:port/iodm/northbound/v1.5.0/operations/{operationId}
Header:
app_key: ******
Authorization: Bearer ******
Content-Type: application/json

Response Example

Response:
Status Code: 200 OK
Content-Type: application/json
Body:
{
  "operationId": "**********",
  "createTime": "20151212T121212Z",
  "startTime": "20151212T121212Z",
  "stopTime": null,
  "operateType": "software_upgrade",
  "targets": {
    "deviceGroups": null,
    "deviceType": "******",
    "model": "******",
    "manufacturerName": "***",
    "devices": [
      "**********"
    ]
  },
  "policy": null,
  "status": "FAIL",
  "staResult": {
    "wait": 0,
    "processing": 0,
    "success": 0,
    "fail": 1,
    "stop": 0,
    "timeout": 0
  },
  "extendPara": {
    "fileVersion": "V1.1.10"
  }
}

Error Code

HTTP Status Code

Error Code

Error Description

Remarks

400

120015

Bad request error.

A request error occurs.

Recommended handling: Check whether the format of fileId carried in the API request is correct.

403

1010009

app throttle exceed.

The NA calls the API at a frequency that exceeds the flow control threshold (100 calls per minute by default).

Recommended handling: Contact IoT platform maintenance personnel to adjust the flow control threshold or control the API call frequency.

403

1010005

App_key or access_token is invalid.

The access token is invalid.

Recommended handling: Check whether accessToken carried in the API request is correct.

404

123009

The requested task does not exist.

The queried task does not exist.

Recommended handling: Check whether operationId carried in the API request is correct.