
# 创建GB/T28181凭证
#### 功能介绍
该接口用于创建GB/T28181凭证，该凭证用于GB/T28181设备注册时使用。
#### 调试
您可以在[API Explorer](https://apiexplorer.developer.huaweicloud.com/apiexplorer/doc?product=VIS&api=CreateDeviceCertificate)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### URI
POST /v1/{project_id}/credentials/codes
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                             |
|:---|:---|:---|:---|
| project_id | 是    | String | 项目ID，获取方法请参考[获取项目ID](https://support.huaweicloud.com/api-vis/vis_03_0005.html) |
#### 请求参数
表2请求Header参数 
| 参数            | 是否必选 | 参数类型   | 描述                       |
|:---|:---|:---|:---|
| X-Auth-Token  | 是    | String | 普通租户的token。              |
| Authorization | 否    | String | 使用AK/SK方式认证时必选，携带的鉴权信息。  |
| X-Sdk-Date    | 否    | String | 使用AK/SK方式认证时必选，请求的发生时间。  |
| X-Project-Id  | 否    | String | 使用AK/SK方式认证时必选，携带项目ID信息。 |
   
表3请求Body参数 
| 参数          | 是否必选 | 参数类型   | 描述                                                                                                                                |
|:---|:---|:---|:---|
| username    | 是    | String | 凭证用户名，全局唯一。 - 当type为NORMAL（非匿名）时，该参数必选。 - 当type为ANONYMOUS（匿名）时，该参数被忽略。长度为1～32，可以包含字母、数字，不能包含其他的特殊字符。                              |
| type        | 否    | String | 凭证类型，可选值如下。 - NORMAL：非匿名，表示当使用该凭证作为设备凭证时，使用凭证指定的username作为用户名。 - ANONYMOUS：匿名，表示当使用该凭证作为设备凭证时，使用设备的ID作为用户名。 不区分大小写，该参数默认值为NORMAL。 |
| password    | 是    | String | 凭证密码。长度为8位～32位的字符串，至少包含以下三种字符：大写字母、小写字母、数字和特殊字符（@#_-\*）。密码不能与凭证用户名相同，也不能与用户名的倒序相同。                                                |
| description | 否    | String | 凭证描述，长度不超过500个字符。                                                                                                                 |
   
#### 响应参数
**状态码： 201**
表4响应Body参数 
| 参数          | 参数类型   | 描述      |
|:---|:---|:---|
| username    | String | 凭证用户名。  |
| description | String | 凭证描述。   |
| type        | String | 凭证类型。   |
| created_at  | String | 凭证创建时间。 |
| updated_at  | String | 凭证更新时间。 |
   
#### 请求示例
```
POST /v1/3266392d188c47d09948b1**********/credentials/codes
{
  "username" : "0000",
  "password" : "********",
  "type" : "NORMAL",
  "description" : "this is for device."
}
```
#### 响应示例
**状态码： 201**
正常
```
{
  "created_at" : "2018-10-25T11:45:01Z",
  "description" : "this is for device.",
  "username" : "0000",
  "type" : "normal",
  "updated_at" : "2018-10-25T11:45:01Z"
}
```
**状态码： 400**
请求错误。具体返回错误码请参考[错误码说明](https://support.huaweicloud.com/api-vis/vis_03_0047.html)
```
{
  "error_msg" : "The request param is wrong, name contains illegal characters.",
  "error_code" : "VIS.0005"
}
```
#### 状态码
| 状态码 | 描述                                                                               |
|:---|:---|
| 201 | 正常                                                                               |
| 400 | 请求错误。具体返回错误码请参考[错误码说明](https://support.huaweicloud.com/api-vis/vis_03_0047.html) |
   
