Open API¶
Open API 节点通过调用 EnOS open API 接口访问系统内的资源。有关 EnOS open API 的更多信息,参见 有关 EnOS API。
节点类型¶
Action。
输入和输出能力¶
该节点具有多个入口点和 1 个出口点。输入可以是任何格式。
输出是来自 API 接口返回的数据,通常为 JSON 格式。
节点属性¶
名称
该节点的名称。
请求方法
该节点向 API 接口发出请求时所用的方法。支持的请求方法有 GET、POST、DELETE 和 PATCH。
API URL
调用 API 接口的 URL。支持通过表达式 ${msg.XXX} 引用上游节点提供的 URL。
AccessKey
API 接口的 AccessKey。
SecretKey
API 接口的 SecretKey。
Params 配置
以 “?key=value” 的形式附加到请求 URL 的参数。
Body
选择 POST 或 PATCH 作为请求方法时,可以将需要提交的数据放在 Body 中。数据类型不受限制,通常为 JSON 格式。API 接口将根据 body 中的参数返回内容,并放在输出 msg 中。
超时
该节点的请求超时时间。单位为秒,默认值为 30。如果该节点在超时时间内未收到来自服务器的任何响应,请求将会超时。可用的最短超时时间为 1 秒。
描述
该节点的描述。
示例¶
输入示例¶
{
    "externalId":"externalId",
    "timestamp":24214324324,
    "measurepoints":{
        "speed":32,
        "heat":40
    }
}
假设一个查找已连接设备信息的 Open API 节点具有以下配置:
字段  | 
值  | 
|---|---|
名称  | 
Open API  | 
请求方法  | 
GET  | 
API URL  | 
|
Params  | 
action: search   | 
超时  | 
10  | 
则相当于发出如下请求:
输出示例¶
{
  "MetaData": {},
  "Body": {
    "code": 0,
    "msg": "OK",
    "requestId": "c8c79cfe-6a54-496f-8f91-61bea3c97a53",
    "data": [
      {
        "orgId": "yourOrgId",
        "assetId": "yourAssetId",
        "modelId": "sq0329",
        "modelIdPath": "/sq0329",
        "productKey": "yourProductKey",
        "productName": {
          "defaultValue": "sq0329",
          "i18nValue": {}
        },
        "productType": "Device",
        "dataFormat": "Json",
        "deviceKey": "yourDeviceKey",
        "deviceName": {
          "defaultValue": "device01",
          "i18nValue": {}
        },
        "deviceSecret": "DeviceSecretDemo1",
        "deviceDesc": "",
        "timezone": "+08:00",
        "deviceAttributes": {},
        "deviceTags": {},
        "mirrorSource": null,
        "firmwareVersion": null,
        "createTime": 1649668259178,
        "status": "online",
        "activeTime": 1649668289281,
        "lastOnlineTime": 1649670014408,
        "lastOfflineTime": 1649669913216,
        "measurepointLastUpdate": null,
        "eventLastUpdate": null,
        "attributeLastUpdate": null,
        "featureLastUpdate": null
      }
    ],
    "pagination": {
      "sortedBy": null,
      "pageNo": 1,
      "pageSize": 1,
      "totalSize": 100
    }
  }
}