
# 通过patch操作对服务进行更新
#### 功能介绍
通过patch操作对服务进行更新。patch的格式可以参照json patch。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/ModelArts/doc?api=PatchServiceV2)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-modelarts/modelarts_03_0138.html)。
- 如果使用身份策略授权，当前API调用无需身份策略权限。
 
#### URI
PATCH /v1/{project_id}/services/{service_id}
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                               |
|:---|:---|:---|:---|
| project_id | 是    | String | 用户项目ID。获取方法请参见[获取项目ID和名称](https://support.huaweicloud.com/api-modelarts/modelarts_03_0147.html)。 |
| service_id | 是    | String | 服务ID。                                                                                            |
   
#### 请求参数
表2请求Header参数 
| 参数                  | 是否必选 | 参数类型   | 描述                              |
|:---|:---|:---|:---|
| X-ModelArts-User-ID | 否    | String | 委托Token校验workspace时需要填写user id。 |
| X-Auth-Token        | 是    | String | 用户token。                        |
   
表3请求Body参数 
| 参数       | 是否必选 | 参数类型                                                                                                           | 描述            |
|:---|:---|:---|:---|
| \[数组元素\] | 是    | Array of [PatchServiceV2RequestBody] objects | 服务PATCH操作请求体。 |
   
 表4PatchServiceV2RequestBody 
| 参数    | 是否必选 | 参数类型   | 描述                                                                                                                                                              |
|:---|:---|:---|:---|
| op    | 否    | String | 操作类型，目前仅支持replace，代表值替换操作。                                                                                                                                      |
| path  | 否    | String | 操作路径，符合标准的Json PATCH格式，代表以服务详情的Json返回体为基准，想要执行替换的值的目标路径（Json PATH）。当前支持且仅支持对模型相关所有参数的替换更新，因此前缀固定为"/config/"。例如，当期望更新第一个模型中的实例数量，则路径为"/config/0/instance_count"。 |
| value | 否    | String | 替换的目标值。                                                                                                                                                         |
   
#### 响应参数
**状态码：200**
表5响应Header参数 
| 参数           | 参数类型   | 描述             |
|:---|:---|:---|
| X-Request-Id | String | 请求链路编号，可用于日志追踪 |
   
表6响应Body参数 
| 参数           | 参数类型   | 描述                                                                           |
|:---|:---|:---|
| update_time  | String | 本次更新时间，仅触发服务配置升级时会返回，比如修改config参数，可根据此时间从服务更新记录中过滤出此次的更新结果；修改描述或启停服务不会返回此参数。 |
| resource_ids | String | 更新的资源ID。                                                                     |
   
**状态码：400**
表7响应Header参数 
| 参数           | 参数类型   | 描述             |
|:---|:---|:---|
| X-Request-Id | String | 请求链路编号，可用于日志追踪 |
   
表8响应Body参数 
| 参数         | 参数类型   | 描述                                                                                   |
|:---|:---|:---|
| error_code | String | **参数解释**：ModelArts错误码。 **取值范围**：不涉及。 |
| error_msg  | String | **参数解释**：具体错误信息。 **取值范围**：不涉及。       |
   
#### 请求示例
通过patch操作对服务进行更新。
```
PATCH https://{endpoint}/v1/{project_id}/services/{service_id}
[ {
  "op" : "replace",
  "path" : "/config/0/envs",
  "value" : { }
}, {
  "op" : "replace",
  "path" : "/config/0/model_id",
  "value" : "a9542b46-8dfd-4184-bd81-c8d8946edb47"
}, {
  "op" : "replace",
  "path" : "/config/0/additional_properties",
  "value" : {
    "persistent_volumes" : [ {
      "storage_type" : "obs_pfs",
      "source_address" : "/dongcong4",
      "mount_path" : "/var/tmp",
      "storage_type_text" : "atelier_webservice_detail_model_config_volumes_type_obs"
    } ]
  }
}, {
  "op" : "replace",
  "path" : "/config/0/specification",
  "value" : "modelarts.vm.ai1.a310"
}, {
  "op" : "replace",
  "path" : "/config/0/pool_name",
  "value" : "pool-c8e2-04f258c84780d5a52f3bc00dc15aa5e7"
} ]
```
#### 响应示例
**状态码：200**
OK
```
{
  "update_time" : 1700625410586,
  "resource_ids" : [ "INF-ae2aa85ce2a3fcac-1700530937033", "INF-ae2aa85ca9542b46-1700530937026" ]
}
```
#### 状态码
| 状态码 | 描述   |
|:---|:---|
| 200 | OK   |
| 400 | 参数非法 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-modelarts/modelarts_03_0095.html)。
