查询规则动作列表
功能介绍
应用服务器可调用此接口查询物联网平台中设置的规则动作列表。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
URI
GET /v5/iot/{project_id}/routing-rule/actions
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
参数说明:项目ID。获取方法请参见 获取项目ID。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
rule_id |
否 |
String |
参数说明:规则触发条件ID。 取值范围:长度不超过36,只允许字母、数字、下划线(_)、连接符(-)的组合。 |
channel |
否 |
String |
参数说明:规则动作的类型。 取值范围:
|
app_type |
否 |
String |
参数说明:租户规则的生效范围。 取值范围:
|
app_id |
否 |
String |
参数说明:资源空间ID。此参数为非必选参数,rule_id不携带且app_type为APP时,该参数生效,可携带app_id查询指定资源空间下的规则动作列表,不携带app_id则查询默认资源空间下的规则动作列表。 取值范围:长度不超过36,只允许字母、数字、下划线(_)、连接符(-)的组合。 |
limit |
否 |
Integer |
参数说明:分页查询时每页显示的记录数。默认每页10条记录,最大设定每页50条记录。 取值范围:1-50的整数,默认值为10。 |
marker |
否 |
String |
参数说明:上一次分页查询结果中最后一条记录的ID,在上一次分页查询时由物联网平台返回获得。分页查询时物联网平台是按marker也就是记录ID降序查询的,越新的数据记录ID也会越大。若填写marker,则本次只查询记录ID小于marker的数据记录。若不填写,则从记录ID最大也就是最新的一条数据开始查询。如果需要依次查询所有数据,则每次查询时必须填写上一次查询响应中的marker值。 取值范围:长度为24的十六进制字符串,默认值为ffffffffffffffffffffffff。 |
offset |
否 |
Integer |
参数说明:表示从marker后偏移offset条记录开始查询。默认为0,取值范围为0-500的整数。当offset为0时,表示从marker后第一条记录开始输出。 - 限制offset最大值是出于API性能考虑,您可以搭配marker使用该参数实现翻页,例如每页50条记录,1-11页内都可以直接使用offset跳转到指定页,但到11页后,由于offset限制为500,您需要使用第11页返回的marker作为下次查询的marker,以实现翻页到12-22页。 取值范围:0-500的整数,默认为0。 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
否 |
String |
参数说明:用户Token。通过调用IAM服务 获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证。 |
Instance-Id |
否 |
String |
参数说明:实例ID。物理多租下各实例的唯一标识,一般华为云租户无需携带该参数,仅在物理多租场景下从管理面访问API时需要携带该参数。您可以在IoTDA管理控制台界面,选择左侧导航栏“总览”页签查看当前实例的ID。 |
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
actions |
Array of RoutingRuleAction objects |
规则动作信息列表。 |
count |
Integer |
满足查询条件的记录总数。 |
marker |
String |
本次分页查询结果中最后一条记录的ID,可在下一次分页查询时使用。 |
参数 |
参数类型 |
描述 |
---|---|---|
action_id |
String |
规则动作ID,用于唯一标识一条规则动作,在创建规则动作时由物联网平台分配获得,创建时无需携带,由平台统一分配唯一的action_id。 |
rule_id |
String |
规则动作对应的的规则触发条件ID。 |
app_id |
String |
资源空间ID。 |
channel |
String |
规则动作的类型,取值范围:
|
channel_detail |
ChannelDetail object |
通道配置信息。 |
参数 |
参数类型 |
描述 |
---|---|---|
http_forwarding |
HttpForwarding object |
参数说明:http服务器转发消息内容。当channel为HTTP_FORWARDING时,必填。 |
dis_forwarding |
DisForwarding object |
参数说明:转发DIS服务消息内容。当channel为DIS_FORWARDING时,必填。 |
obs_forwarding |
ObsForwarding object |
参数说明:转发OBS服务消息内容。当channel为OBS_FORWARDING时,必填。 |
amqp_forwarding |
AmqpForwarding object |
参数说明:转发AMQP服务消息内容。当channel为AMQP_FORWARDING时,必填。 |
dms_kafka_forwarding |
DmsKafkaForwarding object |
参数说明:转发Kafka消息内容。当channel为DMS_KAFKA_FORWARDING时,必填。 |
mysql_forwarding |
MysqlForwarding object |
参数说明:转发MySQL消息内容。当channel为MYSQL_FORWARDING时,必填。 |
influxdb_forwarding |
InfluxDBForwarding object |
参数说明:转发influxdb的配置参数。当channel为INFLUXDB_FORWARDING时,必填。 |
functiongraph_forwarding |
FunctionGraphForwarding object |
参数说明:转发云服务函数服务消息内容。当channel为FUNCTIONGRAPH_FORWARDING时,必填。 |
参数 |
参数类型 |
描述 |
---|---|---|
url |
String |
参数说明:用于接收满足规则条件数据的http服务器地址。HTTP为非数据加密传输模式,此模式下数据传输不安全, 建议使用更安全的HTTPS方式 |
cert_id |
String |
参数说明:证书id,请参见加载推送证书第3步获取证书ID |
cn_name |
String |
参数说明:当sni_enable为true时,此字段需要填写,内容为将要请求的服务端证书的域名,举例:domain:8443;当sni_enbale为false时,此字段默认不填写。 |
sni_enable |
Boolean |
参数说明:需要https服务端和客户端都支持此功能,默认为false,设成true表明Https的客户端在发起请求时,需要携带cn_name;https服务端根据cn_name返回对应的证书;设为false可关闭此功能。 |
signature_enable |
Boolean |
参数说明:是否启用签名。填写token时, 该参数必须为true, token才可以生效,否则token不生效。推荐设置成true,使用token签名验证消息是否来自平台。 |
token |
String |
参数说明:用作生成签名的Token,客户端可以使用该token按照规则生成签名并与推送消息中携带的签名做对比, 从而验证安全性。取值范围: 长度不超过32, 不小于3, 只允许字母、数字的组合。请参见HTTP/HTTPS推送基于Token认证物联网平台 |
参数 |
参数类型 |
描述 |
---|---|---|
region_name |
String |
参数说明:DIS服务对应的region区域 |
project_id |
String |
参数说明:DIS服务对应的projectId信息 |
stream_name |
String |
参数说明:DIS服务对应的通道名称,stream_id和stream_name两个参数必须携带一个,优先使用stream_id |
stream_id |
String |
参数说明:DIS服务对应的通道ID,stream_id和stream_name两个参数必须携带一个,优先使用stream_id |
参数 |
参数类型 |
描述 |
---|---|---|
region_name |
String |
参数说明:OBS服务对应的region区域 |
project_id |
String |
参数说明:OBS服务对应的projectId信息 |
bucket_name |
String |
参数说明:OBS服务对应的桶名称 |
location |
String |
参数说明:OBS服务对应桶的区域 |
file_path |
String |
参数说明:OBS服务中存储通道文件的自定义目录,多级目录可用(/)进行分隔,不可以斜杠(/)开头或结尾,不能包含两个以上相邻的斜杠(/) 取值范围: 英文字母(a-zA-Z)、数字(0-9)、下划线(_)、中划线(-)、斜杠(/)和大括号({}),最大字符长度256个字符。其中大括号只能用于对应模板参数。 模板参数:
|
参数 |
参数类型 |
描述 |
---|---|---|
region_name |
String |
参数说明:Kafka服务对应的region区域 |
project_id |
String |
参数说明:Kafka服务对应的projectId信息 |
addresses |
Array of SupportPrivateLinkNetAddress objects |
参数说明:转发kafka消息对应的地址列表 |
topic |
String |
参数说明:转发kafka消息关联的topic信息。 |
username |
String |
参数说明:转发kafka关联的用户名信息。 |
password |
String |
参数说明:转发kafka关联的密码信息。 |
mechanism |
String |
参数说明:转发kafka关联的SASL认证机制。 取值范围:
|
security_protocol |
String |
参数说明:kafka传输安全协议,此字段不填默认为SASL_SSL。当mechanism为PAAS或不填时,该字段不生效。 取值范围:
|
参数 |
参数类型 |
描述 |
---|---|---|
ip |
String |
参数说明:服务的对应IP |
port |
Integer |
参数说明:服务对应端口 |
domain |
String |
参数说明:服务对应的域名 |
参数 |
参数类型 |
描述 |
---|---|---|
address |
NetAddress object |
转发roma消息对应的地址列表 |
db_name |
String |
参数说明:连接MYSQL数据库的库名。 取值范围:长度不超过64,只允许字母、数字、下划线(_)、连接符(-)的组合。 |
username |
String |
参数说明:连接MYSQL数据库的用户名 |
password |
String |
参数说明:连接MYSQL数据库的密码 |
enable_ssl |
Boolean |
参数说明:客户端是否使用SSL连接服务端,默认为true, 若为false,则为非数据加密传输模式,此模式下数据传输不安全,建议您使用SSL模式。 |
table_name |
String |
参数说明:MYSQL数据库的表名 |
column_mappings |
Array of ColumnMapping objects |
参数说明:MYSQL数据库的列和流转数据的对应关系列表,最多支持32条映射关系。 |
参数 |
参数类型 |
描述 |
---|---|---|
address |
NetAddress object |
参数说明:转发InfluxDB消息对应的地址 |
db_name |
String |
参数说明:连接InfluxDB数据库的库名,不存在会自动创建 |
username |
String |
参数说明:连接InfluxDB数据库的用户名 |
password |
String |
参数说明:连接InfluxDB数据库的密码 |
measurement |
String |
参数说明:InfluxDB数据库的measurement,不存在会自动创建 |
column_mappings |
Array of ColumnMapping objects |
参数说明:InfluxDB数据库和流转数据的对应关系列表,最多支持32条映射关系。 |
请求示例
列表查询规则动作。
GET https://{endpoint}/v5/iot/{project_id}/routing-rule/actions
响应示例
状态码: 200
Successful response
{ "actions" : [ { "rule_id" : "1a7ffc5c-d89c-44dd-8265-b1653d951ce1", "action_id" : "1a7ffc5c-d89c-44dd-8265-b1653d951ce0", "channel_detail" : { "amqp_forwarding" : { "queue_name" : "test" }, "obs_forwarding" : { "file_path" : "device_property_report/{YYYY}/{MM}/{DD}/{HH}", "project_id" : "project_id", "bucket_name" : "bucket_name", "region_name" : "region_name", "location" : "location" }, "http_forwarding" : { "sni_enable" : false, "cn_name" : "domain:8443", "cert_id" : "0ae892cfeff641158920300b2292d2ca", "url" : "http://host:port/callbackurltest" }, "dis_forwarding" : { "stream_name" : "stream_name", "project_id" : "project_id", "stream_id" : "stream_id", "region_name" : "region_name" }, "dms_kafka_forwarding" : { "addresses" : [ { "port" : 443, "ip" : "host", "domain" : "huawei.com" } ], "password" : "password", "project_id" : "project_id", "topic" : "topic", "region_name" : "region_name", "mechanism" : "PLAIN", "security_protocol" : "SASL_SSL", "username" : "username" } }, "channel" : "HTTP_FORWARDING", "app_id" : "1a7ffc5c-d89c-44dd-8265-b1653d951ce2" } ], "count" : 10, "marker" : "5c90fa7d3c4e4405e8525079" }
状态码
状态码 |
描述 |
---|---|
200 |
Successful response |
400 |
Bad Request |
401 |
Unauthorized |
403 |
Forbidden |
500 |
Internal Server Error |
错误码
请参见错误码。