
# 创建灰度发布策略 - CreateDarkLaunchPolicy
#### 功能介绍
创建灰度发布策略。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/CSE/doc?api=CreateMicroserviceRouteRule)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-cse/cse_06_0081.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项               | 访问级别  | 资源类型（\*为必须） | 条件键 | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | cse:policy:update | write | -           | -   | -  | -      |
     
  
 
#### URI
PUT /v3/{project_id}/govern/route-rule/microservices/{service_name}
表1路径参数 
| 参数           | 是否必选 | 参数类型   | 描述                     |
|:---|:---|:---|:---|
| project_id   | 是    | String | 租户子项目的唯一标识。字符长度为1\~64。 |
| service_name | 是    | String | 微服务名称。                 |
   
表2Query参数 
| 参数          | 是否必选 | 参数类型   | 描述                   |
|:---|:---|:---|:---|
| environment | 否    | String | 所属环境，不填表示\<空\>环境。    |
| app_id      | 否    | String | 所属应用，不填默认为default应用。 |
   
#### 请求参数
表3请求Header参数 
| 参数                      | 是否必选 | 参数类型   | 描述                                       |
|:---|:---|:---|:---|
| Content-Type            | 是    | String | 该字段内容填为"application/json;charset=UTF-8"。 |
| X-Auth-Token            | 是    | String | 用户Token。                                 |
| x-engine-id             | 是    | String | 微服务引擎专享版的实例ID。                           |
| X-Enterprise-Project-ID | 是    | String | 企业项目ID。                                  |
   
表4请求Body参数 
| 参数       | 是否必选 | 参数类型                                                                                           | 描述             |
|:---|:---|:---|:---|
| \[数组元素\] | 是    | Array of [CreateRules] objects | 创建灰度发布策略请求结构体。 |
   
 表5CreateRules 
| 参数         | 是否必选 | 参数类型                                                                                           | 描述                    |
|:---|:---|:---|:---|
| precedence | 否    | Integer                                                                                        | 优先级，数字越大，优先级越高。       |
| match      | 否    | [CreateMatch] object           | 请求匹配规则。0\~N个，不配置表示匹配。 |
| route      | 否    | Array of [CreateRoute] objects | 路由规则列表。               |
   
 表6CreateMatch 
| 参数      | 是否必选 | 参数类型                                                                         | 描述          |
|:---|:---|:---|:---|
| headers | 否    | [headers] object | 匹配的Headers。 |
   
 表7headers 
| 参数         | 是否必选 | 参数类型                                                  | 描述           |
|:---|:---|:---|:---|
| \<header\> | 否    | [\<header\>] object | 匹配Header的规则。 |
   
 表8\<header\> 
| 参数              | 是否必选 | 参数类型    | 描述       |
|:---|:---|:---|:---|
| exact           | 否    | String  | 精确匹配值。   |
| caseInsensitive | 否    | Boolean | 是否区分大小写。 |
   
 表9CreateRoute 
| 参数     | 是否必选 | 参数类型                                                                   | 描述         |
|:---|:---|:---|:---|
| name   | 否    | String                                                                 | 规则名称。      |
| weight | 否    | Integer                                                                | 权重值。       |
| tags   | 否    | [tags] object | 匹配的实例标记列表。 |
   
 表10tags 
| 参数      | 是否必选 | 参数类型   | 描述                   |
|:---|:---|:---|:---|
| \<tag\> | 否    | String | 实例标记。满足标记条件的实例放到这一组。 |
   
#### 响应参数
**状态码： 200**
表11响应Body参数 
| 参数     | 参数类型   | 描述    |
|:---|:---|:---|
| result | String | 结果信息。 |
   
**状态码： 400**
表12响应Body参数 
| 参数         | 参数类型   | 描述      |
|:---|:---|:---|
| error_code | String | 错误码。    |
| error_msg  | String | 错误信息。   |
| detail     | String | 详细定位信息。 |
   
#### 请求示例
```
PUT https://{endpoint}/v3/{project_id}/govern/route-rule/microservices/{service_name}
[ {
  "precedence" : 1,
  "match" : {
    "headers" : {
      "<header>" : {
        "exact" : "test",
        "caseInsensitive" : false
      }
    }
  },
  "route" : [ {
    "name" : "rule_1",
    "weight" : 20,
    "tags" : {
      "<tag>" : "1.0.0"
    }
  } ]
} ]
```
#### 响应示例
**状态码： 200**
创建灰度发布策略响应结构体。
```
{
  "result" : "string"
}
```
#### 状态码
| 状态码 | 描述             |
|:---|:---|
| 200 | 创建灰度发布策略响应结构体。 |
| 400 | 错误的请求。         |
   
#### 错误码
请参见[CSE错误码](https://support.huaweicloud.com/api-cse/cse_06_0109.html)。
