更新label
功能介绍
当前版本的更新label仅支持向已经存在的label末尾追加property,不支持删除已有property,也不支持更新property顺序。
URI
- URI格式
POST /ges/v1.0/{project_id}/graphs/{graph_name}/schema/labels/{label_name}/properties
- URI格式(一千亿边)
POST /ges/v1.0/{project_id}/graphs/{graph_name}/schema?label={labelName}
- 参数说明
表1 URI参数说明 参数
是否必选
类型
说明
project_id
是
String
项目编号,用于资源隔离。请参考获取项目ID。
graph_name
是
String
图名称。
label_name
是
String
Label名称。
请求
- 请求样例(不包括图规格为一千亿边)
POST http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/schema/labels/{label_name}/properties { "name": "book", "properties": [ { "property": { "name": "Title", "cardinality": "single", "dataType": "string" } }, { "property": { "name": "Version", "cardinality": "single", "dataType": "string" } }, { "property": { "name": "Category", "typeName1": "science", "typeName2": "literature", "typeNameCount": "2", "dataType": "enum" } } ] }
- 请求样例(一千亿边)
POST http://{SERVER_URL}/ges/v1.0/{projectId}/graphs/{graphName}/schema?label={labelName} { "properties": [ "Title", "Version", "Category" ] }
- Body参数说明
表2 Body参数说明 参数
是否必选
类型
说明
name
是
String
label名称。
label name的长度不能超过256。
label name只允许字符,数字,空格,%,@,#,$,:,?,*,.,+,- 和 _符号。
properties
是
Json
待追加的属性数组。数组元素为property,具体参数介绍请见表3。
properties(一千亿边)
是
Json
待更新的属性数组。数组元素为property,具体参数介绍请见表3。
表3 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。
响应
- 要素说明
表4 要素说明 参数
是否必选
类型
说明
errorMessage
否
String
系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误信息。
errorCode
否
String
系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误码。
result
否
String
成功时result值为success。
- 请求成功样例
Http Status Code: 200 { "result": "success" }
- 请求失败样例
Http Status Code: 400 { "errorMessage": "label already exists", "errorCode": "GES.8801" }