如何通过REST API编辑IBM Cognos维度元素的属性
IBM Cognos REST API 修改维度元素属性操作指南
前置条件
- 已经通过创建接口拿到了待修改维度元素的唯一ID(
elementId)以及所属维度/层级的ID - 当前调用账号拥有该维度的编辑权限
- 已经获取到有效API会话凭证,请求头内携带合规的认证信息(通常是
Authorization: Bearer <你的token>,部分版本用CAMNamespace头指定命名空间)
核心操作步骤
1. 构造请求路径
通用请求格式如下,替换尖括号内的实际参数,适配11.0+版本Cognos:PUT /api/v1/dimensions/<dimensionId>/hierarchies/<hierarchyId>/elements/<elementId>
部分旧版本TM1 REST API使用POST请求带@action=edit参数,可根据你使用的版本调整
2. 构造请求体
仅需要传入你要修改的属性字段即可,不需要携带全量属性,示例请求体结构:
{ "Name": "修改后的元素名称", "Type": "Numeric", "Attributes": { "Description": "修改后的元素描述", "SortOrder": 2, "IsActive": true } }
注意:
Type可选值为String/Numeric/Consolidated,和创建时取值规则一致;如果要修改的是自定义属性,需要确认该属性已经提前在维度的属性定义中创建,否则请求会返回400错误。
3. 结果校验
- 请求成功会返回200状态码,响应体是修改后的全量维度元素信息,可以直接核对修改字段是否生效
- 返回403则检查账号权限是否足够
- 返回404则确认
dimensionId、elementId是否正确,元素是否真实存在 - 返回422则检查请求体格式是否符合要求,属性字段是否存在非法取值
批量修改说明
如果需要同时修改多个元素属性,可以调用批量接口:POST /api/v1/dimensions/<dimensionId>/hierarchies/<hierarchyId>/elements/$batch,请求体按数组格式传入多个元素的修改内容即可,最高单次支持1000条修改请求。
内容的提问来源于stack exchange,提问作者Nednedned
相关产品推荐
相关产品推荐

