开放接口更新主数据记录

路径 /industry/masterdata/record/write
版本号 1.0.2
协议 HTTPS
请求方法 POST
是否需要用户身份鉴权
超时时间 5000

请求参数

名称 类型 是否必选 示例值 描述
dataId Long 1234 元数据的id。dataId和metaDataName必须传一个
action String INSERT 表示当前操作的类型,目前支持的操作: INSERT/MODIFY/ARCHIVE。INSERT操作插入的数据默认就是已发布状态
nodes List 例如生产设备主数据有固定资产编号(asset_num)、简码(brevity_code)、所属设备型号(equipment_model)、使用状态(usable_condition)四个属性,要操作人员主数据记录的话,这个字段就传["asset_num", "brevity_code", "equipment_model","usable_condition"] 数据记录的字段名列表。对于INSERT/UPDATE操作,该字段必填;对于ARCHIVE,该字段会被后台忽略
data String 例如入职了一位名为张三、手机号为13112345678的员工,工号为20190923,如果nodes传的是["id", "name", "phone"], 那么用该字段表示为"[[20190923, \"张三\", \"13112345678\"]]" 改成 例如新采购了一台设备固定资产编号为EQ0000001、简码为NEQ、属于X品牌的冲压机(设备型号的编码为XP),状态为新建,如果nodes传的是["asset_num", "brevity_code", "equipment_model","usable_condition"], 那么用该字段表示为"[[\"EQ0000001\", \"NEQ\", \"XP\", 1]]"
condition List 例如人员主数据记录中有一个属性的为phone,查询某个特定手机号的人员信息,可以这么指定condition: "condition": {"col": "phone", "op": "EQUAL", "value": "XXXXX"} 更新操作的具体条件。该字段对INSERT操作无意义
op String 逻辑操作,目前支持的有, AND, OR, EQUAL, NOT_EQUAL, LESS_EQUAL, GREATER_EQUAL, LESS, GREATER, IN, NOT_IN, LIKE, NOT_LIKE, NOTNULL, ISNULL
col String 列名,逻辑操作的左值
value String 逻辑操作的右值。如果操作符op是EQUAL, NOT_EQUAL, LESS_EQUAL, GREATER_EQUAL, LESS, GREATER, LIKE, NOT_LIKE中的其中一个时,value是一个字符串,表示待比较的值;如果操作符op是IN, NOT_IN,value则是一个字符串列表,表示操作数的集合; 如果操作符op是AND/OR, value无效,这时候需要指定子级condition
condition List 查询的过滤条件
op String 逻辑操作,目前支持的有, AND, OR, EQUAL, NOT_EQUAL, LESS_EQUAL, GREATER_EQUAL, LESS, GREATER, IN, NOT_IN, LIKE, NOT_LIKE, NOTNULL, ISNULL
col String 列名,逻辑操作的左值
value String 逻辑操作的右值。如果操作符op是EQUAL, NOT_EQUAL, LESS_EQUAL, GREATER_EQUAL, LESS, GREATER, LIKE, NOT_LIKE中的其中一个时,value是一个字符串,表示待比较的值;如果操作符op是IN, NOT_IN,value则是一个字符串列表,表示操作数的集合; 如果操作符op是AND/OR, value无效,这时候需要指定子级condition
condition List 查询的过滤条件
op String 逻辑操作,目前支持的有, AND, OR, EQUAL, NOT_EQUAL, LESS_EQUAL, GREATER_EQUAL, LESS, GREATER, IN, NOT_IN, LIKE, NOT_LIKE, NOTNULL, ISNULL
col String 列名,逻辑操作的左值
value String 逻辑操作的右值。如果操作符op是EQUAL, NOT_EQUAL, LESS_EQUAL, GREATER_EQUAL, LESS, GREATER, LIKE, NOT_LIKE中的其中一个时,value是一个字符串,表示待比较的值;如果操作符op是IN, NOT_IN,value则是一个字符串列表,表示操作数的集合; 如果操作符op是AND/OR, value无效,这时候需要指定子级condition
source String SAAS 参数来源源,枚举值,钉钉填写DINGDING,多租户saas应用填SAAS,source、corpId、userId配合使用
corpId String 企业标识,每个企业拥有唯一的CorpID,比如钉钉corpID、LH里面的appId,用参数source来区分参数含义
userId String 员工在当前企业内的唯一标识,比如钉钉userId或者IoT的employeeId
metaDataName String 物料 元数据名称。dataId与metaDataName必须传一个

返回数据

名称 类型 示例值 描述
code Int

响应码, 200: 成功

message String

错误消息

localizedMsg String

本地语言错误消息

data JSON

响应结果,返回数据唯一键跟id的映射列表

code String

唯一键的标识

dapId Long

对应的主数据的id

dapRowVersion String

主数据的版本号,对于非多版本的主数据,可以忽略这个字段

示例

请求示例

// https://github.com/aliyun/iotx-api-gateway-client
IoTApiClientBuilderParams ioTApiClientBuilderParams = new IoTApiClientBuilderParams();

ioTApiClientBuilderParams.setAppKey("你的<AppKey>");
ioTApiClientBuilderParams.setAppSecret("你的<AppSecret>");

SyncApiClient syncApiClient = new SyncApiClient(ioTApiClientBuilderParams);

IoTApiRequest request = new IoTApiRequest();

// 设置请求ID
String uuid = UUID.randomUUID().toString();
String id = uuid.replace("-", "");
request.setId(id);
// 设置API版本号
request.setApiVer("1.0.2");

// 设置参数
request.putParam("dataId", "value0");
request.putParam("action", value1");
request.putParam("nodes", value2");
request.putParam("data", value3");
request.putParam("condition", value4");
request.putParam("source", value5");
request.putParam("corpId", value6");
request.putParam("userId", value7");
request.putParam("metaDataName", value8");
// 如果需要,设置headers
Map<String, String> headers = new HashMap<String, String>(8);
// headers.put("你的<header", "你的<value>");

// 设置请求参数域名, path, request, isHttps, headers
ApiResponse response = syncApiClient.postBody("api.link.aliyun.com", "/industry/masterdata/record/write", request, true, headers);

System.out.println(
    "response code = " + response.getCode()
        + " response = " + new String(response.getBody(), "UTF-8")
        + " headers = " + response.getHeaders().toString()
);

正常返回示例

JSON 格式

{
    "id": "4de2c367-c1db-417c-aa15-8c585e595d92",
    "code": 200,
    "message": null,
    "localizedMsg": null,
    "data": [{
        "code": "code",
        "dapId": 1
    }]
}

异常返回示例

JSON 格式

{
    "id": "37f7e5fa-d6a5-4efe-8abf-5bf23dca6284",
    "code": 403,
    "message": "request forbidden.",
    "localizedMsg": "请求被禁止",
    "data": null
}

错误码

HttpCode 错误码 错误信息 描述
500 500 Internal Error Internal Error
503 503 Service Unavailable Service Unavailable
403 403 Request Limited Request Limited
401 401 Empty Signature Empty Signature
400 400 Request Format Error Request Format Error
200 20003 Find Backend Error Find Backend Error
200 20004 Backend Service Error Backend Service Error
200 20055 Backend Service Invalid Request Format Error
200 20056 Hsf Invoke Timeout Hsf Invoke Timeout
200 401 Request Authorized Error Request Authorized Error
200 403 Request Forbidden Request Forbidden
200 500 Server Error Server Error
200 28800 The maximum number of resource that you can create is exceeded. 已达创建资源的上限。
200 28804 Duplicate name. 该名称已经存在,请重新命名。
200 460 request parameter error. 参数错误。
200 28805 Invalid name. 仅支持大小写英文字母、汉字、数字和空格。
200 28805 Invalid name. 仅支持字母、数字和汉字
200 403 request forbidden. 请求被禁止
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 403 request forbidden. 请求被禁止
200 403 request forbidden. 请求被禁止
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 403 request forbidden. 请求被禁止
200 500 server error. 系统错误
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 460 request parameter error. 请求参数错误
200 403 request forbidden. 请求被禁止
200 403 request forbidden. 请求被禁止
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 403 request forbidden. 请求被禁止
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 500 server error. 系统错误
200 403 request forbidden. 请求被禁止
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 403 request forbidden. 请求被禁止
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 403 request forbidden. 请求被禁止
200 460 request parameter error. 请求参数错误
200 403 request forbidden. 请求被禁止
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 1009 SQL invoke error SQL 执行出错
200 403 request forbidden. 请求被禁止
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 500 sever error. 系统错误
200 460 request parameter error. 请求参数错误
200 403 request forbidden. 请求被禁止
200 403 request forbidden. 请求被禁止
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 403 request forbidden. 请求被禁止
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 460 request parameter error. 请求参数错误
200 403 request forbidden. 请求被禁止
200 500 server error. 系统错误
200 403 request forbidden. 请求被禁止
200 500 server error. 系统错误
200 460 request parameter error. 请求参数错误
200 500 sever error. 系统错误
200 460 request parameter error. 请求参数错误
200 403 request forbidden. 请求被禁止
200 460 request parameter error. 请求参数错误
200 500 server error. 系统错误
200 403 request forbidden. 请求被禁止
200 403 request forbidden. 请求被禁止
200 500 server error. 系统错误
200 460 request parameter error. 请求参数错误
200 107520 alarm id is not exist 报警id不存在
200 107521 alarm title should not be empty 报警title不允许为空
200 107522 alarm content should not be empty 报警内容不允许为空
200 107523 alarm level error 报警级别错误,只能为0,1,2
200 107524 rule bind alarm definition fail 规则关联报警定义失败
200 107525 alarm receiver type error 报警接收范围的类型错误,只能为role/organization/user
200 107520 alarm id is not exist 报警id不存在
200 107521 alarm title should not be empty 报警title不允许为空
200 107522 alarm content should not be empty 报警内容不允许为空
200 107523 alarm level error 报警级别错误,只能为0,1,2
200 107524 rule bind alarm definition fail 规则关联报警定义失败
200 107525 alarm receiver type error 报警接收范围的类型错误,只能为role/organization/user
200 403 request forbidden. 请求没有权限
200 403 request forbidden. 请求没有权限
200 403 request forbidden. 请求没有权限
200 107313 the user is not exist 人员不存在或已删除
200 460 request parameter error. 请求参数错误
200 102126 tenant not fund 租户没有查到