
# 创建指令 - CreateInstruction
#### 功能介绍
该接口用于创建指令。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-metastudio/metastudio_02_0002.html)。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-metastudio/metastudio_02_0071.html)。
#### URI
POST /v1/{project_id}/wise-brain-manager/instruction
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                            |
|:---|:---|:---|:---|
| project_id | 是    | String | 项目ID，获取方法请参考[获取项目ID](https://support.huaweicloud.com/api-metastudio/metastudio_02_0006.html)。 |
   
#### 请求参数
表2请求Header参数 
| 参数            | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                           |
|:---|:---|:---|:---|
| X-Auth-Token  | 否    | String | 用户Token。使用Token鉴权方式时必选。 通过调用IAM服务获取用户Token接口获取。 响应消息头中X-Subject-Token的值。 |
| Authorization | 否    | String | 使用AK/SK方式认证时必选，携带的鉴权信息。                                                                                                                                                                                      |
| X-Sdk-Date    | 否    | String | 使用AK/SK方式认证时必选，请求的发生时间。                                                                                                                                                                                      |
| X-Project-Id  | 否    | String | 使用AK/SK方式认证时必选，携带项目ID信息。                                                                                                                                                                                     |
| X-App-UserId  | 否    | String | 第三方用户ID。不允许输入中文。                                                                                                                                                                                             |
   
表3请求Body参数 
| 参数                     | 是否必选 | 参数类型                                                                                                                             | 描述       |
|:---|:---|:---|:---|
| name                   | 是    | String                                                                                                                           | 指令名称。    |
| description            | 是    | String                                                                                                                           | 指令描述。    |
| instruction            | 是    | String                                                                                                                           | 操作指令。    |
| instruction_library_id | 是    | String                                                                                                                           | 指令集ID。   |
| slot_list              | 否    | Array of [InstructionSlotInfo] objects             | 槽位列表     |
| reply_words_list       | 否    | Array of [InstructionReplyWordsInfo] objects | 指令回复话术列表 |
   
 表4InstructionSlotInfo 
| 参数                     | 是否必选 | 参数类型                                                                                                                           | 描述    |
|:---|:---|:---|:---|
| name                   | 是    | String                                                                                                                         | 槽位名称。 |
| description            | 否    | String                                                                                                                         | 槽位描述。 |
| knowledge_library_list | 否    | Array of [SlotKnowledgeLibraryInfo] objects | 知识库列表 |
   
 表5SlotKnowledgeLibraryInfo 
| 参数                   | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| language             | 是    | String | 智能交互语言 - CN:中文   - EN:英文    |
| knowledge_library_id | 是    | String | 知识库ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
   
 表6InstructionReplyWordsInfo 
| 参数          | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| language    | 是    | String | 智能交互语言 - CN:中文   - EN:英文    |
| reply_words | 是    | String | 回复话术，多个回复话术间用换行符\\n分隔。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
   
#### 响应参数
**状态码：200**
表7响应Header参数 
| 参数           | 参数类型   | 描述    |
|:---|:---|:---|
| X-Request-Id | String | 请求ID。 |
   
表8响应Body参数 
| 参数             | 参数类型   | 描述    |
|:---|:---|:---|
| instruction_id | String | 指令ID。 |
   
**状态码：400**
表9响应Body参数 
| 参数         | 参数类型   | 描述    |
|:---|:---|:---|
| error_code | String | 错误码。  |
| error_msg  | String | 错误描述。 |
   
#### 请求示例
```
POST https://metastudio.cn-north-4.myhuaweicloud.com/v1/70b76xxxxxx34253880af501cdxxxxxx/wise-brain-manager/instruction
{
  "name" : "看电视",
  "description" : "IPTV指令，用于播放电视对应频道的节目",
  "instruction" : "{\"type\":20,\"instruct\":\"CHANNEL\",\"channelName\":\"{channelName}\"}",
  "instruction_library_id" : "80ac485c5fa545a79f741df0aacf739a",
  "slot_list" : [ {
    "name" : "channelName",
    "description" : "频道名称",
    "knowledge_library_list" : [ {
      "language" : "CN",
      "knowledge_library_id" : "8a2de18a95ac6b280195ac6b84ad0000"
    } ]
  } ],
  "reply_words_list" : [ {
    "language" : "CN",
    "reply_words" : "已为您打开。\\n已操作完成。"
  } ]
}
```
#### 响应示例
**状态码：200**
处理成功返回。
```
{
  "instruction_id" : "ea2934bd5354442d80b4df11a52bbfe9"
}
```
**状态码：400**
请求传参异常，包含错误码及对应描述。
```
{
  "error_code" : "MSS.00000003",
  "error_msg" : "Invalid parameter"
}
```
#### 状态码
| 状态码 | 描述                 |
|:---|:---|
| 200 | 处理成功返回。            |
| 400 | 请求传参异常，包含错误码及对应描述。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-metastudio/ErrorCode.html)。
