# 解析画板语法

用户可以将PlantUml/Mermaid图表导入画板进行协同编辑

## 请求

基本 | &nbsp;
---|---
HTTP URL | https://open.feishu.cn/open-apis/board/v1/whiteboards/:whiteboard_id/nodes/plantuml
HTTP Method | POST
接口频率限制 | [5 次/秒](https://open.feishu.cn/document/ukTMukTMukTM/uUzN04SN3QjL1cDN)
支持的应用类型 | Custom App、Store App
权限要求<br>**调用该 API 所需的权限。开启其中任意一项权限即可调用** | 创建画板节点(board:whiteboard:node:create)

### 请求头

名称 | 类型 | 必填 | 描述
---|---|---|---
Authorization | string | 是 | `tenant_access_token`<br>或<br>`user_access_token`<br>**值格式**："Bearer `access_token`"<br>**示例值**："Bearer u-7f1bcd13fc57d46bac21793a18e560"<br>[了解更多：如何选择与获取 access token](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-choose-which-type-of-token-to-use)
Content-Type | string | 是 | **固定值**："application/json; charset=utf-8"

### 路径参数

名称 | 类型 | 描述
---|---|---
whiteboard_id | string | 画板唯一标识，可通过云文档下的文档接口 [获取文档所有块](https://open.feishu.cn/document/ukTMukTMukTM/uUDN04SN0QjL1QDN/document-docx/docx-v1/document-block/list) 获取，`block_type` 为 43 的 block 即为画板，对应的 <code>block.token</code> 就是画板的<code>whiteboard_id</code><br>**示例值**："VF5Bwo7Z5icC0bk8EWbb57Vbckh"<br>**数据校验规则**：<br>- 长度范围：`22` ～ `27` 字符

### 请求体

名称 | 类型 | 必填 | 描述
---|---|---|---
plant_uml_code | string | 是 | plant uml 代码<br>**示例值**："@startuml\nAlice -> Bob: Authentication Request\nBob --> Alice: Authentication Response\n@enduml"<br>**数据校验规则**：<br>- 长度范围：`1` ～ `1000000` 字符
style_type | int | 否 | 画板样式（默认为2 经典样式）<br>**示例值**：1<br>**可选值有**：<br>- 1：画板样式（解析之后为多个画板节点，粘贴到画板中，不可对语法进行二次编辑）<br>- 2：经典样式（解析之后为一张图片，粘贴到画板中，可对语法进行二次编辑）（只有PlantUml语法支持经典样式）
syntax_type | int | 否 | 语法类型（必传）<br>**示例值**：1<br>**可选值有**：<br>- 0：未知<br>- 1：Plantuml解析<br>- 2：Mermaid解析
diagram_type | int | 否 | PlantUml语法类型（传0会自动识别语法类型，plantUML语法补充超集GML不可自动识别）<br>当syntax_type为2（Mermaid解析）时，diagram_type传 0， 默认为 0<br>**示例值**：0<br>**可选值有**：<br>- 0：未知<br>- 1：思维导图<br>- 2：时序图<br>- 3：活动图<br>- 4：类图<br>- 5：ER<br>- 6：流程图<br>- 7：用例图<br>- 8：组件图<br>- 101：ai流式生成流程图<br>- 102：ai流式生成时序图<br>- 201：plantUML语法补充超集GML

### 请求体示例
```json
{
    "plant_uml_code": "@startuml\nAlice -> Bob: Authentication Request\nBob --> Alice: Authentication Response\n@enduml",
    "style_type": 1,
    "syntax_type": 1,
    "diagram_type": 0
}
```

## 响应

### 响应体

名称 | 类型 | 描述
---|---|---
code | int | 错误码，非 0 表示失败
msg | string | 错误描述
data | \- | \-
node_id | string | 创建生成的plant uml节点id

### 响应体示例
```json
{
    "code": 0,
    "msg": "success",
    "data": {
        "node_id": "t1:1"
    }
}
```

### 错误码

HTTP状态码 | 错误码 | 描述 | 排查建议
---|---|---|---
400 | 2890001 | invalid format | 参数格式不正确。请检查传入的参数格式，如 json 字符串是否正确
400 | 2890002 | invalid arg | 参数无效。请检查传入的参数是否有效，如 whiteboard_id 是否正确
400 | 2890003 | record missing | 找不到记录。`whiteboard_id` 不存在，确认 whiteboard_id 正确性，可通过云文档下的文档接口[获取文档所有块](https://open.feishu.cn/document/ukTMukTMukTM/uUDN04SN0QjL1QDN/document-docx/docx-v1/document-block/list)获取正确的`whiteboard_id`
401 | 2890004 | auth failed | 认证失败。请检查 Authorization 参数
403 | 2890005 | forbidden | 请求身份没有当前画板的阅读权限。请参考[云文档常见问题 3](https://open.feishu.cn/document/ukTMukTMukTM/uczNzUjL3czM14yN3MTN#78a03ee2)开通权限
429 | 2890006 | too many request | 请求超过接口频率限流值。请稍后再试
500 | 2891001 | server internal error | 服务运行错误。请重试或联系[技术支持](https://applink.feishu.cn/TLJpeNdW)

