Migrate from Labelary
Move an existing Labelary integration to zpl.tools in minutes, not days
You can render ZPL to PNG or PDF through api.labelary.com today. This
service is a close replacement for those calls. For most integrations
the change is two items: the base URL and an X-API-Key header.
Who this guide is for
This guide applies if your integration:
- Calls
POSTorGET /v1/printers/{dpmm}/labels/{width}x{height}/...for PNG or PDF output. - Sends ZPL as
application/x-www-form-urlencodedbody ormultipart/form-data. - Uses
X-RotationorX-Qualityto control the output.
Your integration needs more than the two changes if it uses one of these:
- Labelary's
application/jsonlabel-data extraction, or the IPL/EPL/DPL/SBPL/PCL output formats. This service does not support them yet. - The
X-Page-*headers (page size, orientation, layout, and alignment) orX-Label-Border, to compose a multi-label PDF page. The API accepts and validates them as Labelary does, but does not apply them to the rendered PDF yet. - No API key: Labelary's free tier needs none. This API requires
X-API-Keyon every request.
Read Behavioral differences before you change production traffic.
The five-minute version
-
Get an API key. Create one from your zpl.tools account. Every request requires a key; a Labelary key is optional.
-
Change the base URL.
- https://api.labelary.com + https://api.zpl.tools/compatibility/labelary/ -
Add the API key header to every request:
curl -X POST "https://api.zpl.tools/compatibility/labelary/v1/printers/8dpmm/labels/4x6/0" \ + -H "X-API-Key: your_api_key_here" \ --data "^XA^FO50,50^FDHello World^FS^XZ"
The path shape, the Accept/X-Rotation/X-Quality headers, and the
response format do not change.
Next steps
- Side-by-side examples — curl, Python, and Node for the three most common calls.
- Behavioral differences — auth model, error codes, rate limits, and the gaps.
- Migration checklist
- Full API reference
For help, contact us. For a higher-volume migration, ask about the founder-led concierge migration.