创建外部推送通道
功能介绍
创建外部推送通道
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
URI
POST /v2/{project_id}/push-channels
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| project_id | 是 | String | 项目ID。获取方法请参见 获取项目ID。 |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Auth-Token | 是 | String | 用户Token。通过调用IAM服务 获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| channel_id | 否 | String | 推送通道ID,非必填,若用户不填,则系统自动生成 |
| channel | 是 | String | 通道 |
| name | 是 | String | 推送通道名称 |
| description | 否 | String | 推送通道描述 |
| endpoint | 是 | String | 推送的地址 |
| mqtt_channel_detail | 否 | CreateMqttChannelDetail object | MQTT通道配置详情 |
| iotdb_channel_detail | 否 | CreateIoTDBChannelDetail object | MQTT通道配置详情 |
| influxdb2_channel_detail | 否 | CreateInfluxDB2ChannelDetail object | MQTT通道配置详情 |
| pulsar_channel_detail | 否 | CreatePulsarChannelDetail object | Pulsar通道配置详情 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| connection_info | 是 | MqttConnectionInfo object | 创建外部推送通道请求结构体 |
| push_info | 是 | MqttPushInfo object | 创建MQTT推送信息 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| username | 是 | String | 鉴权用户名 |
| password | 是 | String | 鉴权密码 |
| trust_certs | 否 | Object | 客户端信任证书列表 |
| verify_hostname | 否 | Boolean | 客户端是否开启校验域名 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| topic | 是 | String | client推送的topic |
| format | 否 | String | 数据格式转换类型 |
| qos | 否 | Integer | Mqtt的服务质量 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| connection_info | 是 | IoTDBConnectionInfo object | 创建外部推送通道请求结构体 |
| push_info | 是 | IoTDBPushInfo object | 创建IoTDB推送信息 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| connection_info | 是 | InfluxDB2ConnectionInfo object | 创建外部推送通道请求结构体 |
| push_info | 是 | InfluxDB2PushInfo object | 创建IoTDB推送信息 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| token | 是 | String | 鉴权token |
| trust_certs | 否 | Object | 客户端信任证书列表 |
| verify_hostname | 否 | Boolean | 客户端是否开启校验域名 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| organization | 是 | String | 一组用户的工作空间,一组用户下可以创建多个bucket |
| bucket | 是 | String | 数据存储的地方,结合了数据库和存储周期的概念 |
| format | 是 | String | 数据格式转换类型 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| connection_info | 是 | PulsarConnectionInfo object | 创建外部推送通道请求结构体 |
| push_info | 是 | PulsarPushInfo object | 创建Pulsar推送信息 |
响应参数
状态码:201
| 参数 | 参数类型 | 描述 |
|---|---|---|
| channel_id | String | 推送通道ID |
| name | String | 推送通道名称 |
| channel | String | 通道 |
| description | String | 推送通道描述 |
| endpoint | String | 推送的地址 |
| mqtt_channel_detail | MqttChannelDetailDTO object | MQTT通道详情 |
| iotdb_channel_detail | IoTDBChannelDetailDTO object | IoTDB通道详情 |
| influxdb2_channel_detail | CreateInfluxDB2ChannelDetail object | MQTT通道配置详情 |
| pulsar_channel_detail | PulsarChannelDetailDTO object | Pulsar通道详情 |
| create_time | String | 创建时间 |
| update_time | String | 更新时间 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| connection_info | MqttConnectionInfoResp object | 外部推送通道返回详情 |
| push_info | MqttPushInfoResp object | MQTT推送信息详情 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| username | String | 鉴权用户名 |
| trust_certs | Object | 客户端信任证书列表 |
| verify_hostname | Boolean | 客户端是否开启校验域名 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| topic | String | client推送的topic |
| format | String | 数据格式转换类型 |
| qos | Integer | MQTT的服务质量 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| connection_info | IoTDBConnectionInfoResp object | 创建外部推送通道请求结构体 |
| push_info | IoTDBPushInfoResp object | IoTDB推送信息详情 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| connection_info | InfluxDB2ConnectionInfo object | 创建外部推送通道请求结构体 |
| push_info | InfluxDB2PushInfo object | 创建IoTDB推送信息 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| token | String | 鉴权token |
| trust_certs | Object | 客户端信任证书列表 |
| verify_hostname | Boolean | 客户端是否开启校验域名 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| organization | String | 一组用户的工作空间,一组用户下可以创建多个bucket |
| bucket | String | 数据存储的地方,结合了数据库和存储周期的概念 |
| format | String | 数据格式转换类型 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| connection_info | PulsarConnectionInfoResp object | 外部推送通道返回详情 |
| push_info | PulsarPushInfoResp object | Pulsar推送信息详情 |
请求示例
POST https://{endpoint}/v2/{project_id}/push-channels
{
"channel_id" : "123456",
"channel" : "MQTT",
"name" : "规则1",
"description" : "这是一个推送通道",
"endpoint" : "ssl://068b72f3b75444dda67cc6e2286a4c20.apic.cn-south-1.huaweicloudapis.com",
"mqtt_channel_detail" : {
"connection_info" : {
"username" : "admin",
"password" : "*****",
"verify_hostname" : true,
"trust_certs" : [ "cert1" ]
},
"push_info" : {
"device_data" : {
"topic" : "$oc/gateway/properties/report",
"format" : "iotda_1.0",
"qos" : 1
}
}
}
} 响应示例
状态码:201
Created
{
"channel_id" : "123456",
"name" : "规则1",
"channel" : "MQTT",
"description" : "这是一个推送通道",
"endpoint" : "ssl://068b72f3b75444dda67cc6e2286a4c20.apic.cn-south-1.huaweicloudapis.com",
"mqtt_channel_detail" : {
"connection_info" : {
"username" : "admin",
"verify_hostname" : true,
"trust_certs" : [ "cert1" ]
},
"push_info" : {
"device_data" : {
"topic" : "$oc/gateway/properties/report",
"format" : "iotda_1.0",
"qos" : 1
}
}
},
"create_time" : "2020-05-28T11:31:29.740Z",
"update_time" : "2020-05-28T11:31:29.740Z"
} 状态码
| 状态码 | 描述 |
|---|---|
| 201 | Created |
| 400 | BAD REQUEST |
| 500 | Internal Server Error |
错误码
请参见错误码。