Retry OTA Task¶
Retry OTA tasks under the specified OTA job.
Operation Permissions¶
Required Authorization |
Required Operation Permission |
---|---|
Device Management |
Full Access |
Request Format¶
POST https://{apigw-address}/connect-service/v2.1/ota-jobs?action=retryTask
Request Parameters (URI)¶
Name |
Location (Path/Query) |
Mandatory/Optional |
Data Type |
Description |
---|---|---|---|---|
orgId |
Query |
Mandatory |
String |
The organization ID which the asset belongs to. How to get orgId>> |
jobId |
Query |
Mandatory |
String |
The job ID. |
Request Parameters (Body)¶
Name |
Mandatory/Optional |
Data Type |
Description |
---|---|---|---|
deviceKeys |
Mandatory |
String Array |
The list of device keys for retrying the OTA task. |
Error Codes¶
Code |
Message |
Description |
---|---|---|
24404 |
Job not found |
The job cannot be found. |
24617 |
Job not running |
Not able to retry as it is not running. |
24621 |
Only failed tasks can be retried |
Only failed tasks can be retried. |
Samples¶
Request Sample¶
url: https://{apigw-address}/connect-service/v2.1/ota-jobs?action=retryTask&orgId=yourOrgId&jobId=yourJobId
method: POST
requestBody: {"deviceKeys":["deviceKey1","deviceKey2"]}
Return Sample¶
{
"code":0,
"msg":"OK",
"requestId":"8e5d4643-1d13-4dd1-8896-e407f16381df",
"data":null
}
Java SDK Sample¶
package com.envisioniot.enos.connect_service.ota.job;
import com.envision.apim.poseidon.config.PConfig;
import com.envision.apim.poseidon.core.Poseidon;
import com.envisioniot.enos.connect_service.v2_1.ota.job.task.RetryTaskRequest;
import com.envisioniot.enos.connect_service.v2_1.ota.job.task.RetryTaskResponse;
import com.google.common.collect.ImmutableSet;
public class RetryTask {
public static void main(String[] args) {
final String appKey = "yourAppKey";
final String appSecret = "yourAppSecret";
String serverUrl = "yourServerUrl";
String orgId = "yourOrgId";
String jobId = "yourobId";
RetryTaskRequest request = new RetryTaskRequest();
request.setOrgId(orgId);
request.setJobId(jobId);
request.setDeviceKeys(ImmutableSet.of("deviceKey1","deviceKey2"));
RetryTaskResponse response = Poseidon
.config(PConfig.init().appKey(appKey).appSecret(appSecret).debug())
.url(serverUrl)
.getResponse(request, RetryTaskResponse.class);
}
}