更新事件订阅 - UpdateSubscription
功能介绍
更新事件订阅定义。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限,具体权限要求请参见权限和授权项。
URI
PUT /v1/{project_id}/subscriptions/{subscription_id}
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| project_id | 是 | String | 租户资源空间ID |
| subscription_id | 是 | String | 事件订阅ID |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| enterprise_project_id | 否 | String | 创建订阅时所使用的企业项目id |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Auth-Token | 是 | String | 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| description | 否 | String | 订阅描述 |
| sources | 否 | Array of SubscriptionSource objects | 订阅事件源列表,字段存在则代表全量更新订阅源 |
| targets | 否 | Array of SubscriptionTarget objects | 订阅事件目标列表,字段存在则代表全量更新订阅目标 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| id | 否 | String | 订阅源ID,需保证全局唯一。指定ID的订阅源存在时则进行更新,否则进行创建;未指定时由系统自动生成。由小写字母、数字、中划线组成,必须字母或数字开头。 |
| name | 是 | String | 订阅的事件源名称 |
| provider_type | 是 | String | 订阅的事件源的提供方类型:
|
| detail | 否 | Object | 订阅的事件源参数列表, 该字段序列化后总长度不超过1024字节 |
| filter | 是 | Object | 订阅事件源的匹配过滤规则, 该字段序列化后总长度不超过2048字节 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| id | 否 | String | 订阅目标ID,需保证全局唯一,由小写字母、数字、中划线组成,必须字母或数字开头。 更新订阅场景时,指定ID的订阅目标存在时则进行更新,否则进行创建; 创建订阅目标场景时,指定ID作为待创建的订阅目标对象ID,未指定时由系统自动生成。 更新订阅目标时,此字段忽略; |
| name | 是 | String | 订阅的事件目标名称 |
| provider_type | 是 | String | 订阅的事件目标的提供方类型:
|
| connection_id | 否 | String | 订阅的事件目标使用的目标链接ID |
| detail | 否 | Object | 订阅的事件目标参数列表,该字段序列化后总长度不超过1024字节,函数(urn、invoke_type、agency_name)、函数流(workflow_id、agency_name)、webhook(url)订阅目标必填,其中函数、函数流委托名称必填 |
| kafka_detail | 否 | KafkaTargetDetail object | 订阅的kafka事件目标参数列表,该字段序列化后总长度不超过1024字节 |
| smn_detail | 否 | SmnTargetDetail object | 订阅的SMN事件目标参数列表,该字段序列化后总长度不超过1024字节 |
| eg_detail | 否 | EgTargetDetail object | 订阅的事件eg通道目标参数列表,该字段序列化后总长度不超过1024字节,eg通道目标必填 |
| apigw_detail | 否 | ApigwTargetDetail object | 订阅的事件APIGWurl目标参数列表,该字段序列化后总长度不超过1024字节,APIGW目标必填 |
| retry_times | 否 | Integer | 重试次数 |
| transform | 是 | TransForm object | 订阅的事件目标转换规则 |
| dead_letter_queue | 否 | DeadLetterQueue object | 订阅的死信参数列表 |
| rocketmq_detail | 否 | RocketmqTargetDetail object | 事件订阅中RocketMQ目标端的参数 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| type | 否 | String | 键值规则类型:
|
| value | 否 | String | 键值规则,键值规则为VARIABLE,CONSTANT时必填 |
| template | 否 | String | 键值规则模板,键值规则为VARIABLE时必填 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| urn | 是 | String | 主题urn |
| agency_name | 是 | String | 委托名称 |
| subject_transform | 否 | subject_transform object | 标题规则 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| type | 是 | String | 标题规则类型:
|
| value | 是 | String | 标题规则 |
| template | 否 | String | 标题规则模板,键值规则为VARIABLE时必填 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| target_project_id | 是 | String | 目标项目id |
| target_channel_id | 是 | String | 目标通道id |
| target_region | 是 | String | 目标region |
| cross_region | 否 | Boolean | 跨region开关 |
| agency_name | 是 | String | 委托名称 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| url | 是 | String | 目标url |
| invocation_http_parameters | 否 | InvocationHttpParameters object | 调用Http的参数 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| header_parameters | 否 | Array of HeaderParameter objects | 对象列表 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| is_value_secret | 否 | Boolean | 是否加密 |
| key | 否 | String | header的key值 |
| value | 否 | String | header的value值 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| type | 是 | String | 队列类型:
|
| instance_id | 是 | String | 实例id |
| connection_id | 是 | String | 目标连接id |
| topic | 是 | String | 主题 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| topic | 否 | String | topic名称 |
| key_transform | 否 | TransForm object | 转换规则 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| type | 是 | String | 转换规则类型:
|
| value | 否 | String | 常量类型规则时,字段为常量内容定义; 变量类型规则时,为变量定义,内容必须为JsonObject字符串。 变量最多支持100个,且不支持嵌套结构定义; 变量名由字母、数字、点、下划线和中划线组成,必须字母或数字开头不能以HC.开头,长度不超过64个字符; 变量值表达式支持常量或JsonPath表达式,字符串长度不超过1024个字符。 |
| template | 否 | String | 变量类型规则时,规则内容的模板定义,支持对已定义变量的引用。 |
响应参数
状态码:200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| X-Request-Id | String | This field is the request ID number for task tracking. Format is request_uuid-timestamp-hostname. |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 订阅ID |
| name | String | 订阅名称 |
| description | String | 订阅描述 |
| type | String | 类型:
|
| status | String | 状态:
|
| channel_id | String | 通道ID |
| channel_name | String | 通道名称 |
| used | Array of SubscriptionUsedInfo objects | 标签信息 |
| sources | Array of SubscriptionSourceInfo objects | 订阅源列表 |
| targets | Array of SubscriptionTargetInfo objects | 订阅目标列表 |
| created_time | String | 创建时间 |
| updated_time | String | 更新时间 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| resource_id | String | 关联资源ID |
| owner | String | 管理租户账号 |
| description | String | 描述 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 订阅源ID |
| name | String | 订阅的事件源名称 |
| provider_type | String | 订阅的事件源的提供方类型:
|
| detail | Object | 订阅的事件源参数列表 |
| filter | Object | 订阅事件源的匹配过滤规则 |
| created_time | String | 创建时间 |
| updated_time | String | 更新时间 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 订阅目标ID |
| name | String | 订阅的事件目标名称 |
| provider_type | String | 订阅的事件目标的提供方类型:
|
| connection_id | String | 订阅的事件目标使用的目标链接ID |
| detail | Object | 订阅的事件目标参数列表 |
| kafka_detail | KafkaTargetDetail object | 订阅的kafka事件目标参数列表,该字段序列化后总长度不超过1024字节 |
| smn_detail | SmnTargetDetail object | 订阅的SMN事件目标参数列表,该字段序列化后总长度不超过1024字节 |
| eg_detail | EgTargetDetail object | 订阅的事件eg通道目标参数列表,该字段序列化后总长度不超过1024字节,eg通道目标必填 |
| apigw_detail | ApigwTargetDetail object | 订阅的事件APIGWurl目标参数列表,该字段序列化后总长度不超过1024字节,APIGW目标必填 |
| retry_times | Integer | 重试次数 |
| transform | TransForm object | 订阅的事件目标转换规则 |
| dead_letter_queue | DeadLetterQueue object | 订阅的死信参数列表 |
| created_time | String | 创建时间 |
| updated_time | String | 更新时间 |
| rocketmq_detail | RocketmqTargetDetail object | 事件订阅中RocketMQ目标端的参数 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| type | String | 键值规则类型:
|
| value | String | 键值规则,键值规则为VARIABLE,CONSTANT时必填 |
| template | String | 键值规则模板,键值规则为VARIABLE时必填 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| urn | String | 主题urn |
| agency_name | String | 委托名称 |
| subject_transform | subject_transform object | 标题规则 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| type | String | 标题规则类型:
|
| value | String | 标题规则 |
| template | String | 标题规则模板,键值规则为VARIABLE时必填 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| target_project_id | String | 目标项目id |
| target_channel_id | String | 目标通道id |
| target_region | String | 目标region |
| cross_region | Boolean | 跨region开关 |
| agency_name | String | 委托名称 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| url | String | 目标url |
| invocation_http_parameters | InvocationHttpParameters object | 调用Http的参数 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| is_value_secret | Boolean | 是否加密 |
| key | String | header的key值 |
| value | String | header的value值 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| type | String | 队列类型:
|
| instance_id | String | 实例id |
| connection_id | String | 目标连接id |
| topic | String | 主题 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| type | String | 转换规则类型:
|
| value | String | 常量类型规则时,字段为常量内容定义; 变量类型规则时,为变量定义,内容必须为JsonObject字符串。 变量最多支持100个,且不支持嵌套结构定义; 变量名由字母、数字、点、下划线和中划线组成,必须字母或数字开头不能以HC.开头,长度不超过64个字符; 变量值表达式支持常量或JsonPath表达式,字符串长度不超过1024个字符。 |
| template | String | 变量类型规则时,规则内容的模板定义,支持对已定义变量的引用。 |
请求示例
更新事件订阅
PUT https://{endpoint}/v1/{project_id}/subscriptions/{subscription_id}
{
"description" : "开发用",
"sources" : [ {
"detail" : { },
"filter" : {
"source" : [ {
"op" : "StringIn",
"values" : [ "ghm" ]
} ]
},
"id" : "4fca4f29-917b-44d3-bb30-4310f89d08cb",
"name" : "ghm",
"provider_type" : "CUSTOM"
} ],
"targets" : [ {
"id" : "4261f07e-975c-457f-aa91-0bd33d64baba",
"name" : "HC.SMN",
"provider_type" : "OFFICIAL",
"retry_times" : 16,
"smn_detail" : {
"agency_name" : "EG_TARGET_AGENCY",
"urn" : "urn:smn:cn-north-7:bac852160cc743158936edaab6dda813:CES_notification_group_xMXxPQ1ry"
},
"transform" : {
"type" : "ORIGINAL",
"value" : ""
}
} ]
} 响应示例
状态码:200
Information
{
"id" : "23709d68-54d5-423b-a6be-03302e893152",
"name" : "test-subscription",
"description" : "this is a test subscription",
"type" : "EVENT",
"status" : "CREATED",
"channel_id" : "05649f9a-b324-4920-9c49-156d4cd2e546",
"channel_name" : "channel006",
"used" : [ { } ],
"sources" : [ { } ],
"targets" : [ { } ],
"created_time" : "2021-12-09 09:00:00",
"updated_time" : "2021-12-09 09:00:00"
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | Information |
错误码
请参见错误码。