批量添加label
功能介绍
批量添加label。
URI
- URI格式
POST /ges/v1.0/{project_id}/graphs/{graph_name}/schema/labels/action?action_id=batch-add
- 参数说明
表1 URI参数说明 参数
是否必选
类型
说明
project_id
是
String
项目编号,用于资源隔离。请参考获取项目ID。
graph_name
是
String
图名称。
请求
- 请求样例
POST http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/schema/labels/action?action_id=batch-add { "labels": [ { "name": "book", "properties": [ { "property": { "name": "title", "cardinality": "single", "dataType": "string" } } ] }, { "name": "movie", "properties": [ { "property": { "name": "movieid", "cardinality": "single", "dataType": "int" } } ] } ] }
SERVER_URL:图的访问地址,取值请参考业务面API使用限制。
表2 label参数说明 参数
是否必选
类型
说明
name
是
String
label名称。
label name的长度不能超过256。
label name只允许字符,数字, 空格,%,@,#,$,:,?,*,.,+,- 和 _符号。
properties
是
Json
待添加属性数组。数组元素为property,具体参数介绍请见表3。
表3 property参数说明 参数
是否必选
类型
说明
name
是
String
属性名称。
- property name的长度不能超过256。
- property name不允许包含<, >, &, ASCII码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。
data
否
Json
当批量添加部分失败时,data字段包含失败的label_name以及失败原因。
- 请求成功样例
Http Status Code: 200 { "result": "success" }
- 请求部分成功样例
Http Status Code: 200 { "result": "partial success", "data": { "failed": [ { "cause": "label name is invalid which can only contain letters, digits, space,%,@,#,$,:,?,*,.,+,- and _", "labelName": "book<" } ] } }
- 请求失败样例
Http Status Code: 400 { "errorMessage": "label already exists", "errorCode": "GES.8801" }