Updated on 2024-06-27 GMT+08:00

Stop a Batch Task

Function

This API is used by an application server to stop a batch task. Currently, task_type can only be set to firmwareUpgrade or softwareUpgrade. If the task specified by task_id has been completed (successful, failed, partially successful, or stopped) or is being stopped, this API cannot be called. If the request body is {}, all subtasks in the Processing, Waitting, and FailWaitRetry statuses will be stopped after this API is called.

Debugging

You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.

URI

POST /v5/iot/{project_id}/batchtasks/{task_id}/stop

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

task_id

Yes

String

Parameter description: Indicates the batch task ID. It is allocated by the platform during batch task creation. Value: The value can contain a maximum of 24 characters. Only lowercase letters a to f and digits are allowed.

project_id

Yes

String

Parameter description: project ID. For details about how to obtain the project ID, see Obtaining a Project ID.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

No

String

Parameter description: user token. You can obtain the token by calling the IAM API Obtaining a User Token Through Password Authentication. X-Subject-Token in the response header returned by the API is the desired user token. For details about how to obtain the token, see Token Authentication.

Instance-Id

No

String

Parameter description: instance ID. Unique identifier of each instance in the physical multi-tenant scenario. Mandatory for professional editions and recommended in other cases. Log in to the IoTDA console and choose Overview in the navigation pane to view the instance ID. For details, see Viewing Instance Details.

Minimum: 1

Maximum: 36

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

targets

No

Array of strings

Indicates the target set of the batch operation. Max: 100 targets. When task_type is set to firmwareUpgrade or softwareUpgrade, set this parameter to device_id.

Response Parameters

Status code: 200

Table 4 Response body parameters

Parameter

Type

Description

targets

Array of BatchTargetResult objects

Indicates the batch operation result set.

Table 5 BatchTargetResult

Parameter

Type

Description

target

String

Indicates the batch operation targets.

status

String

Indicates the execution result. The value can be success or failure.

error_code

String

Indicates the error code.

error_msg

String

Indicates the error description.

Example Requests

  • Stops all subtasks that are in the Processing, Waitting, and FailWaitRetry statuses.

    POST https://{endpoint}/v5/iot/{project_id}/batchtasks/{task_id}/stop
    
    { }
  • Stops executing subtasks of a specified target set.

    POST https://{endpoint}/v5/iot/{project_id}/batchtasks/{task_id}/stop
    
    {
      "targets" : [ "e495cf17-ff79-4294-8f64-4d367919d665" ]
    }

Example Responses

Status code: 200

OK

{
  "targets" : [ {
    "target" : "e495cf17-ff79-4294-8f64-4d367919d665",
    "status" : "failure",
    "error_code" : "IOTDA.014219",
    "error_msg" : "Invalid input. The target is not in the task"
  }, {
    "target" : "e495cf17-ff79-4294-8f64-4d367919d677",
    "status" : "success"
  } ]
}

Status Codes

Status Code

Description

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Internal Server Error

Error Codes

See Error Codes.