V2.1 Search Firmware File


按条件查询一个 OU 下的固件信息。


如果你在使用 API 批量更新相关固件信息后调用当前 API,建议两次调用间隔 2 秒左右,以免获取到未更新数据。

该 API 支持在 EnOS 2.2.0 及以上环境中使用。

操作权限


使用此 API 前,确保服务账号已被授予包含下列服务和操作权限的策略。有关授权服务账号的更多信息,参见 管理服务账号


需授权的服务 所需操作权限
固件 Read

请求格式

POST https://{apigw-address}/connect-service/v2.1/ota-firmwares?action=search

请求参数(URI)

名称 位置(Path/Query) 必需/可选 数据类型 描述
orgId Query 必需 String 资产所属的组织 ID。如何获取 orgId 信息>>

请求参数(Body)

名称 必需/可选 数据类型 描述
expression 可选 String

查询表达式,支持类 SQL 的查询。查询的字段和对应的运算符清单如下。

  • productKey:= 和 in。

  • isVerified:=。
    • name 支持指定语言模糊查询:
      • name like 'xxx':模糊查询 default、中文和英文名称。
    • name.default like 'xxx':模糊查询默认名称。
pagination 可选 Pagination 请求结构体 分页参数。如未指定,默认每页 10 条。每页最大记录数为 200 条,但为获得最佳性能,建议每页不超过 50 条。不支持使用 sorters 参数对结果进行排序,查询结果按照 createTime,最近创建的靠前排列。Pagination 请求结构体>>

响应参数

名称 数据类型 描述
data FirmwareInfo 结构体数组 固件的详情,其结构体参见 FirmwareInfo 结构体

FirmwareInfo 结构体

名称 数据类型 描述
orgId String 资产所属的组织ID。
firmwareId String 固件ID。
productKey String 设备的Product key。
name StringI18n 固件名称。
version String 固件版本号。
desc String 固件描述。
signMethod String 固件文件签名算法。
sign String 固件文件签名。
fileUrl String 固件文件标识符。
fileSize String 固件文件大小。
enableVerification Boolean 固件用于升级任务时是否必须验证过。
isVerified Boolean 固件是否经过验证。
createTime Long 固件创建时间。
firmwareTags Map(Key 和 Value 为 string) 固件的标签。
maxAllowedForVerification Integer 用来验证固件的最大设备数量。
minSuccessForVerified Integer 为通过固件验证任务,成功验证设备的最小数量。

错误码

有关错误码的描述,参见 通用错误码

示例

请求示例

url: https://{apigw-address}/connect-service/v2.1/ota-firmwares?action=search&orgId=yourOrgId
method: POST
requestBody:
{
        "expression":"productKey='yourProductKey'",
        "pagination":{
                "pageNo":1,
                "pageSize":5
        }
}

返回示例

{
        "code":0,
        "msg":"OK",
        "requestId":"dc5d94aa-b021-4631-9def-2404d02d30a5",
        "data":[
                {
                        "orgId":"o15475466766371",
                        "firmwareId":"5ede13577072bf001f23de83",
                        "productKey":"BXwU4kMk",
                        "name":{
                                "defaultValue":"ota_subdevice",
                                "i18nValue":{

                                }
                        },
                        "version":"2.6",
                        "desc":null,
                        "signMethod":"md5",
                        "sign":"fileSig1",
                        "fileUrl":"enos-connect://file1.zip",
                        "fileSize":1767,
                        "isVerified":false,
                        "enableVerification":false,
                        "createTime":1591612247588,
                        "firmwareTags": {
                        "tagKey":"tagValue"
                        },
                        "maxAllowedForVerification":5,
                        "minSuccessForVerified":2
                },
                {
                        "orgId":"o15475466766371",
                        "firmwareId":"5ed49964a19bac001bcdb84e",
                        "productKey":"BXwU4kMk",
                        "name":{
                                "defaultValue":"validateTest",
                                "i18nValue":{

                                }
                        },
                        "version":"validate2.0",
                        "desc":null,
                        "signMethod":"md5",
                        "sign":"fileSig2",
                        "fileUrl":"enos-connect://file2.zip",
                        "fileSize":1767,
                        "isVerified":true,
                        "enableVerification":false,
                        "createTime":1590991204702,
                        "firmwareTags": {
                        "tagKey":"tagValue"
                        },
                        "maxAllowedForVerification":5,
                        "minSuccessForVerified":3
                },
                {
                        "orgId":"o15475466766371",
                        "firmwareId":"5ed0ddb7646542001b3d1144",
                        "productKey":"BXwU4kMk",
                        "name":{
                                "defaultValue":"validatetest",
                                "i18nValue":{

                                }
                        },
                        "version":"3.0",
                        "desc":null,
                        "signMethod":"md5",
                        "sign":"fileSig3",
                        "fileUrl":"enos-connect://file3.zip",
                        "fileSize":1767,
                        "isVerified":true,
                        "enableVerification":false,
                        "createTime":1590746551873,
                        "firmwareTags": {
                        "tagKey":"tagValue"
                        },
                        "maxAllowedForVerification":2,
                        "minSuccessForVerified":2
                },
                {
                        "orgId":"o15475466766371",
                        "firmwareId":"5ed0dd4a646542001b3d113f",
                        "productKey":"BXwU4kMk",
                        "name":{
                                "defaultValue":"HC_TEST",
                                "i18nValue":{

                                }
                        },
                        "version":"2.0",
                        "desc":null,
                        "signMethod":"md5",
                        "sign":"fileSig4",
                        "fileUrl":"enos-connect://file4.zip",
                        "fileSize":1767,
                        "isVerified":false,
                        "enableVerification":false,
                        "createTime":1590746442378,
                        "firmwareTags": {
                        "tagKey":"tagValue"
                        },
                        "maxAllowedForVerification":6,
                        "minSuccessForVerified":3
                }
        ],
        "pagination":{
                "sortedBy":null,
                "pageNo":1,
                "pageSize":5,
                "totalSize":4
        }
}

SDK 示例


你可以在 Github 上获取接入服务的 SDK 示例: