DAM 开发者指南 API 与二次开发
本章面向负责系统集成、企业流程接入、服务扩展、Parser 插件和统计应用的开发人员。REST API 用于跨系统调用,SDK 二次开发用于在产品服务内增加 Controller、Service、DAO 和前端扩展,Parser 插件用于把新的作业文件转换成标准血缘。三种方式可以组合,但交付边界必须清楚。
先选择开发方式
| 需求 | 推荐方式 | 入口 |
|---|---|---|
| 门户查询元数据、标准、质量、资产和血缘 | REST API | API 总览 |
| 把 DAM 发布审批接入企业流程 | REST API + 扩展服务 | 审批工作流集成 |
| 修改产品服务返回、增加业务属性或增加服务接口 | 微服务 SDK | 微服务 SDK 分层 |
| 在页面增加入口、表单或产品扩展视图 | 前端扩展 | 前端扩展 |
| 采集新的作业格式 | SQLink Parser | Parser 插件 |
| 建设治理运营 Dashboard | 报表模型与统计 SQL | 数据治理报表定制开发 |
SDK 开发需要获得厂商授权、对应版本 SDK 和培训支持。REST API 集成不要求使用 Java,但仍需完成目标环境的权限、版本和契约验收。
API 服务地址
所有示例使用部署无关的 Base 变量。不要把某个环境的域名、IP 或登录会话写进代码。
| 变量 | Base 地址 | 主要对象 |
|---|---|---|
BASE_BASE_URL | https://<host>/base | 应用系统、标签和基础任务 |
METADATA_BASE_URL | https://<host>/metadata | 数据源、表字段、报表和元模型 |
DOMAIN_BASE_URL | https://<host>/domain | 数据标准、码值和指标 |
QUALITY_BASE_URL | https://<host>/quality | 质量规则、问题和执行 |
ASSETS_BASE_URL | https://<host>/assets | 资产目录和资产详情 |
DATASECURITY_BASE_URL | https://<host>/datasecurity | 分类分级和安全资产 |
SQLINK_BASE_URL | https://<host>/sqlink | Parser、血缘和影响分析 |
GRAPH_BASE_URL | https://<host>/graph | 跨对象关系和资产上下文 |
JOB_BASE_URL | https://<host>/job | 通用任务实例和运行记录 |
USER_BASE_URL | https://<host>/user | 用户、Token 和组织 |
认证、Token 管理、分页、错误处理和版本升级规则见认证与请求约定。接口按业务对象的完整路径调用,例如:
bash
curl --fail-with-body --request POST \
--header "Authorization: Bearer $DAM_TOKEN" \
--header 'Content-Type: application/json' \
--data '{"currentPage":1,"pageSize":20,"keyword":"customer"}' \
"$METADATA_BASE_URL/entities/searchMetadata"实际认证头由部署的统一认证网关确认;Token 只能从密钥管理系统注入,不能写入仓库、日志或截图。
推荐阅读路径
| 目标 | 页面 |
|---|---|
| 复用产品服务并覆盖业务逻辑 | 微服务 SDK 分层 |
| 接入企业审批平台 | 审批工作流集成 |
| 开发 SQLink 血缘 Parser | 血缘 Parser 插件 |
| 建立治理运营报表 | 数据治理报表定制开发 |
交付原则
- 先确认目标版本、服务边界、授权范围和升级窗口,再设计扩展点。
- 把企业特有逻辑放在扩展模块、适配器或插件中,产品 Bean 只通过受支持的覆盖机制替换。
- 对写入、审批、任务启动和解析结果建立审计日志、幂等键和回滚方案。
- 用真实业务样本做契约测试,并在每次 9.2 等版本升级前回归接口、Bean、插件和统计 SQL。
- 持久层遵守兼容边界:产品表和产品 Repository 由产品维护,扩展属性使用独立表和业务主键关联。
开发交付清单
| 阶段 | 必须产出 |
|---|---|
| 设计 | 目标版本、调用服务、权限矩阵、对象主键映射、幂等策略 |
| 开发 | 扩展模块、配置模板、数据库迁移脚本、API/Parser 契约测试 |
| 联调 | 正常、无权限、重复请求、超时、升级后回归样本 |
| 发布 | 构建版本、依赖清单、部署顺序、回滚包、操作手册 |
