
# 导入图(2.1.14) - ImportGraph
#### URI
POST /ges/v1.0/{project_id}/graphs/{graph_name}/action?action_id=import-graph
表1路径参数 
| 参数         | 是否必选 | 类型     | 说明                                                                                                                                                                                                                                                                                                                                                                                  |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释：** 项目编号。获取方法，请参见[获取项目ID](https://support.huaweicloud.com/api-ges/ges_03_0111.html)。 **约束限制：** 不涉及。 **取值范围：** 只能由英文字母和数字组成，且长度为\[1-64\]个字符。 **默认取值：** 不涉及。 |
| graph_name | 是    | String | **参数解释：** 图名称。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                          |
   
#### 请求参数
表2Body参数说明 
| 参数              | 是否必选 | 类型        | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|:---|
| edgesetPath     | 否    | String    | **参数解释：** 边文件目录或边文件名。 **约束限制：** 不涉及。 **取值范围：** edgesetPath、vertexsetPath、schemaPath三选一。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                        |
| edgesetFormat   | 否    | String    | **参数解释：** 边数据集格式。 **约束限制：** 不涉及。 **取值范围：** 支持csv和txt。 **默认取值：** 默认为csv。                                                                                                                                                                                                                                                                                                        |
| vertexsetPath   | 否    | String    | **参数解释：** 点文件目录或点文件名。 **约束限制：** 不涉及。 **取值范围：** edgesetPath、vertexsetPath、schemaPath三选一。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                     |
| vertexsetFormat | 否    | String    | **参数解释：** 点数据集格式。 **约束限制：** 不涉及。 **取值范围：** 支持csv和txt。 **默认取值：** 默认为csv。                                                                                                                                                                                                                                                                                                  |
| schemaPath      | 否    | String    | **参数解释：** 新增数据的元数据文件。 **约束限制：** 不涉及。 **取值范围：** edgesetPath、vertexsetPath、schemaPath三选一。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                        |
| logDir          | 否    | String    | **参数解释：** 导入图日志存放目录，用于存储导入失败的数据和详细错误原因。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                        |
| parallelEdge    | 否    | Object    | **参数解释：** 重复边处理。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                              |
| action          | 否    | String    | **参数解释：** 处理方式。 **约束限制：** 不涉及。 **取值范围：** 取值为allow，ignore和override。 - allow表示允许重复边。  - ignore表示忽略之后的重复边。  - override表示覆盖之前的重复边。   **默认取值：** 默认为allow。 |
| ignoreLabel     | 否    | Boolean   | **参数解释：** 重复边的定义，是否忽略Label。 **约束限制：** 不涉及。 **取值范围：** 取值为true或者false。 - true 表示重复边定义不包含Label，即用\<源点，终点\>标记一条边，不包含Label。  - false 表示重复边定义包含Label，即用\<源点，终点，Label\>标记一条边。   **默认取值：** 默认取true。                                   |
| delimiter       | 否    | Character | **参数解释：** csv格式文件字段分隔符。 **约束限制：** list/set类型的字段内元素分隔符默认为分号（;）。 **取值范围：** 不涉及。 **默认取值：** 默认值为逗号（,）。                                                                                                                                                                                                                                                                            |
| trimQuote       | 否    | Character | **参数解释：** csv格式文件字段包围符，用来包围一个字段，如字段中含有分隔符或者换行等。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 默认值为双引号（"）。                                                                                                                                                                                                                                                                            |
| offline         | 否    | Boolean   | **参数解释：** 是否离线导入。 **约束限制：** 不涉及。 **取值范围：** 取值为true或者false。 - true 表示离线导入，导入速度较快，但导入过程中图处于锁定状态，不可读不可写。  - false 表示在线导入，相对离线导入，在线导入速度略慢，但导入过程中图并未锁定，可读不可写。   **默认取值：** 默认取false。                                 |
| obsParameters   | 是    | Object    | **参数解释：** Obs相关参数。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                           |
   
表3obsParameters参数类型 
|    参数     | 是否必选 |   类型   |                                                                                                                                         说明                                                                                                                                         |
|---|---|---|---|
| accessKey | 是    | String | **参数解释：** 用户的accessKey。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
| secretKey | 是    | String | **参数解释：** 用户的secretKey。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
#### 响应参数
表4响应Body参数说明 
| 参数           | 类型      | 说明                                                                                                                                                                                                                                                                                                                          |
|:---|:---|:---|
| errorMessage | String  | **参数解释**： 系统提示信息。 - 执行成功时，字段可能为空。  - 执行失败时，用于显示错误信息。   **取值范围**： 不涉及。     |
| errorCode    | String  | **参数解释**： 系统提示信息。 - 执行成功时，字段可能为空。  - 执行失败时，用于显示错误码。   **取值范围**： 不涉及。 |
| jobId        | String  | 执行该异步任务的jobId。 可以查询jobId查看任务执行状态、获取返回结果，详情参考[Job管理API](https://support.huaweicloud.com/api-ges/ges_03_0036.html)。                                                                                                                                                                             |
| jobType      | Integer | **参数解释**： 任务类型。请求失败时，该字段为空。 **取值范围**： 不涉及。                                                                                                                                                                                        |
   
#### 请求示例
进行导入图操作，边文件目录为testbucket/demo_movie/edges/，边数据集格式为csv，点文件目录为testbucket/demo_movie/vertices/，点数据集格式为csv，新增数据的元数据文件OBS路径为testbucket/demo_movie/incremental_data_schema.xml，日志存放目录为testbucket/importlogdir。
```
POST http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/action?action_id=import-graph
{
  "edgesetPath": "testbucket/demo_movie/edges/",
  "edgesetFormat": "csv",
  "vertexsetPath": "testbucket/demo_movie/vertices/",
  "vertexsetFormat": "csv",
  "schemaPath": "testbucket/demo_movie/incremental_data_schema.xml",
  "logDir": "testbucket/importlogdir",
  "parallelEdge": { 
           "action":"override",
           "ignoreLabel":true
   },
  "delimiter": ",",
  "trimQuote": "\"",
  "offline": true,
  "obsParameters": {
    "accessKey": "xxxxxx",
    "secretKey": "xxxxxx"
  }
}
```
#### 响应示例
**状态码： 200**
成功响应示例
```
Http Status Code: 200
{
    "jobId": "b7f3ea8d-8a22-40ea-8751-6bcad5fc38b6000003836",
    "jobType": 4
}
```
**状态码： 400**
失败响应示例
```
Http Status Code: 400
{
 "errorMessage": "Not found. Please check the input parameters.",
 "errorCode": "GES.8000"
}
```
#### 状态码
| 返回值                       | 说明      |
|:---|:---|
| 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_0110.html)。
