
# 创建结构化文档 - CreateDocument
#### 功能介绍
本接口用于在指定数据模型下创建结构化文档。结构化文档是工业数据管理中用于承载设计说明书、工艺卡片、BOM清单等工业文档的载体，支持目录（directory）、Page文档（pageDocument）、Board文档（boardDocument）、Mind文档（mindDocument）、Draw文档（drawDocument）等多种文档类型。
- 创建结构化文档时，需指定文档标题和文档类型。
  
- 如需将文档关联到具体的数据模型实例，可通过instance_id参数指定实例ID。
  
- 如需将文档挂载到指定目录下，可通过parent_document_id参数指定父文档ID。
  
 
#### 接口约束
目标数据模型已在应用设计态配置了"结构化文档管理"功能。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/iDMEClassicAPI/doc?api=CreateDocument)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-idme/idme_api_0017.html)。
#### URI
POST /rdm_{identifier}_app/publicservices/api/{modelName}/structured-doc/documents
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
|:---|:---|:---|:---|
| identifier | 是    | String | **参数解释：** 应用的唯一标识。 - 于2023年06月01日之前创建的应用，其唯一标识为该应用的名称。   - 于2023年06月01日之后创建的应用，其唯一标识为该应用的ID。    获取方法请参见[获取运行服务清单 - ListEnvs](https://support.huaweicloud.com/api-idme/ListApps.html)。 **约束限制：** 不涉及。 **取值范围：** - 于2023年06月01日之前创建的应用：由英文字母和数字组成，长度为1-36个字符。   - 于2023年06月01日之后创建的应用：由英文字母和数字组成，且长度为32个字符。    **默认取值：** 不涉及。 |
| modelName  | 是    | String | **参数解释：** 数据模型的英文名称。 **约束限制：** 不涉及。 **取值范围：** 以大写字母开头，只能包含字母、数字、"_"，且长度为1-60个字符。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释：** IAM用户的token。 获取方法请参见[获取IAM用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
表3请求Body参数 
| 参数            | 是否必选 | 参数类型                                                                                 | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
|:---|:---|:---|:---|
| applicationId | 否    | String                                                                               | **参数解释：** 应用ID，用于指定实例所属的应用。 当URL路径中已能明确应用上下文时，此参数可不传。 获取方法请参见[获取租户下的应用清单 - ListApps](https://support.huaweicloud.com/api-idme/ListApps.html)。 **约束限制：** 不涉及。 **取值范围：** - 于2023年06月01日之前创建的应用：由英文字母和数字组成，长度为1-36个字符。   - 于2023年06月01日之后创建的应用：由英文字母和数字组成，且长度为32个字符。    **默认取值：** 不涉及。 |
| params        | 是    | [StructuredDocInfo] object | **参数解释：** 结构化文档信息对象，包含文档的基本属性信息。 **约束限制：** 不涉及。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
   
 表4StructuredDocInfo 
| 参数                 | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| id                 | 否    | String | **参数解释：** 文档ID，用于指定自定义文档唯一标识。 若不指定，系统会自动生成。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| document_id        | 否    | String | **参数解释：** KooPage文档ID，用于关联已有的KooPage文档。 若创建新文档，可不指定。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| title              | 否    | String | **参数解释：** 文档标题，用于标识结构化文档的名称。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| type               | 否    | String | **参数解释：** 文档类型，指定结构化文档的类型。 **约束限制：** 不涉及。 **取值范围：** - directory：目录，用于组织和管理文档层级结构。   - pageDocument：Page文档，适用于富文本编辑场景，如设计说明书、技术文档等。   - boardDocument：Board文档，适用于白板协作场景，如工艺评审、方案讨论等。   - mindDocument：Mind文档，适用于思维导图场景，如产品结构分析、流程梳理等。   - drawDocument：Draw文档，适用于绘图场景，如工艺流程图、设备布局图等。    **默认取值：** 不涉及。 |
| template_id        | 否    | String | **参数解释：** 模板ID，用于指定文档创建时所使用的模板。 若指定模板，创建的文档将继承模板的格式和内容。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| organization_id    | 否    | String | **参数解释：** 团队ID，用于指定文档所属的团队组织。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| wiki_id            | 否    | String | **参数解释：** 知识库ID，用于指定文档所属的知识库。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| parent_document_id | 否    | String | **参数解释：** 父文档ID，用于指定文档的父级目录。 若指定，创建的文档将作为该父文档的子文档。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| instance_id        | 否    | String | **参数解释：** 实例ID，用于将结构化文档关联到指定的数据模型实例。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| model_name         | 否    | String | **参数解释：** 模型名称，用于指定文档关联的数据模型名称。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| create_user_id     | 否    | String | **参数解释：** 创建者ID，用于指定文档的创建者。 若不指定，默认使用当前调用者ID。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 当前调用者ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| modifier           | 否    | String | **参数解释：** 更新者账号，用于指定文档的最后更新者信息。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
   
#### 响应参数
**状态码：200**
表5响应Body参数 
| 参数     | 参数类型                                                                                            | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
|:---|:---|:---|
| result | String                                                                                          | **参数解释：** 请求处理结果状态。 **取值范围：** - SUCCESS：请求成功。   - FAIL：请求失败。    |
| data   | Array of [StructuredDocView] objects | **参数解释：** 请求数据，包含创建成功的结构化文档信息。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                       |
| errors | Array of strings                                                                                | **参数解释：** 异常信息列表。当result为FAIL时，返回具体的错误描述，包含失败原因及建议处理方式。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                              |
   
 表6StructuredDocView 
| 参数                 | 参数类型                                                                                            | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|
| creator            | String                                                                                          | **参数解释：** 创建者账号，标识创建该文档的用户。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| createTime         | String                                                                                          | **参数解释：** 创建时间。使用UTC+0时间格式，格式为yyyy-MM-ddTHH:mm:ss.SSSZ。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| lastUpdateTime     | String                                                                                          | **参数解释：** 最后更新时间。使用UTC+0时间格式，格式为yyyy-MM-ddTHH:mm:ss.SSSZ。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| rdmVersion         | Integer                                                                                         | **参数解释：** 系统版本号，用于数据版本控制。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| rdmDeleteFlag      | Integer                                                                                         | **参数解释：** 软删除标识。 **取值范围：** - 0：表示未删除。   - 1：表示已删除。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| rdmExtensionType   | String                                                                                          | **参数解释：** 扩展类型，标识对象的扩展类别。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| tenant             | [TenantViewDTO] object                   | **参数解释：** 租户信息，包含文档所属租户的详细信息。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| className          | String                                                                                          | **参数解释：** 类名，标识对象的Java类名称。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| clazz              | String                                                                                          | **参数解释：** 类名，标识对象的类类型。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| id                 | String                                                                                          | **参数解释：** 唯一标识，系统生成的文档主键ID。 **取值范围：** -9223372036854775808到9223372036854775807的整数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| document_id        | String                                                                                          | **参数解释：** KooPage文档ID，系统生成的KooPage文档唯一标识。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| title              | String                                                                                          | **参数解释：** 文档标题。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| type               | String                                                                                          | **参数解释：** 文档类型。 **取值范围：** - directory：目录。   - pageDocument：Page文档。   - boardDocument：Board文档。   - mindDocument：Mind文档。   - drawDocument：Draw文档。    |
| template_id        | String                                                                                          | **参数解释：** 模板ID。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| organization_id    | String                                                                                          | **参数解释：** 团队ID。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| wiki_id            | String                                                                                          | **参数解释：** 知识库ID。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| parent_document_id | String                                                                                          | **参数解释：** 父文档ID。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| instance           | [ObjectReferenceViewDTO] object | **参数解释：** 实体实例，标识文档关联的数据模型实例信息。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| model_name         | String                                                                                          | **参数解释：** 模型名称，标识文档关联的数据模型名称。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| create_user_id     | String                                                                                          | **参数解释：** 创建者ID，标识创建该文档的用户ID。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| modifier           | String                                                                                          | **参数解释：** 更新者账号，标识最后更新该文档的用户。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
   
 表7TenantViewDTO 
| 参数               | 参数类型                                                                          | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|
| className        | String                                                                        | **参数解释：** 租户对象的类名。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| code             | String                                                                        | **参数解释：** 租户编码，用于多租户场景下的租户唯一标识。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| createTime       | String                                                                        | **参数解释：** 租户对象的创建时间。使用UTC+0时间格式，格式为yyyy-MM-ddTHH:mm:ss.SSSZ。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| creator          | String                                                                        | **参数解释：** 租户对象的创建者账号。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| dataSource       | String                                                                        | **参数解释：** 租户使用的数据源名称，用于多租户数据隔离。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| description      | String                                                                        | **参数解释：** 租户描述信息。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| disableFlag      | Boolean                                                                       | **参数解释：** 租户失效标识，用于标识租户是否已失效。 **取值范围：** - true：失效。   - false：未失效（默认）。                                                                                                                                                                                                                                                                                                                                                                                    |
| id               | String                                                                        | **参数解释：** 租户的唯一标识。 **取值范围：** -9223372036854775808到9223372036854775807的整数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| kiaguid          | String                                                                        | **参数解释：** 租户KIA密级。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| lastUpdateTime   | String                                                                        | **参数解释：** 租户的最后更新时间。使用UTC+0时间格式，格式为yyyy-MM-ddTHH:mm:ss.SSSZ。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| modifier         | String                                                                        | **参数解释：** 租户的更新者账号。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| name             | String                                                                        | **参数解释：** 租户中文名称。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| nameEn           | String                                                                        | **参数解释：** 租户英文名称。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| rdmDeleteFlag    | Integer                                                                       | **参数解释：** 软删除标识。 **取值范围：** - 0：表示未删除。   - 1：表示已删除。                                                                                                                                                                                                                                                                                                                                                                                                       |
| rdmExtensionType | String                                                                        | **参数解释：** 租户扩展类型。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| rdmVersion       | Integer                                                                       | **参数解释：** 租户对象的系统版本号。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| securityLevel    | String                                                                        | **参数解释：** 租户安全密级，用于标识租户信息的安全等级。 **取值范围：** - internal：内部公开。   - secret：秘密。   - confidential：机密。   - top_secret：绝密。    |
| tenant           | [TenantViewDTO] object | **参数解释：** 租户信息，表示当前租户的父租户信息。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
   
 表8ObjectReferenceViewDTO 
| 参数    | 参数类型   | 描述                                                                          |
|:---|:---|:---|
| id    | String | **参数解释：** 唯一标识，标识关联实例的主键ID。 |
| clazz | String | **参数解释：** 类名，标识关联实例的类类型。    |
   
#### 请求示例
**示例：创建关联实例的结构化Page文档**
创建标题为myTitle、类型为pageDocument的结构化文档，关联实例ID为1。
```
POST https://dme.cn-north-4.huaweicloud.com/rdm_04219627d6794f37ae26e8aba250415d_app/publicservices/api/StructuredDocableModel/structured-doc/documents
{
  "params" : {
    "title" : "myTitle",
    "type" : "pageDocument",
    "instance_id" : "1",
    "document_id" : "1",
    "id" : "1"
  }
}
```
#### 响应示例
**状态码：200**
OK，表示请求成功。
```
{
  "result": "SUCCESS",
  "data": [
    {
      "creator": "XDM_Developer 93172bbfd0f64437956d4c9de9345386",
      "createTime": 2025-01-15T07:25:51.668+0000,
      "lastUpdateTime": 2025-01-15T07:25:51.668+0000,
      "rdmVersion": 1,
      "rdmDeleteFlag": 0,
      "rdmExtensionType": "StructuredDoc",
      "tenant": {
        "id": "-1",
        "creator": "xdmAdmin",
        "modifier": "xdmAdmin",
        "createTime": 2024-11-13T08:27:59.903+0000,
        "lastUpdateTime": 2024-11-13T08:27:59.903+0000,
        "rdmVersion": 1,
        "rdmDeleteFlag": 0,
        "rdmExtensionType": "Tenant",
        "tenant": null,
        "className": "Tenant",
        "name": "basicTenant",
        "description": "默认租户",
        "kiaguid": null,
        "securityLevel": "internal",
        "nameEn": null,
        "code": "basicTenant",
        "disableFlag": false,
        "dataSource": "DefaultDataSource"
      },
      "className": "StructuredDoc",
      "clazz": "StructuredDoc",
      "id": "721022465261703168",
      "document_id": "d24cad08-c0b2-449d-9dce-924392b67bf8",
      "title": "myTitle",
      "type": "pageDocument",
      "template_id": null,
      "organization_id": "65cd6c5df4c84bdeb50dbfc7136cab7c",
      "wiki_id": "a962e2d821c44bfdb65d33aa429c930uatwiki",
      "parent_document_id": "a962e2d821c44bfdb65d33aa429c930uatwiki",
      "instance_id": "1",
      "model_name": "StructuredDocableModel",
      "create_user_id": "93172bbfd0f64437956d4c9de9345386",
      "modifier": "XDM_Developer 93172bbfd0f64437956d4c9de9345386"
    }
  ],
  "errors": []
}
```
#### 状态码
| 状态码 | 描述         |
|:---|:---|
| 200 | OK，表示请求成功。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-idme/APIE-XDM-Runtime-ErrorCode.html)。
