通过 API 访问数据库导入导出功能
通过 API 访问数据库导入和导出功能¶
简介¶
| STATUS | SWAGGER | |
| ACTIVE | - |
|
| FORMAT | ROOT ENDPOINT | |
| REST/OpenAPI | <api root>/admintools/ |
CCH Tagetik CCH Tagetik 支持通过根据 OData v.4.0 标准开发的 API(RESTful API)运行数据库导入和导出功能。
使用此查询模式需要满足某些条件。
访问条件¶
要使用这些特定的 API,用户必须经过身份验证(Basic Auth、OAuth2)。
还必须在存储库中启用 API。对于反向代理,还需要进行其他设置。它们可用于 http 和 https 两种协议。
有关身份验证和启用的更多详细信息,请参阅 REST API Overview。
用于运行导出的 API¶
方法¶
POST
URL¶
http://server:port/tagetikcpm/api/admintools/export/v1/database_id
参数¶
database_id = 要导出的数据库的 ID
注意:要导出存储库,database_id = REPOSITORY
属性¶
在请求正文中,可以包含以下 JSON 格式的属性:
zipMaxSize = 要生成的文件的以 MB 为单位的最大大小(默认值 = 2048)
例如:{ "zipMaxSize":"2048" }
返回数据¶
响应以 JSON 格式返回以下 ID:
dataprocessingId = 数据处理 ID。
例如:{ "dataprocessingId":"FF8081817A4264E5017A42D08E3C21EB" }
用于检查导出状态的 API¶
方法¶
GET
URL¶
http://server:port/tagetikcpm/api/admintools/export/v1/dataprocessingId
返回数据¶
响应以 JSON 格式返回数据处理状态:
status:RUNNING/FAILED/COMPLETED
| 状态 | 描述 |
|---|---|
| RUNNING | 运行中 |
| FAILED | 失败 |
| COMPLETED | 成功完成 |
例如:{"requestDateTime": "2021-06-25T10:56:42.850+0000", "status": "COMPLETED"}
impexp.zipFiles.produced:生成的文件的名称
例如:{"requestDateTime": "2021-06-25T10:56:42.850+0000", "status": "COMPLETED", "parameters": {"impexp.zipFiles.produced": "tcpm_USER_DB_xxx_part_1_of_1.zip"}}
用于停止导出的 API¶
方法¶
DELETE
URL¶
http://server:port/tagetikcpm/api/admintools/export/v1/dataprocessingId
返回数据¶
响应以 JSON 格式返回以下 ID:
message = Stop on dataprocessingOid dataprocessingId" / "Notify on dataprocessingOid dataprocessingId"
| 消息 | 描述 |
|---|---|
| Stop on dataprocessingOid | 数据处理已停止 |
| Notify on dataprocessingOid | 数据处理进行中 |
例如:{"message": "Stop on dataprocessingOid FF8081817A4264E5017A42D08E3C21EB"}
用于运行导入的 API¶
方法¶
POST
URL¶
http://server:port/tagetikcpm/api/admintools/import/v1/database_id
参数¶
database_id = 要将数据导出到的数据库的 ID
注意:要导入存储库,database_id = REPOSITORY
属性¶
在请求正文中,可以包含以下 JSON 格式的属性:
| 属性 | 描述 | 选项 |
|---|---|---|
| filename | 必填。要导入的文件。 | 可以指定: - 单个文件名 - 文件名列表(分隔符 = ;) - 所有扩展名为 .zip 的文件(filename = *) |
| endpoint | 当文件位于远程目录时要使用的端点。请参阅端点页面。 | - |
| dir | 文件所在的目录 | 如果指定了端点,则允许基于端点根目录指定子目录。如果未指定端点,则允许指定: - 空字段 = 设置为 CCH Tagetik 可写文件夹的目录 - 相对路径 = 可写文件夹的子目录 - 绝对路径 = 通用目录 |
| emptyDb | 指示在导入之前是否必须完全删除目标数据库中的数据。 | true/false(默认值 = false) |
| deletePartitions | 指示是否要删除所有现有的 AIH 分区(前缀为 AW_ 的表)。如果目标数据库是存储库,则不应使用。 | true/false(默认值 = true) |
注意: filename 参数可以使用动态:多文件语法。在这种情况下,由于要处理的文件是 ZIP 归档,该语法不会评估归档的内容,而只会将 ZIP 文件本身作为实体进行评估
示例¶
{ "filename":"export.awex", "endpoint":"", "dir":"","emptyDb":"false","deletePartitions":"true"} - 从可写文件夹导入 "export.awex" 文件
{ "filename":"export.awex", "endpoint":"", "dir":"tmp","emptyDb":"false","deletePartitions":"true"} - 从可写文件夹的 "tmp" 子目录导入 "export.awex" 文件
{ "filename":"export.awex", "endpoint":"", "dir":"C:\impexp","emptyDb":"false","deletePartitions":"true"} - 从 "C:\impexp" 目录导入 "export.awex" 文件
{ "filename":"export.awex", "endpoint":"SFTP", "dir":"","emptyDb":"false","deletePartitions":"true"} - 通过 SFTP 端点导入 "export.awex" 文件
{ "filename":"export.awex", "endpoint":"SFTP", "dir":"tmp","emptyDb":"false","deletePartitions":"true"} - 导入位于 SFTP 端点 "tmp" 子目录中的 "export.awex" 文件
{ "filename":"export_1_of_2.awex;export_2_of_2.awex", "endpoint":"SFTP", "dir":"","emptyDb":"false","deletePartitions":"true"} - 导入位于 SFTP 端点上的 "export_1_of_2.awex" 和 "export_2_of_2.awex" 文件
{ "filename":"*", "endpoint":"SFTP", "dir":"","emptyDb":"false","deletePartitions":"true"} - 导入位于 SFTP 端点上的所有扩展名为 ".awex" 的文件
返回数据¶
响应以 JSON 格式返回以下 ID:
dataprocessingId = 数据处理 ID。
例如:{ "dataprocessingId":"FF8081817A4264E5017A42D08E3C21EB" }
用于检查导入状态的 API¶
方法¶
GET
URL¶
http://server:port/tagetikcpm/api/admintools/import/v1/dataprocessingId
返回数据¶
响应以 JSON 格式返回数据处理状态:
status:RUNNING/FAILED/COMPLETED
| 状态 | 描述 |
|---|---|
| RUNNING | 运行中 |
| FAILED | 失败 |
| COMPLETED | 成功完成 |
例如:{"requestDateTime": "2021-06-25T10:56:42.850+0000", "status": "COMPLETED"}
用于停止导入的 API¶
方法¶
DELETE
URL¶
http://server:port/tagetikcpm/api/admintools/import/v1/dataprocessingId
返回数据¶
响应以 JSON 格式返回以下 ID:
message = Stop on dataprocessingOid dataprocessingId" / "Notify on dataprocessingOid dataprocessingId"
| 消息 | 描述 |
|---|---|
| Stop on dataprocessingOid | 数据处理已停止 |
| Notify on dataprocessingOid | 数据处理进行中 |
例如:{"message": "Stop on dataprocessingOid FF8081817A4264E5017A42D08E3C21EB"}