添加label(1.1.6)
功能介绍
添加label。
URI
参数 |
是否必选 |
类型 |
说明 |
---|---|---|---|
project_id |
是 |
String |
项目ID。获取方法请参见获取项目ID。 |
graph_name |
是 |
String |
图名称。 |
请求参数
- 请求参数说明(OBS场景)
表2 Body参数说明 参数
是否必选
类型
说明
name
是
String
label名称。
label name的长度不能超过256。
label name只允许字符,数字, 空格,%,@,#,$,:,?,*,.,+,- 和 _符号。
type
否
String
Label类别,表示此label用于点或边,取值为“vertex”或“edge”或“all”。
默认值为“all”,表示label作用于点和边。
properties
是
Object
待添加属性数组。具体参数介绍请见表3 properties参数说明。
表4 property参数说明 参数
是否必选
类型
说明
name
是
String
属性名称。
- property name的长度不能超过256。
- property name不允许包含<, >, &, ascci码14,15和30。
- 同一个label下不允许存在相同的property。
cardinality
是
String
属性的复合类型,包括:
- single
- list
- set
dataType
是
String
属性的数据类型。具体请参考表1中的元数据类型。
typeNameCount
否(若dataType为enum,则必选)
String
enum类型参数的总数。由该选项控制typeName的个数。
typeName*
否(若dataType为enum,则必选)
String
enum类型参数名称。例如typeNameCount为2,则参数包含typeName1:science,typeName2:literature。
响应参数
参数 |
类型 |
说明 |
---|---|---|
errorMessage |
String |
系统提示信息。
|
errorCode |
String |
系统提示信息。
|
result |
String |
响应结果。成功时result值为success,失败时值为failed。 |
请求示例
添加label,label的名称为book,label一共有三个待添加的属性。
POST http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/schema/labels { "name": "book", "type": "vertex", "properties": [ { "property": { "name": "Title", "cardinality": "single", "dataType": "string" } }, { "property": { "name": "Version", "cardinality": "single", "dataType": "string" } }, { "property": { "name": "Category", "typeName1": "science", "typeName2": "literature", "typeNameCount": "2", "cardinality": "single", "dataType": "enum" } } ] }
SERVER_URL:图的访问地址,取值请参考业务面API使用限制。
响应示例
状态码: 200
成功响应示例
Http Status Code: 200 { "result": "success" }
状态码: 400
Http Status Code: 400 { "errorMessage": "label already exists", "errorCode": "GES.8801" }
状态码
返回值 |
说明 |
---|---|
400 Bad Request |
请求错误。 |
401 Unauthorized |
鉴权失败。 |
403 Forbidden |
没有操作权限。 |
404 Not Found |
找不到资源。 |
500 Internal Server Error |
服务内部错误。 |
503 Service Unavailable |
服务不可用。 |
错误码
请参见错误码。