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

使用说明

  • 将OTA升级包推送给设备批量升级前,必须完成OTA升级包验证。只有已验证的OTA升级包才可用于批量设备升级。您可以调用QueryOTAFirmware查看OTA升级包验证状态。
  • 不能对验证进行中或验证已成功的OTA升级包重复发起验证任务。
  • 最多只能传入10个设备用于OTA升级包验证。

QPS限制

单个阿里云账号调用该接口的每秒请求数(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

Tag.N.Key String key1

批次标签key。仅支持英文字母、数字、半角句号(.),长度限制为1~30个字符。支持最多添加10个批次标签。

批次标签将在向设备推送升级通知时下发给设备。

说明 批次标签可以不传入。是否必选,表示如果传入批次标签Tag,Tag.N.ValueTag.N.Key必须成对传入。
Tag.N.Value String value1

批次标签value。长度限制为1~1024个字符。支持最多添加10个批次标签。所有批次标签key和value的长度总和,不能超过4096个字符。

说明 批次标签可以不传入。是否必选,表示如果传入批次标签Tag,Tag.N.ValueTag.N.Key必须成对传入。
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升级任务信息。
DownloadProtocol String HTTPS

升级包下载协议,可选:HTTPS(默认)或MQTT。设备端收到物联网平台推送的升级包下载信息后,通过该协议下载升级包。

重要
  • 使用HTTP协议下载升级包,文件大小不能超过1,000 MB,且仅支持.bin.dav.tar.gz.zip.gzip.apk.tar.gz.tar.xz.pack格式的文件。更多限制说明,请参见OTA升级概述
  • 使用MQTT协议下载升级包,必须符合以下条件:
    • 支持的地域:仅中国的华东2(上海)、华北2(北京)和华南1(深圳)。
    • OTA升级包:仅包含一个文件,且文件大小不超过16 MB。
    • 设备端SDK:必须使用物联网平台提供的C语言Link SDK最新版本的软件包,开发OTA升级和MQTT下载文件的能力。详细内容,请参见使用MQTT协议下载升级包的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:调用失败。

示例

请求示例

http(s)://iot.cn-shanghai.aliyuncs.com/?Action=CreateOTAVerifyJob
&FirmwareId=nx3xxVvFdwvn6dim50PY03****
&ProductKey=a1VJwBw****
&Tag.1.Key=key1
&Tag.1.Value=value1
&TargetDeviceName.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
}

错误码

访问错误中心查看更多错误码。