
# 创建图(2.2.2) -CreateGraph2
#### 功能介绍
创建一个图。
#### 调试
您可以在[API Explorer](https://apiexplorer.developer.huaweicloud.com/apiexplorer/doc?product=GES&api=CreateGraph2&version=v2)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### URI
POST /v2/{project_id}/graphs
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                  |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释：** 项目编号。获取方法，请参见[获取项目ID](https://support.huaweicloud.com/api-ges/ges_03_0111.html)。 **约束限制：** 不涉及。 **取值范围：** 只能由英文字母和数字组成，且长度为\[1-64\]个字符。 **默认取值：** 不涉及。 |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                            |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释：** 用户Token。用于获取操作API的权限。获取方法请参见[获取Token接口](https://support.huaweicloud.com/api-ges/ges_03_0005.html)，响应消息头中X-Subject-Token的值即为Token。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
表3请求Body参数 
| 参数    | 是否必选 | 参数类型                                        | 描述                                                                                                                                                                                                                                                                               |
|:---|:---|:---|:---|
| graph | 是    | [graph] object | **参数解释**： 图类型。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。 |
   
 表4graph 
| 参数                     | 是否必选 | 参数类型                                                          | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| name                   | 是    | String                                                        | **参数解释**： 图名称。 **约束限制**： 输入长度在4位到50位之间，必须以字母开头，可以包含字母、数字或者下划线，不能包含其他的特殊字符。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| graph_size_type_index  | 是    | String                                                        | **参数解释**： 图规模类型索引。 **约束限制**： 不涉及。 **取值范围**： - 0：一万边  - 1：百万边  - 2：千万边  - 3：一亿边  - 4：十亿边  - 5：百亿边  - 6：千亿边  - 401：十亿增强边   **默认取值**： 不涉及。 |
| arch                   | 否    | String                                                        | **参数解释**： 图实例CPU架构类型。 **约束限制**： 不涉及。 **取值范围**： - x86_64：X86 64位架构。  - aarch64：ARM 64位架构。   **默认取值**： x86_64。                                                                                                                                                                                                                                                                                                                                                                                                                            |
| vpc_id                 | 是    | String                                                        | **参数解释**： 虚拟私有云ID。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| subnet_id              | 是    | String                                                        | **参数解释**： 指定虚拟私有云下的子网ID。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| security_group_id      | 是    | String                                                        | **参数解释**： 安全组ID。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| public_ip              | 否    | [public_ip] object           | **参数解释**： 公网IP地址，如果未指定，则默认不使用公网连接。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| enable_multi_az        | 否    | Boolean                                                       | **参数解释**： 创建的图是否支持跨可用区（AZ）。 **约束限制**： 不涉及。 **取值范围**： - true：图中的ECS建在两个可用区中。  - false：图中的ECS都建在一个可用区中。   **默认取值**： false。                                                                                                                                                                                                                                                                                                                                                                                                               |
| sys_tags               | 否    | Array of [sys_tags] objects   | **参数解释**： 企业项目信息。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| tags                   | 否    | Array of [tags] objects           | **参数解释**： 支持标签TMS，做费用归集。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| enable_rbac            | 否    | Boolean                                                       | **参数解释**： 创建的图是否启用细粒度权限控制。 如果设置为true，创建的图所有用户都没有权限，需要调用业务面细粒度权限控制API进行授权操作才可以访问图。 **约束限制**： 不涉及。 **取值范围**： - true：启用。  - false：不启用。   **默认取值**： false。                                                                                                                                                                                                                                                                                                                                                    |
| enable_full_text_index | 否    | Boolean                                                       | **参数解释**： 创建的图是否开启全文索引控制。 如果设置为true，十亿增强版-规格版图支持全文索引，创建图时会创建云搜索服务集群。 **约束限制**： 不涉及。 **取值范围**： - true：开启。  - false：不开启。   **默认取值**： false。                                                                                                                                                                                                                                                                                                                                                                     |
| enable_hyg             | 否    | Boolean                                                       | **参数解释**： 该参数只对持久化版规格图生效。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| crypt_algorithm        | 否    | String                                                        | **参数解释**： 图实例加密算法。 **约束限制**： 不涉及。 **取值范围**： - generalCipher：国密算法。  - SMcompatible：商密算法（兼容国际）。   **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                        |
| enable_https           | 否    | Boolean                                                       | **参数解释**： 是否开启安全模式，开启安全模式会对性能有较大影响。 **约束限制**： 不涉及。 **取值范围**： - true：开启。  - false：不开启。   **默认取值**： true。                                                                                                                                                                                                                                                                                                                                                                                                                              |
| product_type           | 否    | String                                                        | **参数解释**： 图产品类型。 **约束限制**： 不涉及。 **取值范围**： - InMemory：内存版。  - Persistence：持久化版。   **默认取值**： 当graph_size_type_index取值为"6"时，默认为Persistence。                                                                                                                                                                                                                                                                                                                                                                                              |
| vertex_id_type         | 否    | [vertex_id_type] object | **参数解释**： 点的id类型。 **约束限制**： 仅持久化图需要填写。 点ID类型确定后，将无法更改，请用户谨慎选择。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| capacity_ratio         | 否    | Integer                                                       | **参数解释**： 图的容量倍率。 **约束限制**： 该参数只有持久化版百亿规格图支持，且从2.3.18版本后开始支持。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| is_dynamic_graph       | 否    | Boolean                                                       | **参数解释**： 是否为动态图。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| sort_key_type          | 否    | String                                                        | **参数解释**： 持久化版图数据的sortKey的类型，通过配置不同SortKey的值来区分重复边（源点，终点，Label三者都相同的边）。 **约束限制**： 仅持久化图需要填写。 **取值范围**： - "int"：整型。  - "string"：字节长度小于40的字符串。  - "varString"：不限长度字符串，过长会影响读写性能，建议长度控制在1K字节以内，最大不要超过2K字节。   **默认取值**： 不涉及。                                                                                                                                                                                                                                                             |
   
 表5public_ip 
| 参数               | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| public_bind_type | 否    | String | **参数解释**： 弹性IP绑定类型。 **约束限制**： 不涉及。 **取值范围**： - auto_assign：自动绑定。  - bind_existing：使用已有。   **默认取值**： 不涉及。 |
| eip_id           | 否    | String | **参数解释**： 弹性IP的id，当publicBindType设置为bind_existing时，该值为用户某个已创建但尚未绑定的EIP的ID；当publicBindType设置为auto_assign时，该值设置为空。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                        |
   
 表6sys_tags 
| 参数    | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| key   | 否    | String | **参数解释**： 企业项目的key填：_sys_enterprise_project_id。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。 |
| value | 否    | String | **参数解释**： 企业项目的id。可以从企业项目获取。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                           |
   
 表7tags 
| 参数    | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                          |
|:---|:---|:---|:---|
| key   | 否    | String | **参数解释**： 标签key。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。    |
| value | 否    | String | **参数解释**： 标签value。 **约束限制**： 不涉及。 **取值范围**： 不涉及。 **默认取值**： 不涉及。 |
   
 表8vertex_id_type 
| 参数        | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| id_type   | 是    | String  | **参数解释**： id类型。 **约束限制**： 当创建HyG图时，id_type只支持fixedLengthString。 **取值范围**： - fixedLengthString：固定长度String格式下，实际点ID直接用于内部存储与计算，用户需指定一长度，实际点ID不可超过此长度。长度过大，可能影响查询性能，建议用户根据数据集状态进行设置。  - varString：可变长度String格式下，用户写入的点ID无长度限制，但是ID过长会影响读写性能，建议长度控制在1K字节以内，最大不要超过4K字节。  - hash：哈希格式下，内部计算时将实际点ID转换成哈希码进行存储与计算，对实际点ID长度无限制，但是存在极低的概率(约10\^(-43))出现点ID碰撞。若用户无法确定点ID的最大长度，建议选择哈希类型。   **默认取值**： 不涉及。 |
| id_length | 否    | Integer | **参数解释**： id长度。 **约束限制**： 当id_type取值为fixedLengthString时必填。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
   
#### 响应参数
**状态码： 200**
表9响应Body参数 
| 参数   | 参数类型   | 描述                                                                                                                         |
|:---|:---|:---|
| id   | String | **参数解释**： 图ID。 **取值范围**： 不涉及。   |
| name | String | **参数解释**： 图名称。 **取值范围**： 不涉及。 |
   
**状态码： 400**
表10响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                          |
|:---|:---|:---|
| error_msg  | String | **参数解释**： 系统提示信息。 - 执行成功时，字段可能为空。  - 执行失败时，用于显示错误信息。   **取值范围**： 不涉及。     |
| error_code | String | **参数解释**： 系统提示信息。 - 执行成功时，字段可能为空。  - 执行失败时，用于显示错误码。   **取值范围**： 不涉及。 |
   
#### 请求示例
创建一个图，图名称为demo，图规模类型索引为百万边，图实例CPU架构类型为X86 64位架构 ，虚拟私有云ID为2d8af840-fd57-4e3b-a8f1-cda0f55ccd99，子网ID为dc018ec3-67d1-46c9-b2fc-19d83367f4e2，安全组ID为11d27338-8649-4076-8579-5ebc1a60f79e。
```
POST https://{Endpoint}/v2/{project_id}/graphs
{
  "graph" : {
    "name" : "demo",
    "graph_size_type_index" : "1",
    "arch" : "x86_64",
    "vpc_id" : "2d8af840-fd57-4e3b-a8f1-cda0f55ccd99",
    "subnet_id" : "dc018ec3-67d1-46c9-b2fc-19d83367f4e2",
    "security_group_id" : "11d27338-8649-4076-8579-5ebc1a60f79e",
    "public_ip" : {
      "public_bind_type" : "bind_existing",
      "eip_id" : "30ef2d58-08a9-4481-b526-b2cbe67d020d"
    },
    "enable_multi_az" : false,
    "sys_tags" : [ {
      "key" : "_sys_enterprise_project_id",
      "value" : "54c0b33c-8627-462f-948e-bae08c0887b4"
    } ],
    "crypt_algorithm" : "generalCipher",
    "enable_https" : false
  }
}
```
#### 响应示例
**状态码： 200**
成功响应示例
```
{
  "id" : "f1529b88-c958-493e-8452-fccfe932cde1",
  "name" : "demo"
}
```
**状态码： 400**
失败响应示例
```
{
  "error_code" : "GES.7016",
  "error_msg" : "The parameter [subnetId] is not exist."
}
```
#### 状态码
| 返回值                       | 说明     |
|:---|:---|
| 400 Bad Request           | 请求错误   |
| 401 Unauthorized          | 鉴权失败   |
| 403 Forbidden             | 没有操作权限 |
| 404 Not Found             | 找不到资源  |
| 500 Internal Server Error | 服务内部错误 |
| 503 Service Unavailable   | 服务不可用  |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-ges/ges_03_0040.html)。
