---
orphan: true
---

# 查看系统数据库

```{raw} html
<div class="mo-api-page-show-toc" aria-hidden="true"></div>
```

查询系统数据库的只读导航树。

```text
POST https://moi.matrixorigin.cn/newmoi/catalog/system/tree
```

## 调用前准备

准备有目标工作区访问权限的个人访问令牌和工作区 ID。

## 请求体

:::::::{div} mo-api-tabs
::::::{tab-set}
:::::{tab-item} 请求示例

```bash
curl -X POST "https://moi.matrixorigin.cn/newmoi/catalog/system/tree" \
  -H "X-API-Key: $AI_STUDIO_API_KEY" \
  -H "X-Workspace-ID: $WORKSPACE_ID" \
  -H "Content-Type: application/json" \
  -d '{
    "include_table_leaves": false
  }'
```

:::::
:::::{tab-item} 参数说明

::::{tab-set}
:::{tab-item} 请求体

| 字段 | 类型 | 必填 | 说明 |
| --- | --- | --- | --- |
| `include_table_leaves` | boolean | 否 | 是否在树中包含表叶子节点。 |

:::
::::

:::::
::::::
:::::::

## 成功响应

成功时返回 `200` 和系统库树。

:::::::{div} mo-api-tabs mo-api-response-tabs
::::::{tab-set}
:::::{tab-item} 响应示例

```json
{
  "code": "OK",
  "msg": "OK",
  "data": {
    "tree": [
      {
        "type": "catalog",
        "name": "system",
        "node_list": []
      }
    ]
  }
}
```

:::::
:::::{tab-item} 字段说明

::::{tab-set}
:::{tab-item} 通用字段

| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `code` | string | 成功时为 `OK`。 |
| `msg` | string | 成功时为 `OK`。 |

:::
:::{tab-item} 系统目录

下面表格展开响应示例中 `data` 对象；每一行是该对象的一个字段。

| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `tree` | object（对象数组） | 系统库导航树。 |

:::
:::{tab-item} 目录节点

下面表格展开响应示例中 `data.tree` 数组的每一项；每一行是该数组项的一个字段。

| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `id` | string | 节点 ID。 |
| `type` | string | 节点类型：`catalog`、`database`、`volume` 或 `table`。 |
| `name` | string | 节点名称。 |
| `display_name` | string | 节点显示名称；有值时返回。 |
| `description` | string | 节点说明。 |
| `display_description` | string | 节点显示说明；有值时返回。 |
| `reserved` | boolean | 是否为保留节点。 |
| `is_pub` | boolean | 是否为发布节点；适用时返回。 |
| `is_sub` | boolean | 是否为订阅节点；适用时返回。 |
| `node_list` | object（对象数组） | 子节点，字段与父节点相同；可继续递归嵌套。 |
| `allowed_actions` | string（字符串数组） | 当前身份在该节点上允许的操作。 |
| `has_workflow_target_ref` | boolean | 是否被工作流作为目标引用；有值时返回。 |
| `trigger_binding` | object | 卷与工作流触发器的绑定信息；有值时返回。 |

:::
:::{tab-item} 工作流触发

下面表格展开响应示例中 `data.tree[].trigger_binding` 对象；每一行是该对象的一个字段。

| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `bound` | boolean | 是否存在触发器绑定。 |
| `trigger_id` | integer | 触发器 ID。 |
| `workflow_id` | string | 关联工作流 ID。 |
| `workflow_name` | string | 关联工作流名称。 |
| `workflow_version_id` | string | 关联工作流版本 ID。 |

:::
::::

:::::
::::::
:::::::

## 错误响应

:::::::{div} mo-api-tabs mo-api-response-tabs
::::::{tab-set}
:::::{tab-item} 响应示例

```json
{
  "code": "ErrServer",
  "msg": "服务器内部错误",
  "data": null
}
```

:::::
:::::{tab-item} 字段说明

| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `code` | string | 错误代码。 |
| `msg` | string | 错误信息。 |
| `data` | null | 错误响应中的附加数据；本示例为 `null`。 |

:::::
::::::
:::::::
