接受数据订阅¶
接受一条数据订阅,并指定目标工作区中的订阅数据库名称。
POST https://moi.matrixorigin.cn/newmoi/data-share/subscriptions/{id}/subscribe
调用前准备¶
先查询数据订阅列表,确认要接受的订阅。准备有目标工作区访问权限的个人访问令牌、目标工作区 ID、订阅 ID 和本地订阅名称。
下方示例使用:
$AI_STUDIO_API_KEY:实际个人访问令牌,通过X-API-KeyHeader 传递。$WORKSPACE_ID:目标工作区 ID,通过X-Workspace-IDHeader 传递。$SUBSCRIPTION_ID:要接受的订阅 ID,取自查询数据订阅列表的响应。
路径参数¶
参数 |
类型 |
说明 |
|---|---|---|
|
integer |
大于 |
请求体¶
字段 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
本地订阅名称。 |
请求示例¶
curl -X POST "https://moi.matrixorigin.cn/newmoi/data-share/subscriptions/$SUBSCRIPTION_ID/subscribe" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-H 'Content-Type: application/json' \
-d '{
"sub_name": "sales_subscription"
}'
成功响应¶
成功时返回 200 和更新后的订阅记录。记录目标数据库 ID;它表示目标工作区中创建的订阅数据库。
{
"code": "OK",
"msg": "OK",
"data": {
"id": "201",
"pub_name": "sales-share",
"source_database_id": "101",
"mo_database_name": "sales",
"table_scope": {
"mode": "selected",
"object_ids": ["1001"]
},
"target_database_id": "301",
"obj_display_name": "sales",
"obj_display_path": "catalog/sales",
"source_workspace_id": "ws-001",
"source_workspace_name": "数据工作区",
"publisher": "user-001",
"published_at": "2026-08-18T10:00:00Z",
"status": "subscribed",
"sub_name": "sales_subscription",
"subscribed_by": "user-002",
"created_at": "2026-08-18T10:00:00Z"
}
}
响应字段如下。
字段 |
类型 |
说明 |
|---|---|---|
|
string |
成功时为 |
|
string |
成功时为 |
|
string |
订阅 ID。 |
|
string |
来源发布名称。 |
|
string |
来源数据库 ID。 |
|
string |
来源数据库名称。 |
|
object |
发布共享的表范围。 |
|
string |
范围模式: |
|
string(字符串数组) |
当范围模式为 |
|
string |
目标工作区中订阅数据库的 ID;接受成功后返回。 |
|
string |
来源数据库的显示名称。 |
|
string |
来源数据库的显示路径。 |
|
string |
来源工作区 ID。 |
|
string |
来源工作区名称;有值时返回。 |
|
string |
发布者。 |
|
string |
发布时间。 |
|
string |
当前订阅状态。 |
|
string |
目标工作区中的订阅数据库名称。 |
|
string |
接受订阅的身份标识。 |
|
string |
接受订阅的时间。 |
错误响应¶
{
"code": "ErrAlreadySubscribed",
"msg": "数据已订阅",
"data": null
}
常见 HTTP 错误¶
HTTP 状态码 |
错误代码 |
常见原因 |
建议操作 |
|---|---|---|---|
|
|
订阅 ID 或 |
核对路径和请求体字段。 |
|
|
当前身份没有创建订阅的权限。 |
请求授予数据订阅创建权限。 |
|
|
订阅不存在或不属于当前工作区。 |
核对订阅 ID 和工作区。 |
|
|
已接受该订阅。 |
查询订阅列表,避免重复提交。 |
|
|
目标工作区已有同名订阅数据库。 |
更换 |
|
|
依赖服务暂不可用。 |
稍后重试。 |
|
|
服务端未能接受订阅。 |
稍后重试。 |
后续操作¶
使用 data.target_database_id 记录目标订阅数据库;再查询数据订阅列表确认订阅状态和名称。