如何通过Cognos REST API实现模式加载调度自动化?
使用Cognos REST API自动化模式元数据加载调度
核心实现步骤
要将手动加载模式元数据的流程自动化,需通过Cognos REST API完成以下关键环节:
1. 身份验证
先获取会话令牌,发送POST请求到/api/v1/session,请求体携带认证信息:
{ "username": "你的用户名", "password": "你的密码", "namespace": "你的认证命名空间" }
响应返回的CAMNamespace和CAMWSSO Cookie需在后续所有请求中携带。
2. 定位目标模式
通过GET请求/api/v1/content,用过滤参数精准定位目标模式,示例请求路径:
/api/v1/content?filter=path eq '/content/folder[@name="数据服务器"]/dataServerConnection[@name="你的数据源连接"]/schema[@name="目标模式名称"]'
响应中提取模式的id字段,这是后续操作的核心标识。
3. 触发元数据加载
发送POST请求到/api/v1/schemas/{schemaId}/loadMetadata,替换{schemaId}为上一步获取的模式ID。请求体可配置加载选项:
{ "options": { "overwriteExisting": true, "includeSynonyms": true } }
添加wait=true查询参数可同步等待加载完成,否则任务会异步执行。
4. 配置定期调度(可选)
若需定期执行加载,可创建调度任务:
- 先发送
POST请求到/api/v1/schedules创建调度规则:
{ "name": "模式元数据加载调度", "scheduleType": "recurrence", "recurrence": { "frequency": "daily", "time": "02:00:00" } }
- 再发送
POST请求到/api/v1/tasks,创建关联调度的加载任务,指定任务类型为schemaLoadMetadata,并关联目标模式ID和调度ID。
关键注意事项
- 确保API操作账户拥有数据源连接编辑权限和元数据加载权限。
- 先在非生产环境验证流程,避免影响现有业务。
- 可通过
/api/v1/jobs接口查询加载任务的执行状态,确认任务结果。
内容的提问来源于stack exchange,提问作者malval
相关产品推荐
相关产品推荐

