一、功能说明
该接口文档适用于在自有系统或网页里,调用草料标签样式库中的公共样式,批量生成不同内容的二维码标签。无需导出数据在我们平台再导入数据生码。
二、接口调用说明
URL
https: //open-api.cli.im/cli-open-platform-service/v1/labelStyle/create
HTTP请求方式
GET
请求参数
参数名称 | 是否必须 | 类型 | 说明 |
cliT | 是 | string | 公共样式编号,例如B216 |
cliD | 是 | string | 二维码动态内容 |
return_file | 是 | string | 返回类型,不传时返回二进制图片流,base64-返回base64编码 |
theme_color | 是 | string | 主题颜色,例如#000000 |
cliF | 否 | string | 根据公共样式需要传入的动态字段,cliF表示普通文本字段,按照字段展示顺序排列,例如公共样式有3个字段,全为文本字段,传入参数为: cliF1=xx&cliF2=xx&cliF3=xx |
cliP | 否 | string | 根据公共样式需要传入的动态字段,cliP表示图片字段,图片需要公网可访问静态地址,按照字段展示顺序排列,例如公共样式有4个字段,第二个为图片字段,其余为文本字段,传入参数为: cliF1=xx&cliP2=xx&cliF3=xx&cliF4=xxc |
返回参数
当return_file未传时,返回二进制图片
当return_file=base64时,返回base64图片编码,可用于嵌入网页或传输到系统中
请求示例:
https://open-api.cli.im/cli-open-platform-service/v1/labelStyle/create?cliT=B572&cliD=图片样式二维码&cliF1=人员实名信息卡&cliF2=安全生产,人人有责&cliP3=https://ncstatic.clewm.net/rsrc/2023/0612/13/952a04c092275a684025ef0d2ed6bcce.png&cliF4=张栋旭&cliF5=设备操作员&cliF6=工号:MH-0403&cliF7=部门:现场项目部&cliF8=班组:水泥机械班组&return_file=
返回示例
当return_file未传时,返回以下图片二进制流
当return_file=base64时,返回以下图片的base64编码,可用于嵌入网页或传输到系统中
错误码
错误码 | 错误码取值 | 解决方案 |
200 | 成功 | 成功 |
400 | 请求的数据格式不符! | 请检查参数正确性 |
40000 | 系统繁忙,请稍后再试 | 系统可能维护升级中,等待后续功能恢复 |
40001 | 参数错误 | 检查传递参数是否按照文档规范 |
三、调用代码示例
在草料标签样式库中,选择一个标签,直接获取标签样式编号,或者进入样式详情页,点击调用API制作。
标签制作页链接:https://cli.im/label
以B572标签为准,可以看到B582模板有标签有8个固定字段,第3个为图片字段,其余为文本字段
所以API动态字段为cliF1到cliF8,中间图片字段为cliP3,以下为示例代码:
package org.cli.platform.service.util;
import org.apache.commons.io.IOUtils;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import org.springframework.web.util.UriUtils;
public class CliApiV1Demo {
public static void main(String[] args) throws IOException {
String cliD = UriUtils.encode("图片样式二维码", StandardCharsets.UTF_8.name());
String cliF1 = UriUtils.encode("人员实名信息卡", StandardCharsets.UTF_8.name());
String cliF2 = UriUtils.encode("安全生产,人人有责", StandardCharsets.UTF_8.name());
String cliP3 = UriUtils.encode("https://ncstatic.clewm.net/rsrc/2023/0612/13/952a04c092275a684025ef0d2ed6bcce.png", StandardCharsets.UTF_8.name());
String cliF4 = UriUtils.encode("张栋旭", StandardCharsets.UTF_8.name());
String cliF5 = UriUtils.encode("设备操作员", StandardCharsets.UTF_8.name());
String cliF6 = UriUtils.encode("工号:MH-0403", StandardCharsets.UTF_8.name());
String cliF7 = UriUtils.encode("部门:现场项目部", StandardCharsets.UTF_8.name());
String cliF8 = UriUtils.encode("班组:水泥机械班组", StandardCharsets.UTF_8.name());
URL url = new URL("http://open-api.cli.im/cli-open-platform-service/v1/labelStyle/create?cliT=B572&cliD=" + cliD + "&return_file=&theme_color=&cliF1=" + cliF1 + "&cliF2=" + cliF2 + "&cliP3=" + cliP3 + "&cliF4=" + cliF4 + "&cliF5=" + cliF5 + "&cliF6=" + cliF6 + "&cliF7=" + cliF7 + "&cliF8=" + cliF8);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setRequestMethod("GET");
connection.connect();
InputStream stream = connection.getInputStream();
FileOutputStream out = new FileOutputStream(new File("test.png"));
IOUtils.copy(stream, out);
}
}
四、调用说明
-
Beta期间 开通API 的用户可长期免费调用;
-
API调用根据IP秒级并发30次,如需更高并发次数,可 前往社区反馈
-
如果标签API调用流程、速度等方面问题,可以 前往社区反馈 ,草料官方顾问和技术会定期查看并回复
-
如需调用你自己账号下设置好的标签样式,可在草料后台,【标签样式】目录下选择我的标签样式,进入标签样式详情页,开通调用。查看私有样式API接口文档