
# 创建发布算法资产 - CreateAlgorithmVersionToGallery
#### 功能介绍
创建发布算法资产接口用于在算法管理中创建并发布新的算法资产。
该接口适用于以下场景：当用户开发完成新的算法并希望将其发布为可复用的算法资产时，可以通过此接口创建并发布算法资产。使用该接口的前提条件是用户已登录且具有创建和发布算法资产的权限。创建发布操作完成后，系统将生成新的算法资产，并将其添加到算法资产列表中，用户可以通过算法ID进行管理和调用。若用户无权限操作、算法资产信息不完整或已存在相同名称的算法资产，接口将返回相应的错误信息。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/ModelArts/doc?api=CreateAlgorithmVersionToGallery)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-modelarts/modelarts_03_0138.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                          | 访问级别  | 资源类型（\*为必须）    | 条件键 | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | modelarts:aiAlgorithm:create | Write | aiAlgorithm \* | -   | -  | -      |
     
  
 
#### URI
POST /v2/{project_id}/gallery-algorithm-publication
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释** ：用户项目ID。获取方法请参见[获取项目ID和名称](https://support.huaweicloud.com/api-modelarts/modelarts_03_0147.html)。 **约束限制**：1 - 64字符，字母、数字和中划线。 **取值范围**：不涉及。 **默认取值**：不涉及。 |
   
#### 请求参数
表2请求Body参数 
| 参数           | 是否必选 | 参数类型                                                                                                      | 描述                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| content_id   | 否    | String                                                                                                    | **参数解释**：资产id。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。 |
| content_info | 否    | [ContentInfo] object     | **参数解释**：资产内容。 **约束限制**：不涉及。                                                                                                                                                                                       |
| algorithm    | 否    | [AlgorithmInfo] object | **参数解释**：算法内容。 **约束限制**：不涉及。                                                                                                                                                                                       |
   
 表3ContentInfo 
| 参数          | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| version_num | 否    | String | **参数解释**：版本数量。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。 |
| desc        | 否    | String | **参数解释**：描述。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。   |
   
 表4AlgorithmInfo 
| 参数 | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| id | 否    | String | **参数解释**：算法id。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。 |
   
#### 响应参数
**状态码：202**
表5响应Body参数 
| 参数          | 参数类型   | 描述                                                                                                           |
|:---|:---|:---|
| content_id  | String | **参数解释**：资产id。 **取值范围**：不涉及。    |
| version_id  | String | **参数解释**：版本号id。 **取值范围**：不涉及。   |
| version_num | String | **参数解释**：版本数量。 **取值范围**：不涉及。    |
| content_uri | String | **参数解释**：资产uri地址。 **取值范围**：不涉及。 |
   
#### 请求示例
```
POST https://endpoint/v2/{project_id}/gallery-algorithm-publication
{
  "content_id" : "86c3cceb-8693-434c-853a-2a610c49xxxx",
  "content_info" : {
    "version_num" : "1.0.0",
    "desc" : "测试资产"
  },
  "algorithm" : {
    "id" : "86c3cceb-8693-434c-853a-2a610cxxxxxx"
  }
}
```
#### 响应示例
**状态码：202**
OK。
```
{
  "content_id" : "86c3cceb-8693-434c-853a-2a610c49xxxx",
  "version_id" : "version-003",
  "version_num" : "1.0.0",
  "content_uri" : ""
}
```
#### 状态码
| 状态码 | 描述  |
|:---|:---|
| 202 | OK。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-modelarts/modelarts_03_0095.html)。
