华为云用户手册

  • 新增后端服务器集群 参考创建监听,进入创建后端服务器集群页面。 在创建后端服务器集群页面,单击“新增集群”,配置相关参数,参数说明如表1所示。 表1 新增集群参数说明 参数 说明 集群名称 后端服务器集群名称。 字符长度0~150,可以由字母、数字、下划线、短横线、点组成,不能包含特殊字符,不能包含-in-字符,后端服务器为tomcat时,建议不要包含下划线,转发可能返回400,例:Cluster_home-001。 后端协议 后端服务器协议,支持HTTP、HTTPS。 负载均衡策略 加权轮询算法:可配权重,根据权重进行轮询,默认权重相同。 自定义参数哈希:可以配置nginx变量进行哈希,nginx变量,例如:$http_x_forwarded_for。 IP哈希:根据发送给SLB请求的IP进行哈希。 说明: 如前面有ELB或者F5,此IP通常为ELB的IP或者F5的IP,因此请慎用。 最小连接数:根据服务器的连接数,向连接数最少的服务器优先转发。 预热周期 配置新节点启动后在多长时间范围内进行预热,范围0-30,0表示不开启预热。 预热因子 配置预热增长速率,值越大预热增长速率越快,范围1-100,默认为10,表示匀速增长。 预热延迟 新节点启动后延迟多长时间才进行预热,范围0-30,延迟时间中,节点被选中的概率为0。 自定义参数配置 配置自定义参数。 自定义参数哈希 负载均衡策略选择为“自定义参数哈希”时,配置此参数。 字符长度0~50,以$符开头,可以由字母、数字、点、下划线、短横线组成,不能包含其他特殊字符,例:$http_x_forwarded_for。 单击“确定”。
  • 请求示例 使用ID为100000的模板创建名为myjob的Flink SQL作业,该作业执行在testQueue队列上以独享的模式运行。 { "name": "myjob", "desc": "这是个做字符记数的作业", "template_id": 100000, "queue_name": "testQueue", "sql_body": "select * from source_table", "run_mode": "exclusive_cluster", "cu_number": 2, "parallel_number": 1, "checkpoint_enabled": false, "checkpoint_mode": "exactly_once", "checkpoint_interval": 0, "obs_bucket": "my_obs_bucket", "log_enabled": false, "restart_when_exception": false, "idle_state_retention": 3600, "job_type": "flink_sql_job", "dirty_data_strategy": "0", "udf_jar_url": "group/test.jar" }
  • 响应消息 表4 响应参数说明 参数名称 是否必选 参数类型 说明 is_success 否 String 执行请求是否成功。“true”表示请求执行成功。 message 否 String 消息内容。 job 否 Object 作业状态信息。具体请参考表5。 表5 job参数说明 参数名称 是否必选 参数类型 说明 job_id 是 Long 作业ID。 status_name 否 String 当前状态名称。参数说明可以参考查询作业详情中status作业状态字段说明。 status_desc 否 String 当前状态描述。包含异常状态原因及建议。
  • 请求消息 表2 请求参数说明 参数名称 是否必选 参数类型 说明 name 是 String 作业名称。长度限制:1-57个字符。 desc 否 String 作业描述。长度限制:0-512个字符。 template_id 否 Integer 模板ID。 如果“template_id”和“sql_body”都不为空,优先选择“sql_body”的内容;如果“template_id”不为空,“sql_body”为空,选择“template_id”的内容填充“sql_body”。 queue_name 否 String 队列名称。长度限制:0-128个字符。 sql_body 否 String Stream SQL语句,至少包含source, query, sink三个部分。长度限制:1024*1024个字符。 run_mode 否 String 作业运行模式: shared_cluster:共享。 exclusive_cluster:独享。 edge_node:边缘节点。 默认值为“shared_cluster”。 cu_number 否 Integer 用户为作业选择的CU数。默认值为“2”。 CU数量为DLI的计算单元数量和管理单元数量总和,CU也是DLI的计费单位,1CU=1核4G。当前配置的CU数量为运行作业时所需的CU数,不能超过其绑定队列的CU数量。管理单元参数设置详见:manager_cu_number。 parallel_number 否 Integer 用户设置的作业并行数目。默认值为“1”。 并行数是指同时运行Flink SQL作业的最大任务数。适度增加并行数会提高作业整体算力,但也须考虑线程增多带来的切换开销。最大并行数不能大于计算单元(CU数量-管理单元)的4倍。 管理单元参数设置详见:manager_cu_number。 checkpoint_enabled 否 Boolean 是否开启作业自动快照功能。 开启:true 关闭:false 默认:false checkpoint_mode 否 Integer 快照模式,。两种可选: 1:表示exactly_once,数据只被消费一次。 2:表示at_least_once,数据至少被消费一次。 默认值为1。 checkpoint_interval 否 Integer 快照时间间隔。单位为秒,默认值为“10”。 obs_bucket 否 String 当“checkpoint_enabled”为“true”时,该参数是用户授权保存快照的OBS桶名。 当“log_enabled” 为“true”时,该参数是用户授权保存作业日志的OBS桶名。 log_enabled 否 Boolean 是否开启作业的日志上传到用户的OBS功能。默认为“false”。 smn_topic 否 String 当作业异常时,向该SMN主题推送告警信息。 restart_when_exception 否 Boolean 是否开启作业异常自动重启。默认为“false”。 idle_state_retention 否 Integer 空闲状态保留时间。单位为秒,默认值为“3600”。 job_type 否 String 作业类型:flink_sql_job、flink_opensource_sql_job。 默认值:“flink_opensource_sql_job”。 “run_mode”为“exclusive_cluster”时,作业类型须为“flink_sql_job”或“flink_opensource_sql_job”。 “run_mode””为“shared_cluster”时作业类型必须为”flink_sql_job“。 edge_group_ids 否 Array of Strings 边缘计算组ID列表, 多个ID以逗号分隔。 dirty_data_strategy 否 String 作业脏数据策略。 “2:obsDir”:保存,obsDir表示脏数据存储路径。 “1”:抛出异常。 “0”:忽略。 默认值为“0”。 udf_jar_url 否 String 用户已上传到DLI资源管理系统的资源包名,用户sql作业的udf jar包通过该参数传入。 manager_cu_number 否 Integer 用户为作业选择的管理单元(jobmanager)CU数量,默认值为“1”。 tm_cus 否 Integer 每个taskmanager的CU数,默认值为“1”。 tm_slot_num 否 Integer 每个taskmanager的slot数,默认值为“(parallel_number*tm_cus)/(cu_number-manager_cu_number)”。 resume_checkpoint 否 Boolean 异常重启是否从checkpoint恢复。 resume_max_num 否 Integer 异常重试最大次数,单位:次/小时。取值范围:-1或大于0。默认值为“-1”,表示无限次数。 tags 否 Array of Objects Flink SQL作业的标签。具体请参考表3。 runtime_config 否 String Flink作业运行时自定义优化参数。 flink_version 否 String Flink版本。当前只支持1.10和1.12。 表3 tags参数 参数名称 是否必选 参数类型 说明 key 是 String 标签的键。 说明: 标签的键的最大长度为128个字符,标签的键可以包含任意语种字母、数字、空格和_ . : =+-@ ,但首尾不能含有空格,不能以_sys_开头。 value 是 String 标签的值。 说明: 标签值的最大长度为255个字符,标签的值可以包含任意语种字母、数字、空格和_ . : =+-@ ,但首尾不能含有空格。
  • 请求示例 生成Flink SQL作业的静态流图,流图的类型为静态流图。 { "job_type": "flink_opensource_sql_job", "graph_type": "job_graph", "sql_body": "create table orders(\r\n name string,\r\n num int\r\n) with (\r\n 'connector' = 'datagen',\r\n 'rows-per-second' = '1', --每秒生成一条数据\r\n 'fields.name.kind' = 'random', --为字段user_id指定random生成器\r\n 'fields.name.length' = '5' --限制user_id长度为3\r\n);\r\n \r\nCREATE TABLE sink_table (\r\n name string,\r\n num int\r\n) WITH (\r\n 'connector' = 'print'\r\n);\r\nINSERT into sink_table SELECT * FROM orders;", "cu_number": 2, "manager_cu_number": 1, "parallel_number": 2, "tm_cus": 1, "tm_slot_num": 0, "operator_config": "", "static_estimator": true, "flink_version": "1.12", "static_estimator_config": "{\"operator_list\":[{\"id\":\"0a448493b4782967b150582570326227\",\"output_rate\":1000},{\"id\":\"bc764cd8ddf7a0cff126f51c16239658\",\"output_rate\":1000}]}" }
  • 响应示例 { "message": "", "is_success": true, "error_code": "", "stream_graph": "{\n \"jid\" : \"44334c4259f6714bddef1ac525364052\",\n \"name\" : \"InternalJob_1715392878428\",\n \"nodes\" : [ {\n \"id\" : \"0a448493b4782967b150582570326227\",\n \"parallelism\" : 1,\n \"operator\" : \"\",\n \"operator_strategy\" : \"\",\n \"description\" : \"Sink: Sink(table=[default_catalog.default_database.sink_table], fields=[name, num])\",\n \"chain_operators_id\" : [ \"0a448493b4782967b150582570326227\" ],\n \"inputs\" : [ {\n \"num\" : 0,\n \"id\" : \"bc764cd8ddf7a0cff126f51c16239658\",\n \"ship_strategy\" : \"FORWARD\",\n \"exchange\" : \"pipelined_bounded\"\n } ],\n \"optimizer_properties\" : {}\n }, {\n \"id\" : \"bc764cd8ddf7a0cff126f51c16239658\",\n \"parallelism\" : 2,\n \"operator\" : \"\",\n \"operator_strategy\" : \"\",\n \"description\" : \"Source: TableSourceScan(table=[[default_catalog, default_database, orders]], fields=[name, num])\",\n \"chain_operators_id\" : [ \"bc764cd8ddf7a0cff126f51c16239658\" ],\n \"optimizer_properties\" : {}\n } ],\n \"operator_list\" : [ {\n \"id\" : \"0a448493b4782967b150582570326227\",\n \"name\" : \"Sink: Sink(table=[default_catalog.default_database.sink_table], fields=[name, num])\",\n \"type\" : \"Sink\",\n \"contents\" : \"Sink(table=[default_catalog.default_database.sink_table], fields=[name, num])\",\n \"parallelism\" : 1,\n \"tags\" : \"[SINK]\",\n \"input_operators_id\" : [ \"bc764cd8ddf7a0cff126f51c16239658\" ]\n }, {\n \"id\" : \"bc764cd8ddf7a0cff126f51c16239658\",\n \"name\" : \"Source: TableSourceScan(table=[[default_catalog, default_database, orders]], fields=[name, num])\",\n \"type\" : \"Source\",\n \"contents\" : \"TableSourceScan(table=[[default_catalog, default_database, orders]], fields=[name, num])\",\n \"parallelism\" : 2,\n \"tags\" : \"[PROCESS, UDF]\",\n \"input_operators_id\" : [ ]\n } ]\n}" } 为了便于查看返回体信息,我们将stream_graph格式化后如下所示: "jid": "65b6a7b0c1ad95b1722a92b49d2f6eba", "name": "InternalJob_1715392245413", "nodes": [ { "id": "0a448493b4782967b150582570326227", "parallelism": 1, "operator": "", "operator_strategy": "", "description": "Sink: Sink(table=[default_catalog.default_database.sink_table], fields=[name, num])", "chain_operators_id": [ "0a448493b4782967b150582570326227" ], "inputs": [ { "num": 0, "id": "bc764cd8ddf7a0cff126f51c16239658", "ship_strategy": "FORWARD", "exchange": "pipelined_bounded" } ], "optimizer_properties": { } }, { "id": "bc764cd8ddf7a0cff126f51c16239658", "parallelism": 2, "operator": "", "operator_strategy": "", "description": "Source: TableSourceScan(table=[[default_catalog, default_database, orders]], fields=[name, num])", "chain_operators_id": [ "bc764cd8ddf7a0cff126f51c16239658" ], "optimizer_properties": { } } ], "operator_list": [ { "id": "0a448493b4782967b150582570326227", "name": "Sink: Sink(table=[default_catalog.default_database.sink_table], fields=[name, num])", "type": "Sink", "contents": "Sink(table=[default_catalog.default_database.sink_table], fields=[name, num])", "parallelism": 1, "tags": "[SINK]", "input_operators_id": [ "bc764cd8ddf7a0cff126f51c16239658" ] }, { "id": "bc764cd8ddf7a0cff126f51c16239658", "name": "Source: TableSourceScan(table=[[default_catalog, default_database, orders]], fields=[name, num])", "type": "Source", "contents": "TableSourceScan(table=[[default_catalog, default_database, orders]], fields=[name, num])", "parallelism": 2, "tags": "[PROCESS, UDF]", "input_operators_id": [ ] } ] }
  • 请求消息 表2 请求参数说明 参数名称 是否必选 参数类型 说明 sql_body 是 String SQL。 cu_number 否 Integer 是在作业编辑页面配置的作业占用资源总CU数,需配置与实际占用资源一致,作业实际占用资源根据算子并行数按需申请。 cu_number = 管理单元 + (算子总并行数 / 单TM Slot数) * 单TM所占CU数 manager_cu_number 否 Integer 管理单元CU数。 parallel_number 否 Integer 最大并行度。 并行数为作业每个算子的并行数,适度增加并行数会提高作业整体算力,但也须考虑线程增多带来的切换开销,上限是计算单元CU数的4倍,最佳实践为计算单元CU数的1-2倍。 tm_cus 否 Integer 单个taskManagerCU数量。 tm_slot_num 否 Integer 单个taskManager Slot数量。 operator_config 否 String 算子的配置。 可先行调用该接口获取算子ID,即响应消息中stream_graph包含的operator_list中的id即为算子ID。 static_estimator 否 Boolean 是否静态资源预估。 配置为true时,即根据算子ID和流量预估作业消耗资源。 static_estimator_config 否 String 每个算子的流量/命中率配置,json格式的字符串。 当static_estimator为true时需要配置该参数,配置时传入算子ID和算子流量配置。 可先行调用该接口获取算子ID,即响应消息中stream_graph包含的operator_list中的id即为算子ID。 算子流量根据用户业务实际情况预估。 job_type 否 String 作业类型。 只支持flink_opensource_sql_job类型作业。 graph_type 否 String 流图类型。当前支持以下两种流图类型。 简化流图:simple_graph 静态流图:job_graph flink_version 否 String Flink版本。当前只支持1.10和1.12。
  • 数字资产链 数字资产链是华为云自研的数字资产链平台,基于华为云区块链引擎,可实现数字资产的确权、可信保存、安全交易。 数字资产链的使用方式分为两种:共享版和专享版。两者的区别与联系如下: 共享版的用户共用一条数字资产链,在同一条数字资产链上进行资产交易活动。开通共享版数字资产链请参考开通共享版。 专享版针对不同资产交易业务可创建多个单独非共享的数字资产链,各业务间互不干扰,业务的专业性更强。购买专享版数字资产链请参考创建数字资产链。 购买专享版数字资产链节点后,默认按需计费,可选择是否购买套餐包进行抵扣;开通共享版数字资产链后,必须购买套餐包才支持调用。详细费用和购买套餐包方法请参考计费说明和购买套餐包。 共享版和专享版可同时购买使用。
  • 请求示例 { "batchCode" : "962cc65f20674ebeb67b765f83bcaa24", "linkName" : "清风", "merchant" : "1748189792481312769", "batchLinkContentList" : [ { "contentUrl" : "https://xxx.xxx.xxx.xxx", "contentType" : "0", "contentName" : "测试", "contentText" : "测试", "sweepCodeDisplay" : "1" } ] }
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 code Integer 返回码 最小值:1 最大值:100 message String 返回消息 最小长度:1 最大长度:100 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:1 最大长度:100 error_msg String 错误描述 最小长度:1 最大长度:100
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token 最小长度:1 最大长度:65535 表3 请求Body参数 参数 是否必选 参数类型 描述 batchCode 是 String 批次码 最小长度:1 最大长度:100 linkName 是 String 环节名称 最小长度:1 最大长度:20 merchant 是 String 商户ID 最小长度:1 最大长度:100 batchLinkContentList 是 Array of BatchLinkContentSubmit objects 环节内容 表4 BatchLinkContentSubmit 参数 是否必选 参数类型 描述 contentUrl 否 String 对于图片、PDF等存储url 最小长度:1 最大长度:250 contentType 是 String 溯源内容类型(0.图片、1.PDF、2.文本) 枚举值: 0 1 2 contentName 是 String 溯源内容名称 最小长度:1 最大长度:100 contentText 否 String 对于文本,直接存储文本内容 最小长度:1 最大长度:250 sweepCodeDisplay 是 String 扫码展示方式:0 不展示,1 展示 枚举值: 0 1
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token 最小长度:1 最大长度:65535 表3 请求Body参数 参数 是否必选 参数类型 描述 batchCode 是 String 批次码 最小长度:1 最大长度:100 linkName 是 String 环节名称 最小长度:1 最大长度:100 merchant 是 String 商户ID 最小长度:1 最大长度:100
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token 最小长度:1 最大长度:65535 表3 请求Body参数 参数 是否必选 参数类型 描述 batchCode 是 String 批次码 最小长度:1 最大长度:100 linkName 是 String 环节名称 最小长度:1 最大长度:20 isSweepCodeDisplay 是 String 是否扫码展示:0: 不展示 1: 展示 枚举值: 0 1 merchant 是 String 商户ID 最小长度:1 最大长度:100
  • 响应示例 状态码: 200 Success { "code" : "200", "message" : "操作成功!", "data" : { "pageNum" : 1, "pageSize" : 2, "total" : 1, "pages" : 1, "record" : [ { "productCode" : "appletest", "productName" : "11", "productPhotoUrl" : "https://xxx.xxx.xxx.xxx", "sweepcodeStatisticsSwitch" : "1", "bannerUrl" : "https://xxx.xxx.xxx.xxx", "merchant" : "1759540612045058049", "productOrigin" : "bj" } ] } } 状态码: 500 Error response { "code" : "500", "message" : "系统异常" }
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 code String 返回码 message String 响应消息 data data object 商品数据列表 表6 data 参数 参数类型 描述 pageNum Integer 页数 pageSize Integer 每页展示的数量 total Integer 总数 pages Integer 总页数 record Array of record objects 商品信息 表7 record 参数 参数类型 描述 productCode String 批次码 productName String 产品名称 productPhotoUrl String 图片url sweepcodeStatisticsSwitch String 商品溯源扫码统计开关(0:关闭;1 打开) bannerUrl String 横幅url merchant String 商户ID productOrigin String 商品产地 状态码: 500 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:1 最大长度:100 error_msg String 错误描述 最小长度:1 最大长度:100
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token 最小长度:1 最大长度:65535 表3 请求Body参数 参数 是否必选 参数类型 描述 query 是 Query object 分页参数 merchant 是 String 商户ID 最小长度:1 最大长度:100 表4 Query 参数 是否必选 参数类型 描述 current 否 Integer 当前页 最小值:1 最大值:2147483647 缺省值:1 size 否 Integer 每页的数量 最小值:1 最大值:2147483647 缺省值:10
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token 最小长度:1 最大长度:65535 表3 请求Body参数 参数 是否必选 参数类型 描述 batchCode 是 String 批次码 最小长度:1 最大长度:100 linkName 是 String 环节名称 最小长度:1 最大长度:20 linkSeq 是 Integer 环节顺序 最小值:0 最大值:50 isSweepCodeDisplay 是 String 是否扫码展示:0: 不展示 1: 展示 枚举值: 0 1 isChain 是 Integer 是否上链:0:不上链,1:上链 枚举值: 0 1 inOutType 是 Integer 出入库类型:0:入库;1:出库;2:不涉及出入库 枚举值: 0 1 2 merchant 是 String 商户ID 最小长度:1 最大长度:100
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 code String 返回码 message String 返回描述 data data object 返回数据 表5 data 参数 参数类型 描述 linkCode String 环节码 batchCode String 批次码 merchant String 商户ID 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:1 最大长度:100 error_msg String 错误描述 最小长度:1 最大长度:100
  • 响应示例 状态码: 200 Success { "code" : "200", "message" : "操作成功!", "data" : { "linkCode" : "20240220191244787", "batchCode" : "1c403af577ec4b369140c95327b17aed", "merchant" : "1748189792481312769" } } 状态码: 500 Error response { "code" : "500", "message" : "系统异常" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 code String 返回码 最小长度:1 最大长度:20 message String 返回描述 最小长度:1 最大长度:255 状态码: 500 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:1 最大长度:100 error_msg String 错误描述 最小长度:1 最大长度:100
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token 最小长度:1 最大长度:65535 表3 请求Body参数 参数 是否必选 参数类型 描述 itemCode 是 String 溯源码 最小长度:1 最大长度:100 merchant 是 String 商户ID traceabilityStatus 是 String 溯源状态,0:正常,1:禁用 枚举值: 0 1
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 code String 返回码 最小长度:1 最大长度:20 message String 返回信息 最小长度:1 最大长度:255 状态码: 500 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:1 最大长度:100 error_msg String 错误描述 最小长度:1 最大长度:100
  • 响应示例 状态码: 200 Success { "code" : "200", "message" : "操作成功!", "data" : { "pageNum" : 1, "pageSize" : 10, "total" : 2, "pages" : 1, "record" : [ { "gmtCreate" : "2024-02-25 17:57:01", "gmtModified" : "2024-02-25 17:57:01", "productName" : null, "batchCode" : null, "isUse" : "0", "isSupportTrace" : "0", "itemCode" : "NftlBzOaNM", "latestActions" : null, "latestActionsDate" : null, "traceabilityStatus" : "0", "productTraceUrl" : "http://xxx.xxx.xxx.xxx/#/?itemCode=NftlBzOaNM" }, { "gmtCreate" : "2024-02-22 21:30:21", "gmtModified" : "2024-02-22 21:30:21", "productName" : null, "batchCode" : null, "isUse" : "0", "isSupportTrace" : "0", "itemCode" : "g6MJ9lyaHl", "latestActions" : null, "latestActionsDate" : null, "traceabilityStatus" : "0", "productTraceUrl" : "http://xxx.xxx.xxx.xxx/#/?itemCode=g6MJ9lyaHl" } ] } } 状态码: 500 Error response { "code" : "500", "message" : "系统异常" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token 最小长度:1 最大长度:65535 表3 请求Body参数 参数 是否必选 参数类型 描述 itemCode 否 String 溯源码 最小长度:1 最大长度:100 batchCode 否 String 批次码 merchant 是 String 商户ID query 是 Query object 分页参数 表4 Query 参数 是否必选 参数类型 描述 current 否 Integer 当前页 最小值:1 最大值:2147483647 缺省值:1 size 否 Integer 每页的数量 最小值:1 最大值:2147483647 缺省值:10
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 code String 返回码 message String 返回描述 data data object 详情 表6 data 参数 参数类型 描述 pageNum Integer 页数 pageSize Integer 每页展示的数量 total Integer 总数 pages Integer 总页数 record Array of record objects 溯源码信息 表7 record 参数 参数类型 描述 gmtCreate String 创建时间 gmtModified String 修改时间 productName String 商品名称 batchCode String 批次码 isUse String 是否使用,0 未使用,1 已使用 itemCode String 一级溯源码 traceabilityStatus String 溯源状态,0 正常,1 禁用 productTraceUrl String 商品溯源url latestActionsDate String 最近溯源信息变化时间 latestActions String 最近溯源信息 isSupportTrace String 是否支持溯源,0 不支持,1 支持 状态码: 500 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:1 最大长度:100 error_msg String 错误描述 最小长度:1 最大长度:100
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 code String 返回码 最小长度:1 最大长度:20 message String 返回描述 最小长度:1 最大长度:255 data data object 返回数据 表5 data 参数 参数类型 描述 url String 文件下载链接 status Integer 任务状态 1:成功,2:任务不存,3:进行中,4:失败 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:1 最大长度:100 error_msg String 错误描述 最小长度:1 最大长度:100
  • 响应示例 状态码: 200 Success { "code" : "200", "message" : "操作成功!", "data" : { "id" : "8294ebf8a9a646309985886d63a1bea3", "elementName" : "apple3", "elementUrl" : "https://xxx.xxx.xxx.xxx/petaltrace%2Fimages2.jpeg", "imageType" : "2", "isDisplay" : "0", "merchant" : "1759540612045058049" } } 状态码: 500 Error response { "code" : "500", "message" : "系统异常" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 code String 返回码 message String 响应消息 data data object 返回数据 表5 data 参数 参数类型 描述 id String 图片ID elementName String 图片名称 elementUrl String 图片url imageType String 图片类型 isDisplay String 是否展示:0展示,1不展示 merchant String 商户ID 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 最小长度:1 最大长度:100 error_msg String 错误描述 最小长度:1 最大长度:100
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token 最小长度:1 最大长度:65535 表3 请求Body参数 参数 是否必选 参数类型 描述 elementName 是 String 图片名称 最小长度:1 最大长度:255 elementUrl 是 String 图片url 最小长度:1 最大长度:255 isDisplay 是 String 是否展示:0 展示,1 不展示 枚举值: 0 1 imageType 是 String 图片类型:1 品宣,2 banner 枚举值: 1 2 merchant 是 String 商户ID,不可修改 最小长度:1 最大长度:100
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token 最小长度:1 最大长度:65535 表3 请求Body参数 参数 是否必选 参数类型 描述 batchCode 是 String 批次码 最小长度:1 最大长度:100 linkCode 是 String 环节码 最小长度:1 最大长度:100 linkName 是 String 环节名称,不可更新 最小长度:1 最大长度:20 isChain 是 String 是否上链:0:不上链, 1:上链 枚举值: 0 1 isSweepCodeDisplay 是 String 是否扫码展示:0: 不展示 1: 展示 枚举值: 0 1 inOutType 是 Integer 出入库类型:0:入库1:出库2:不涉及出入库 枚举值: 0 1 2 merchant 是 String 商户ID 最小长度:1 最大长度:100
共100000条