API 参考
关系 API
创建和管理实体之间的关系
关系 API
关系 API 允许您创建和管理实体之间的关系,构建知识图谱。
关系对象
| 字段 | 类型 | 描述 |
|---|---|---|
id | string | 唯一关系标识符 |
sourceId | string | 源实体 ID |
targetId | string | 目标实体 ID |
type | string | 关系类型 |
metadata | object | 自定义元数据 |
createdAt | string | ISO 8601 时间戳 |
关系类型
常见关系类型(您可以自定义):
| 类型 | 描述 | 示例 |
|---|---|---|
WORKS_FOR | 雇佣关系 | 张三 WORKS_FOR 科技公司 |
KNOWS | 人际关系 | 张三 KNOWS 李四 |
LOCATED_IN | 地理位置 | 科技公司 LOCATED_IN 北京 |
PART_OF | 隶属/层级关系 | 工程部 PART_OF 科技公司 |
CREATED | 创作/创建关系 | 张三 CREATED 项目 X |
RELATED_TO | 一般关联 | 主题 A RELATED_TO 主题 B |
创建关系
创建两个实体之间的新关系。
POST /v1/relations请求体
| 字段 | 类型 | 必需 | 描述 |
|---|---|---|---|
sourceId | string | 是 | 源实体 ID |
targetId | string | 是 | 目标实体 ID |
type | string | 是 | 关系类型 |
metadata | object | 否 | 自定义元数据 |
请求示例
curl -X POST https://api.memokit.dev/v1/relations \
-H "Authorization: Bearer mk_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"sourceId": "ent_zhang123",
"targetId": "ent_tech456",
"type": "WORKS_FOR",
"metadata": {
"startDate": "2023-01-15",
"role": "高级工程师"
}
}'响应
{
"id": "rel_abc123",
"sourceId": "ent_zhang123",
"targetId": "ent_tech456",
"type": "WORKS_FOR",
"metadata": {
"startDate": "2023-01-15",
"role": "高级工程师"
},
"createdAt": "2024-01-15T10:30:00Z"
}列出关系
获取分页的关系列表。
GET /v1/relations查询参数
| 参数 | 类型 | 必需 | 描述 |
|---|---|---|---|
sourceId | string | 否 | 按源实体过滤 |
targetId | string | 否 | 按目标实体过滤 |
type | string | 否 | 按关系类型过滤 |
page | number | 否 | 页码(默认:1) |
limit | number | 否 | 每页数量(默认:20,最大:100) |
请求示例
curl -X GET "https://api.memokit.dev/v1/relations?sourceId=ent_zhang123" \
-H "Authorization: Bearer mk_your_api_key"响应
{
"items": [
{
"id": "rel_abc123",
"sourceId": "ent_zhang123",
"targetId": "ent_tech456",
"type": "WORKS_FOR",
"source": {
"id": "ent_zhang123",
"name": "张三",
"type": "PERSON"
},
"target": {
"id": "ent_tech456",
"name": "科技公司",
"type": "ORGANIZATION"
},
"createdAt": "2024-01-15T10:30:00Z"
},
{
"id": "rel_def456",
"sourceId": "ent_zhang123",
"targetId": "ent_li789",
"type": "KNOWS",
"source": {
"id": "ent_zhang123",
"name": "张三",
"type": "PERSON"
},
"target": {
"id": "ent_li789",
"name": "李四",
"type": "PERSON"
},
"createdAt": "2024-01-14T15:20:00Z"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 2,
"totalPages": 1
}
}获取关系
通过 ID 获取特定关系。
GET /v1/relations/:id路径参数
| 参数 | 类型 | 描述 |
|---|---|---|
id | string | 关系 ID |
请求示例
curl -X GET https://api.memokit.dev/v1/relations/rel_abc123 \
-H "Authorization: Bearer mk_your_api_key"响应
{
"id": "rel_abc123",
"sourceId": "ent_zhang123",
"targetId": "ent_tech456",
"type": "WORKS_FOR",
"source": {
"id": "ent_zhang123",
"name": "张三",
"type": "PERSON"
},
"target": {
"id": "ent_tech456",
"name": "科技公司",
"type": "ORGANIZATION"
},
"metadata": {
"startDate": "2023-01-15",
"role": "高级工程师"
},
"createdAt": "2024-01-15T10:30:00Z"
}删除关系
永久删除一个关系。
DELETE /v1/relations/:id路径参数
| 参数 | 类型 | 描述 |
|---|---|---|
id | string | 关系 ID |
请求示例
curl -X DELETE https://api.memokit.dev/v1/relations/rel_abc123 \
-H "Authorization: Bearer mk_your_api_key"响应
{
"success": true,
"id": "rel_abc123"
}错误码
| 错误码 | 描述 |
|---|---|
RELATION_NOT_FOUND | 指定的关系不存在 |
SOURCE_ENTITY_NOT_FOUND | 源实体不存在 |
TARGET_ENTITY_NOT_FOUND | 目标实体不存在 |
INVALID_RELATION_TYPE | 关系类型无效 |