调用该接口创建OTA升级包验证任务。

限制说明

  • 将OTA升级包推送给设备批量升级前,必须完成OTA升级包验证。只有已验证的OTA升级包才可用于批量设备升级。您可以调用QueryOTAFirmware查看OTA升级包验证状态。
  • 不能对验证进行中或验证已成功的OTA升级包重复发起验证任务。
  • 最多只能传入10个设备用于OTA升级包验证。
  • 单个阿里云账号调用该接口的每秒请求数(QPS)最大限制为10。
    说明 RAM用户共享阿里云账号配额。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String CreateOTAVerifyJob

系统规定参数。取值:CreateOTAVerifyJob。

FirmwareId String nx3xxVvFdwvn6dim50PY03****

OTA升级包ID,升级包的唯一标识符。

FirmwareId是调用CreateOTAFirmware创建OTA升级包时,返回的参数之一。

也可以调用ListOTAFirmware,从返回参数中查看。

ProductKey String a1VJwBw****

OTA升级包所属产品的ProductKey。

TargetDeviceName.N RepeatList testdevice

待验证的设备。

说明
  • 设备所属产品必须与OTA升级包所属产品一致。
  • 设备名称不能重复。
  • 最多可传入10个设备名称。
IotInstanceId String iot_instc_pu****_c*-v64********

实例ID。

必须传入实例ID,否则调用会失败。您可在物联网平台控制台的实例概览页面,查看您的实例ID。

注意

如果公共实例没有ID,请参见如何获取实例ID

TimeoutInMinutes Integer 1440

设置设备升级超时时间,单位分钟,范围1~1,440。

NeedPush Boolean true

物联网平台是否主动向设备推送升级任务。

  • true(默认):是。批次任务创建完成后,物联网平台主动将升级任务,直接推送给升级范围内的在线设备。

    此时,设备仍可主动向物联网平台发起请求,来获取OTA升级任务信息。

  • false:否。设备必须通过向物联网平台发起请求,来获取OTA升级任务信息。
NeedConfirm Boolean false

如需自主控制设备OTA升级时,可配置此参数,通过手机App来控制,设备是否可进行OTA升级。手机App需您自行开发。

  • false(默认):否。直接按照NeedPush设置,获取OTA升级任务信息。
  • true:是。设备无法获取OTA升级任务,需App侧确认OTA升级后,才能按照NeedPush设置,获取OTA升级任务信息。

调用API时,除了本文介绍的该API的特有请求参数,还需传入公共请求参数。公共请求参数说明,请参见公共参数文档

返回数据

名称 类型 示例值 描述
Code String iot.system.SystemException

调用失败时,返回的错误码。更多信息,请参见错误码

Data Struct

调用成功时,返回的验证批次信息。详情见以下参数。

JobId String wahVIzGkCMuAUE2gDERM02****

OTA升级包验证任务ID,即用于验证OTA升级包的设备升级批次ID。

UtcCreate String 2019-11-04T06:22:19.566Z

OTA升级包验证任务的创建时间,UTC格式。

ErrorMessage String 系统异常

调用失败时,返回的出错信息。

RequestId String 29EC7245-0FA4-4BB6-B4F5-5F04818FDFB1

阿里云为该请求生成的唯一标识符。

Success Boolean true

表示是否调用成功。

  • true:调用成功。
  • false:调用失败。

示例

请求示例

https://iot.cn-shanghai.aliyuncs.com/?Action=CreateOTAVerifyJob
&FirmwareId=nx3xxVvFdwvn6dim50PY03****
&ProductKey=a1VJwBw****
&TargetDeviceNames.1=testdevice
&TimeoutInMinutes=1440
&<公共请求参数>

正常返回示例

XML格式

<CreateOTAVerifyJobResponse>
   <Data>
       <JobId>wahVIzGkCMuAUE2gDERM02****</JobId>
       <UtcCreate>2019-11-04T06:22:19.566Z</UtcCreate>
   </Data>
   <RequestId>29EC7245-0FA4-4BB6-B4F5-5F04818FDFB1</RequestId>
   <Success>true</Success>
</CreateOTAVerifyJobResponse>

JSON格式

{
  "Data": {
    "JobId": "wahVIzGkCMuAUE2gDERM02****",
    "UtcCreate": "2019-11-04T06:22:19.566Z"
  },
  "RequestId": "29EC7245-0FA4-4BB6-B4F5-5F04818FDFB1",
  "Success": true
}