贴纸机客户端 API 调用说明
本文说明如何通过局域网调用 Pepe 贴纸机客户端本地 API,把图片任务发送到贴纸机进行打印或打印后切割。
本文只覆盖贴纸机客户端随安装包部署的本地 API,不包含 PepeFoto 后台 API、打印机控制台 API、UV 打印 API、PepePhoto 客户端接口或切割机 Socket 内部协议。
适用场景
当拍照机、辅助打印工具、打印控制台或其他局域网程序需要把一张图片发送给贴纸机打印时,可以调用贴纸机客户端所在机器的本地 API。
接口默认地址为:
http://<贴纸机电脑IP>:5566/api/Print
如果在贴纸机电脑本机测试,也可以使用:
http://localhost:5566/api/Print
准备事项
- 贴纸机客户端已安装并能正常打开。
- 安装或覆盖安装时已勾选 API 部署程序。
- 贴纸机电脑的 IIS 服务和
5566端口本地 API 已部署成功。 - 调用方和贴纸机电脑在同一个局域网内,并能访问贴纸机电脑 IP。
- 贴纸机客户端设置页已保存 6 位 API Token。常见默认值为
123456,现场请以客户端设置页为准。 - 贴纸机设备已完成授权,打印机和切割机服务处于可用状态。
快速验证 API 是否正常
在浏览器中打开以下地址,把 IP、Token 和设备码替换成现场实际值:
http://<贴纸机电脑IP>:5566/api/Print?token=<6位Token>&model=<设备码>
示例:
http://192.168.0.5:5566/api/Print?token=0A985A&model=08C34E
如果接口能返回内容或没有出现无法访问、连接失败、空白报错,说明本地 API 服务基本可访问。若无法打开,优先检查贴纸机 IP、IIS、端口、防火墙和安装时是否勾选 API 部署程序。
提交打印或切割任务
请求地址
POST http://<贴纸机电脑IP>:5566/api/Print?token=<6位Token>
旧版本资料中也出现过不带 token 的调用方式。当前版本建议始终带上客户端设置页保存的 6 位 Token。
请求头
Content-Type: application/json
请求参数
| 参数 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
PrintSize | string | 是 | 打印尺寸。常用值包括 6x4、6x8,具体可用尺寸以当前贴纸机客户端配置为准。 | 6x4 |
PrintNum | string | 是 | 打印数量。建议传字符串数字。 | 1 |
Cut | string | 是 | 是否切割。传 true/false 或 True/False 字符串。 | true |
SetWhite | string | 是 | 是否做白边处理。辅助工具通常传 true。 | true |
ImgStr | string | 是 | 图片 Base64 字符串,不要带 data:image/png;base64, 前缀。 | iVBORw0... |
请求示例
{
"PrintSize": "6x4",
"PrintNum": "1",
"Cut": "true",
"SetWhite": "true",
"ImgStr": "iVBORw0KGgoAAA..."
}
PowerShell 调用示例
$imageBase64 = [Convert]::ToBase64String([IO.File]::ReadAllBytes("D:\test.png"))
$body = @{
PrintSize = "6x4"
PrintNum = "1"
Cut = "true"
SetWhite = "true"
ImgStr = $imageBase64
} | ConvertTo-Json -Compress
Invoke-RestMethod `
-Method Post `
-Uri "http://192.168.0.5:5566/api/Print?token=123456" `
-ContentType "application/json" `
-Body $body
返回结果
| 情况 | 返回内容 | 说明 |
|---|---|---|
| 成功 | succes | 注意旧接口返回拼写是 succes,不是 success。调用方建议按包含 succes 判断。 |
| 失败 | 参数为空 | 通常表示请求体为空、字段缺失或图片 Base64 为空。 |
| 失败 | 空值或无法连接 | 常见原因是 API 未部署、IIS 未启动、端口不通、Token 不正确或设备未授权。 |
获取机器码
旧版资料中记录了机器码获取接口:
GET http://<贴纸机电脑IP>:5566/api/Print
成功时返回部署 API 的贴纸机机器码;失败时可能返回空值。新版带 Token 的现场测试方式见“快速验证 API 是否正常”。
辅助工具专用授权检查
贴纸机辅助工具会先访问:
GET http://<贴纸机电脑IP>:5566/api/Print
GET http://<贴纸机电脑IP>:5566/api/Print?a=1
第一步读取机器码,第二步读取用于辅助工具内部校验的设备 Token。普通第三方只需要提交打印任务时调用 POST /api/Print,一般不需要直接使用 ?a=1。
常见问题
拍照机或其他程序无法把任务发送到贴纸机
先在浏览器打开测试地址:
http://<贴纸机电脑IP>:5566/api/Print?token=<6位Token>&model=<设备码>
如果无法访问,检查贴纸机 IP、IIS、端口、防火墙,以及安装时是否勾选 API 部署程序。
覆盖安装或升级后 API 不可用
覆盖安装时不要卸载原版本,并在安装流程中勾选 API 部署程序。若先卸载了原版本,再重新安装,需要在 IIS 中删除原本的贴纸机服务后重新安装,并同样勾选 API 部署程序。
返回 参数为空
检查请求是否为 POST,Content-Type 是否为 application/json,并确认 PrintSize、PrintNum、Cut、SetWhite、ImgStr 都已传入。ImgStr 必须是纯 Base64 图片字符串。
返回成功但没有打印
确认贴纸机客户端正在运行,打印机和切割机服务正常,队列未暂停,打印点余额足够。若任务是 API 打印任务,旧版本可能存在打印点扣除异常,建议使用 1.0.1.1 或更新版本。
Token 如何填写
在贴纸机客户端设置页填写并保存 6 位 Token。调用 API 时把该 Token 作为 token 参数传入。不要把 Token 暴露到公网或公开文档中。
版本注意事项
- 1.0.0.8 起,API 增加 Token 验证机制,其他程序调用 API 时需要传入前端设置的 Token。
- 1.0.1.0 起,打印点扣除逻辑从切割完成后调整为图片打印完成后,并修改了重打和 API 任务打印点扣除逻辑。
- 1.0.1.1 修复了 API 打印任务未正确扣除打印点的问题。
- 1.0.2.1 起,API 适配打印控制台,并支持 PepePhoto 普通照片、贴纸、翻转画打印场景。具体扩展字段以现场版本为准。
不在本文范围内的接口
以下内容不属于贴纸机客户端本地 API,排查时不要混在一起:
- PepeFoto 后台接口,例如设备授权、后台配置、H5 任务、WebSocket 状态上报。
- 切割机 Socket 协议,默认端口为
9000,由贴纸机客户端和切割机服务内部通信使用。 - 打印机控制台 API。
- UV 打印 API、PepePhoto 客户端 API。
相关教程
- Pepe贴纸机使用教程
- 贴纸机连接打印软件设置
- Pepe 贴纸机素材尺寸与上传要求
- PepeFoto 贴纸机软件下载