该文档适用于:调用草料标签样式库中的公共样式,在自有系统里批量生成二维码标签。
Bate内测期间开通标签API的用户,可长期免费调用。
调用方式
GET https: //open-api.cli.im/cli-open-platform-service/v1/labelStyle/create
请求参数
参数名称 | 是否必须 | 类型 | 说明 |
cliT | 是 | string | 公共样式id,例如B216 |
cliD | 是 | string | 二维码动态内容 |
return_file | 是 | string | 返回类型,不传时返回二进制图片流,base64-返回base64编码 |
theme_color | 是 | string | 主题颜色,例如#000000 |
cliF,cliP | 否 | string | 根据公共样式需要传入的动态字段,cliF表示普通文本字段,cliP表示图片字段,图片需要公网可访问静态地址,按照字段展示顺序排列,例如公共样式有4个字段,第二个为图片字段,其余为文本字段,传入参数为: cliF1=xx&cliP2=xx&cliF3=xx&cliF4=xxc |
API调用根据IP秒级并发60次,如需更高并发次数,可 前往社区反馈
返回参数
当return_file未传时,返回二进制图片
当return_file=base64时,返回base64图片编码
请求示例:
返回示例
当return_file未传时,返回以下图片二进制流
当return_file=base64时,返回以下图片的base64编码
调用示例
在草料标签样式库中,选择一个标签,直接获取标签ID,或者进入样式详情页,点击开通标签制作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);
}
}
错误码
错误码 | 错误码取值 | 解决方案 |
200 | 成功 | 成功 |
400 | 请求的数据格式不符! | 请检查参数正确性 |
40000 | 系统繁忙,请稍后再试 | 系统可能维护升级中,等待后续功能恢复 |
40001 | 参数错误 | 检查传递参数是否按照文档规范 |
如需调用你自己账号下设置好的标签样式,在自有系统里批量生成二维码标签。可在草料后台,【标签样式】目录下选择之前保存的我的标签样式,进入标签样式详情页,开通调用。