Help Center/ IoT/ API Reference/ Northbound API Reference/ Batch Processing/ Querying Information About a Subtask of a Batch Task
Updated on 2022-02-24 GMT+08:00

Querying Information About a Subtask of a Batch Task

Typical Scenario

After creating a batch task for devices, an NA can call this API to query information about a subtask of the batch task, including the subtask execution status and subtask content.

API Function

This API is used by an NA to query detailed information about a subtask of the batch task.

API Prototype

Method

GET

URL

https://server:port/iocm/app/batchtask/v1.1.0/taskDetails?appId={appId}&taskId={taskId}&status={status}&deviceId={deviceId}&commandId={commandId}&pageNo={pageNo}&pageSize={pageSize}

Transport Protocol

HTTP/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.

appId

Optional

String

query

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. Set this parameter to the value of appId of the authorized application.

taskId

Mandatory

String

query

Identifies a batch task.

status

Optional

String

query

Indicates the task status. The value options are Pending, WaitResult, Success, Fail, and Timeout.

deviceId

Optional

String

query

Uniquely identifies a device. The value of this parameter is allocated by the IoT platform during device registration.

commandId

Optional

String

query

Uniquely identifies a device command. The value of this parameter is allocated by the IoT platform during command delivery.

pageNo

Optional

Integer

query

Indicates the page number to be queried. The value is an integer greater than or equal to 0. The default value is 0, indicating that the first page is queried.

pageSize

Optional

Integer

query

Indicates the number of records to be displayed on each page. Pagination is implemented based on the value of this parameter. The value is an integer ranging from 1 to 250. The default value is 25.

Response Parameters

Status Code: 200 OK

Parameter

Type

Description

pageNo

Long

Indicates the page number.

pageSize

Long

Indicates the number of records on each page.

totalCount

Long

Indicates the total number of records.

taskDetails

List<QueryTaskDetailDTOCloud2NA>

Indicates the task details list.

QueryTaskDetailDTOCloud2NA structure

Parameter

Type

Description

status

String

Indicates the task status. The value options are Pending, WaitResult, Success, Fail, and Timeout.

output

String

Indicates the output of a batch command delivery task.

error

String

Indicates the cause of error, in the format of {\"error_code\": \"****\", \"error_desc\":\"*****\"}.

param

ObjectNode

Indicates the task parameter, which varies depending on the value of taskType.

ObjectNode structure

Parameter

Type

Description

deviceId

String

Uniquely identifies a device. The value of this parameter is allocated by the IoT platform during device registration. The value is that returned when taskType is set to DeviceCmd.

commandId

String

Uniquely identifies a device command. The value of this parameter is allocated by the IoT platform during command delivery.

Request Example

Method: GET
Request:
https://server:port/iocm/app/batchtask/v1.1.0/taskDetails?appId=********&taskId=******&status=******&pageNo=******&pageSize=******
Header:
app_key: ******
Authorization: Bearer ******
Content-Type: application/json

Response Example

Response:
Status Code: 200 OK
Content-Type: application/json
Body:
{
  "totalCount": 1,
  "pageNo": 0,
  "pageSize": 1,
  "taskDetails": [
    {
      "status": "WaitResult",
      "output": "{\"requestId\":\"*****\",\"commandResult\":null}",
      "error": null,
      "param": {
        "deviceId": "*******",
        "commandId": "*******"
      }
    },
    {
      "status": "WaitResult",
      "output": "{\"requestId\":\"******\",\"commandResult\":null}",
      "error": null,
      "param": {
        "deviceId": "******",
        "commandId": "*******"
      }
    }
  ]
}

Error Codes

HTTP Status Code

Error Code

Error Description

Remarks

400

100022

The input is invalid

An input parameter is invalid.

Recommended handling: Check whether parameters carried in the API call request are valid.

403

100203

The application is not existed.

The application does not exist.

Recommended handling:

  • Check whether appId carried in the HTTP request header is correct.
  • Check whether appId in the request path (URL) is correct.

403

100217

The application hasn't been authorized

The application has not been authorized.

Recommended handling: In scenarios where applications are not authorized, ensure that request parameter appId is null.

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

105005

The batchTask is not existed.

The batch task does not exist.

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

500

100203

The application is not existed.

The application does not exist.

Recommended handling:

  • Check whether appId carried in the HTTP request header is correct.
  • Check whether appId in the request path (URL) is correct.

500

50252

Internal server error.

An internal server error occurs.

Recommended handling: An internal error occurs on the IoT platform. Contact IoT platform maintenance personnel.