
# 更新事件订阅目标 - UpdateSubscriptionTarget
#### 功能介绍
更新事件订阅目标定义。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/EG/doc?api=UpdateSubscriptionTarget)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-eg/eg-api-025.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                                 | 访问级别  | 资源类型（\*为必须）      | 条件键                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | 别名                      | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | eg:subscriptions:updateSubscription | Write | subscriptions \* | - g:ResourceTag/\<tag-key\>   - g:EnterpriseProjectId   - eg:SubscriptionTargetProviderType   - eg:SubscriptionTargetName    | eg:subscriptions:update | -      |
     
  
 
#### URI
PUT /v1/{project_id}/subscriptions/{subscription_id}/targets/{target_id}
表1路径参数 
| 参数              | 是否必选 | 参数类型   | 描述       |
|:---|:---|:---|:---|
| project_id      | 是    | String | 租户资源空间ID |
| subscription_id | 是    | String | 事件订阅ID   |
| target_id       | 是    | String | 事件订阅目标ID |
   
表2Query参数 
| 参数                    | 是否必选 | 参数类型   | 描述              |
|:---|:---|:---|:---|
| enterprise_project_id | 否    | String | 创建订阅时所使用的企业项目id |
   
#### 请求参数
表3请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                       |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | 用户Token。通过调用IAM服务获取用户Token接口获取（响应消息头中X-Subject-Token的值）。 |
   
表4请求Body参数 
| 参数                | 是否必选 | 参数类型                                                                                   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
|:---|:---|:---|:---|
| id                | 否    | String                                                                                 | 订阅目标ID，需保证全局唯一，由小写字母、数字、中划线组成，必须字母或数字开头。 更新订阅场景时，指定ID的订阅目标存在时则进行更新，否则进行创建； 创建订阅目标场景时，指定ID作为待创建的订阅目标对象ID，未指定时由系统自动生成。 更新订阅目标时，此字段忽略；                                                                                                                                                                                                                                                                                                                         |
| name              | 是    | String                                                                                 | 订阅的事件目标名称                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| provider_type     | 是    | String                                                                                 | 订阅的事件目标的提供方类型： - CUSTOM：自定义事件目标   - OFFICIAL：云服务事件目标    |
| 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目标端的参数                                                                                                                                                                                                                                                                                                                                                                                                                                         |
   
 表5KafkaTargetDetail 
| 参数           | 是否必选 | 参数类型                                                                   | 描述   |
|:---|:---|:---|:---|
| topic        | 是    | String                                                                 | 主题   |
| keyTransform | 否    | [keyTransform] object | 键值规则 |
   
 表6keyTransform 
| 参数       | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|:---|
| type     | 否    | String | 键值规则类型： - NONE：透传   - VARIABLE：变量   - CONSTANT：常量    |
| value    | 否    | String | 键值规则，键值规则为VARIABLE，CONSTANT时必填                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| template | 否    | String | 键值规则模板，键值规则为VARIABLE时必填                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
   
 表7SmnTargetDetail 
| 参数                | 是否必选 | 参数类型                                                                             | 描述    |
|:---|:---|:---|:---|
| urn               | 是    | String                                                                           | 主题urn |
| agency_name       | 是    | String                                                                           | 委托名称  |
| subject_transform | 否    | [subject_transform] object | 标题规则  |
   
 表8subject_transform 
| 参数       | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|:---|
| type     | 是    | String | 标题规则类型： - VARIABLE：变量   - CONSTANT：常量    |
| value    | 是    | String | 标题规则                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| template | 否    | String | 标题规则模板，键值规则为VARIABLE时必填                                                                                                                                                                                                                                                                                                                                                                                                                      |
   
 表9EgTargetDetail 
| 参数                | 是否必选 | 参数类型    | 描述        |
|:---|:---|:---|:---|
| target_project_id | 是    | String  | 目标项目id    |
| target_channel_id | 是    | String  | 目标通道id    |
| target_region     | 是    | String  | 目标region  |
| cross_region      | 否    | Boolean | 跨region开关 |
| agency_name       | 是    | String  | 委托名称      |
   
 表10ApigwTargetDetail 
| 参数                         | 是否必选 | 参数类型                                                                                           | 描述        |
|:---|:---|:---|:---|
| url                        | 是    | String                                                                                         | 目标url     |
| invocation_http_parameters | 否    | [InvocationHttpParameters] object | 调用Http的参数 |
   
 表11InvocationHttpParameters 
| 参数                | 是否必选 | 参数类型                                                                                   | 描述   |
|:---|:---|:---|:---|
| header_parameters | 否    | Array of [HeaderParameter] objects | 对象列表 |
   
 表12HeaderParameter 
| 参数              | 是否必选 | 参数类型    | 描述            |
|:---|:---|:---|:---|
| is_value_secret | 否    | Boolean | 是否加密          |
| key             | 否    | String  | header的key值   |
| value           | 否    | String  | header的value值 |
   
 表13DeadLetterQueue 
| 参数            | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| type          | 是    | String | 队列类型: - KAFKA：KAFKA队列    |
| instance_id   | 是    | String | 实例id                                                                                                                                                                                                                                                                   |
| connection_id | 是    | String | 目标连接id                                                                                                                                                                                                                                                                 |
| topic         | 是    | String | 主题                                                                                                                                                                                                                                                                     |
   
 表14RocketmqTargetDetail 
| 参数            | 是否必选 | 参数类型                                                             | 描述      |
|:---|:---|:---|:---|
| topic         | 否    | String                                                           | topic名称 |
| key_transform | 否    | [TransForm] object | 转换规则    |
   
 表15TransForm 
| 参数       | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|:---|
| type     | 是    | String | 转换规则类型： - ORIGINAL：透传   - CONSTANT：常量   - VARIABLE：变量    |
| value    | 否    | String | 常量类型规则时，字段为常量内容定义； 变量类型规则时，为变量定义，内容必须为JsonObject字符串。 变量最多支持100个，且不支持嵌套结构定义； 变量名由字母、数字、点、下划线和中划线组成，必须字母或数字开头不能以HC.开头，长度不超过64个字符； 变量值表达式支持常量或JsonPath表达式，字符串长度不超过1024个字符。                                                                                                                                                                                                                                                            |
| template | 否    | String | 变量类型规则时，规则内容的模板定义，支持对已定义变量的引用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   
#### 响应参数
**状态码：200**
表16响应Header参数 
| 参数           | 参数类型   | 描述                                                                                                |
|:---|:---|:---|
| X-Request-Id | String | This field is the request ID number for task tracking. Format is request_uuid-timestamp-hostname. |
   
表17响应Body参数 
| 参数                | 参数类型                                                                                    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
|:---|:---|:---|
| id                | String                                                                                  | 订阅目标ID                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| name              | String                                                                                  | 订阅的事件目标名称                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| provider_type     | String                                                                                  | 订阅的事件目标的提供方类型： - CUSTOM：自定义事件目标   - OFFICIAL：云服务事件目标    |
| 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目标端的参数                                                                                                                                                                                                                                                                                                                                                                                                                                         |
   
 表18KafkaTargetDetail 
| 参数           | 参数类型                                                                    | 描述   |
|:---|:---|:---|
| topic        | String                                                                  | 主题   |
| keyTransform | [keyTransform] object | 键值规则 |
   
 表19keyTransform 
| 参数       | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|
| type     | String | 键值规则类型： - NONE：透传   - VARIABLE：变量   - CONSTANT：常量    |
| value    | String | 键值规则，键值规则为VARIABLE，CONSTANT时必填                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| template | String | 键值规则模板，键值规则为VARIABLE时必填                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
   
 表20SmnTargetDetail 
| 参数                | 参数类型                                                                              | 描述    |
|:---|:---|:---|
| urn               | String                                                                            | 主题urn |
| agency_name       | String                                                                            | 委托名称  |
| subject_transform | [subject_transform] object | 标题规则  |
   
 表21subject_transform 
| 参数       | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|
| type     | String | 标题规则类型： - VARIABLE：变量   - CONSTANT：常量    |
| value    | String | 标题规则                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| template | String | 标题规则模板，键值规则为VARIABLE时必填                                                                                                                                                                                                                                                                                                                                                                                                                      |
   
 表22EgTargetDetail 
| 参数                | 参数类型    | 描述        |
|:---|:---|:---|
| target_project_id | String  | 目标项目id    |
| target_channel_id | String  | 目标通道id    |
| target_region     | String  | 目标region  |
| cross_region      | Boolean | 跨region开关 |
| agency_name       | String  | 委托名称      |
   
 表23ApigwTargetDetail 
| 参数                         | 参数类型                                                                                            | 描述        |
|:---|:---|:---|
| url                        | String                                                                                          | 目标url     |
| invocation_http_parameters | [InvocationHttpParameters] object | 调用Http的参数 |
   
 表24InvocationHttpParameters 
| 参数                | 参数类型                                                                                    | 描述   |
|:---|:---|:---|
| header_parameters | Array of [HeaderParameter] objects | 对象列表 |
   
 表25HeaderParameter 
| 参数              | 参数类型    | 描述            |
|:---|:---|:---|
| is_value_secret | Boolean | 是否加密          |
| key             | String  | header的key值   |
| value           | String  | header的value值 |
   
 表26DeadLetterQueue 
| 参数            | 参数类型   | 描述                                                                                                                                                                                                                                                                     |
|:---|:---|:---|
| type          | String | 队列类型: - KAFKA：KAFKA队列    |
| instance_id   | String | 实例id                                                                                                                                                                                                                                                                   |
| connection_id | String | 目标连接id                                                                                                                                                                                                                                                                 |
| topic         | String | 主题                                                                                                                                                                                                                                                                     |
   
 表27RocketmqTargetDetail 
| 参数            | 参数类型                                                              | 描述      |
|:---|:---|:---|
| topic         | String                                                            | topic名称 |
| key_transform | [TransForm] object | 转换规则    |
   
 表28TransForm 
| 参数       | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|
| type     | String | 转换规则类型： - ORIGINAL：透传   - CONSTANT：常量   - VARIABLE：变量    |
| value    | String | 常量类型规则时，字段为常量内容定义； 变量类型规则时，为变量定义，内容必须为JsonObject字符串。 变量最多支持100个，且不支持嵌套结构定义； 变量名由字母、数字、点、下划线和中划线组成，必须字母或数字开头不能以HC.开头，长度不超过64个字符； 变量值表达式支持常量或JsonPath表达式，字符串长度不超过1024个字符。                                                                                                                                                                                                                                                            |
| template | String | 变量类型规则时，规则内容的模板定义，支持对已定义变量的引用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   
#### 请求示例
更新事件订阅目标定义
```
PUT https://{endpoint}/v1/{project_id}/subscriptions/{subscription_id}/targets/{target_id}
{
  "connection_id" : "456eekj3-778u-4tyu-dfrt-er55e37f667t",
  "detail" : {
    "agency_name" : "EG_TARGET_AGENCY",
    "invoke_type" : "ASYNC",
    "url" : "http://10.213.96.90:8080/t/nodeapp/trigger-hello-nodejs",
    "urn" : "urn:fss:cn-north-7:bac852160cc743158936edaab6dda813:function:default:gxtestjava:latest",
    "workflow_id" : "86afc904-0019-46c8-baed-0225967c1b98"
  },
  "id" : "3a0eeff2-78a4-4122-dfge-7ty5e37f64er",
  "name" : "WEBHOOK",
  "provider_type" : "CUSTOM",
  "retry_times" : 16,
  "transform" : {
    "type" : "VARIABLE"
  }
}
```
#### 响应示例
**状态码：200**
Information
```
{
  "id" : "3a0eeff2-78a4-4122-dfge-7ty5e37f64er",
  "name" : "WEBHOOK",
  "provider_type" : "CUSTOM",
  "connection_id" : "456eekj3-778u-4tyu-dfrt-er55e37f667t",
  "detail" : {
    "url" : "http://10.213.96.90:8080/t/nodeapp/trigger-hello-nodejs"
  },
  "retry_times" : 16,
  "created_time" : "2021-12-09 09:00:00",
  "updated_time" : "2021-12-09 09:00:00"
}
```
#### 状态码
| 状态码 | 描述          |
|:---|:---|
| 200 | Information |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-eg/ErrorCode.html)。
