
# 查询Schema结构 - QuerySchemaStructure
#### 功能介绍
查询生成的schema结构。
#### URI
GET /ges/v1.0/{project_id}/graphs/{graph_name}/schema/structure?detail={details}
表1路径参数 
| 参数         | 是否必选 | 类型     | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释：** 项目编号。获取方法，请参见[获取项目ID](https://support.huaweicloud.com/api-ges/ges_03_0111.html)。 **约束限制：** 不涉及。 **取值范围：** 只能由英文字母和数字组成，且长度为\[1-64\]个字符。 **默认取值：** 不涉及。                                                                                                |
| graph_name | 是    | String | **参数解释：** 图名称。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                         |
| details    | 否    | String | **参数解释：** 查询模式。 **约束限制：** 不涉及。 **取值范围：** - SIMPLE模式：表示只返回点或边的label。  - FULL模式：表示除点或边的label外，还有点或边的数量。   **默认取值：** 若该字段不填，则默认为SIMPLE。 |
   
#### 响应参数
表2响应Body参数说明 
| 参数           | 类型     | 说明                                                                                                                                                                                                                                                                                                                          |
|:---|:---|:---|
| errorMessage | String | **参数解释**： 系统提示信息。 - 执行成功时，字段可能为空。  - 执行失败时，用于显示错误信息。   **取值范围**： 不涉及。     |
| errorCode    | String | **参数解释**： 系统提示信息。 - 执行成功时，字段可能为空。  - 执行失败时，用于显示错误码。   **取值范围**： 不涉及。 |
| schema       | Object | **参数解释**： schema结构查询结果。详情请参见[schema参数说明]。 **取值范围**： 不涉及。                                                                                                                                       |
   
 表3schema参数说明 
| 参数       | 类型     | 说明                                                                                                                                                                                               |
|:---|:---|:---|
| vertices | Object | **参数解释**： 点的结果集合。图为空时，vertices内容为空。详情请参见[vertices参数说明]。 **取值范围**： 不涉及。 |
| edges    | Object | **参数解释**： 边的结果集合。图为空时，edges内容为空。详情请参见[edges参数说明]。 **取值范围**： 不涉及。  |
   
 表4vertices参数说明 
| 参数     | 类型      | 说明                                                                                                                              |
|:---|:---|:---|
| vertex | String  | **参数解释**： label名。 **取值范围**： 不涉及。        |
| weight | Integer | **参数解释**： 具有该label的点的数量。 **取值范围**： 不涉及。 |
   
 表5edges参数说明 
| 参数       | 类型      | 说明                                                                                                                                  |
|:---|:---|:---|
| source   | String  | **参数解释**： 起始点label名。 **取值范围**： 不涉及。      |
| target   | String  | **参数解释**： 终点label名。 **取值范围**： 不涉及。          |
| relation | String  | **参数解释**： 关系label名。 **取值范围**： 不涉及。      |
| weight   | Integer | **参数解释**： 具有该label的边的数量。 **取值范围**： 不涉及。 |
   
#### 请求示例
查询生成的schema结构。
```
GET http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/schema/structure?detail=SIMPLE
```
#### 响应示例
**状态码： 200**
成功响应示例
```
{
    "schema": {
        "vertices": [
            {
                "vertex": "user",
                "weight": 100
            },
            {
                "vertex": "movie",
                "weight": 46
            }
        ],
        "edges": [
            {
                "weight": 1209,
                "source": "user",
                "target": "movie",
                "relation": "rate"
            },
            {
                "weight": 450,
                "source": "user",
                "target": "user",
                "relation": "default"
            }
        ]
    }
}
```
**状态码： 400**
失败响应示例
```
Http Status Code: 400
{
    "errorMessage":"Parameter error!",
    "errorCode":"GES.8005"
}
```
#### 状态码
| 返回值                       | 说明      |
|:---|:---|
| 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)。
