更新时间:2022-02-24 GMT+08:00

批量查询订阅

典型场景

应用服务器可在物联网平台上创建多个订阅,以订阅不同类型的设备变更通知。应用服务器若需要查看本应用下所有订阅配置,或者查看某种订阅类型下的所有订阅配置,可调用此接口进行查询。

接口功能

支持应用服务器在物联网平台查询本应用下的所有订阅信息,或者某种订阅类型下的所有订阅信息。

接口原型

请求方法

GET

请求地址

https://server:port/iocm/app/sub/v1.2.0/subscriptions?appId={appId}&notifyType={notifyType}&pageNo={pageNo}&pageSize={pageSize}

传输协议

HTTPS

请求参数

参数

必选/可选

类型

位置

描述

app_key

必选

String

header

访问物联网平台的应用ID,在物联网平台创建应用时由平台分配获得。

Authorization

必选

String

header

访问物联网平台的认证信息,值为“Bearer {accessToken}”,其中{accessToken}为调用鉴权接口返回的accessToken。

appId

可选

String(256)

query

访问物联网平台的应用ID,在物联网平台创建应用时由平台分配获得。此处填写授权应用的appId。

notifyType

可选

String(256)

query

通知类型,应用可以根据通知类型对消息分别进行处理。

  • deviceAdded(添加新设备,订阅后推送注册设备通知)
  • bindDevice(绑定设备,订阅后推送绑定设备通知)
  • deviceInfoChanged(设备信息变化,订阅后推送设备信息变化通知)
  • deviceDataChanged(设备数据变化,订阅后推送设备数据变化通知)
  • deviceDatasChanged(设备数据批量变化,订阅后推送批量设备数据变化通知)
  • deviceCapabilitiesChanged(设备服务能力变化,订阅后推送设备服务能力变化通知)
  • deviceCapabilitiesAdded(设备服务能力增加,订阅后推送设备服务能力增加通知)
  • deviceCapabilitiesDeleted(设备服务能力删除,订阅后推送设备服务能力删除通知)
  • deviceDeleted(删除设备,订阅后推送删除设备通知)
  • messageConfirm(消息确认,订阅后推送设备消息确认通知)
  • commandRsp(命令响应,订阅后推送设备命令响应通知)
  • ruleEvent(规则事件,订阅后推送规则事件通知)
  • deviceDesiredPropertiesModifyStatusChanged(设备影子状态变更,订阅后推送设备影子状态变更通知)
  • swUpgradeStateChangeNotify(软件升级状态变更通知)
  • swUpgradeResultNotify(软件升级结果通知)
  • fwUpgradeStateChangeNotify(固件升级状态变更通知)
  • fwUpgradeResultNotify(固件升级结果通知)

pageNo

可选

Integer

query

分页查询参数。

  • 值为空时,查询内容不分页
  • 值大于等于0的时分页查询
  • 值等于0时查询第一页

pageSize

可选

Integer

query

分页查询参数,取值大于等于1的整数,缺省值:10。

响应参数

Status Code: 200 OK

参数

类型

描述

totalCount

Long(>=0)

查询到的订阅记录总数。

pageNo

Long(>=0)

查询的页码。

pageSize

Long(>=0)

查询每页信息的数量。

subscriptions

List<QuerySubscriptionDTOCloud2NA>

订阅信息列表。

QuerySubscriptionDTOCloud2NA:

参数

类型

描述

subscriptionId

String

订阅ID号,用于唯一标识一个订阅,在创建订阅时由物联网平台分配获得。

notifyType

String

通知类型。

callbackUrl

String

订阅的回调地址。

请求示例

Method: GET
request:https://server:port/iocm/app/sub/v1.2.0/subscriptions?appId={appId}&notifyType={notifyType}&pageNo={pageNo}&pageSize={pageSize}
Header:
app_key: ******
Authorization: Bearer *****
Content-Type: application/json

响应示例

response:
Status Code: 200 OK
Content-Type: application/json
Body:
{
  "pageNo": 0,
  "pageSize": 100,
  "totalCount": 10,
  "subscriptions": [
    {
      "subscriptionId": "*******",
      "notifyType": "*******",
      "callbackUrl": "*******"
    }
  ]
}

错误码

Http状态码

错误码

错误描述

说明

400

100224

The resource exceeds 1000, please refinement query conditions.

查到端资源超出1000条,请重新设定查询条件。

处理建议:请缩小查询条件范围。

403

100217

The application hasn't been authorized.

应用未被授权。

处理建议:若非应用授权场景,请确认请求参数中的appId为空。

403

1010009

app throttle exceed.

应用调用接口过于频繁,超过流控值(默认值是100次/60s)。

处理建议:联系物联网平台维护人员调大流控阈值或者控制接口的调用频率。

403

1010005

App_key or access_token is invalid.

错误的token信息。

处理建议:请检查接口请求中所携带的accessToken是否有误。