zpl.tools
Compatibility LayersLabelary Compatibility

Labelary Compatibility API (Closed Beta)

HTTP API for rendering ZPL labels to PDF and PNG formats

This service is a drop-in replacement for the Labelary API. Change your base URL and keep every other request parameter.

The migration guide gives side-by-side code samples and a checklist.

Notable Differences

AspectLabelaryZPL Tools
Base URLhttps://api.labelary.comhttps://api.zpl.tools/compatibility/labelary/
AuthenticationOptional via X-API-Key headerRequired via X-API-Key header
Header SettingsExtensive supportX-Rotation, X-Quality, X-Linter fully applied. For the PDF page-layout headers, see Behavioral notes
Format SupportPNG, PDF, IPL, EPL, DPL, SBPL, PCL 5, PCL 6, JSONPNG, PDF (other formats return 406, not a silent fallback)
Page Count Limit50Unlimited
Request Body Size1 MBUnlimited
Image File Size200 KBUnlimited

Behavioral notes

  • X-Rotation applies to PNG only. The API accepts 0, 90, 180 and 270, and rejects any other value with 400. It does not yet rotate PDF output.
  • The API validates the PDF page-layout headers, and does not compose them. It checks X-Page-Size (Letter/Legal/A4/A5/A6), X-Page-Orientation, X-Page-Layout ({cols}x{rows}), X-Page-Align, X-Page-Vertical-Align and X-Label-Border for valid values, and checks that the label fits the page (Labelary's "not enough room" behavior). It ignores them for PNG output, as Labelary does. It does not yet arrange labels in a grid, resize the PDF page, or draw the alignment and the border. The PDF takes its size from the label.
  • Unsupported Accept values return 406. This includes formats that Labelary supports and the API does not: application/json label-data extraction, and epl, ipl, dpl, sbpl, pcl5 and pcl6.
  • dpmm accepts both 8dpmm and bare 8. Any other value returns 400 Unknown print density, not 404.
  • Label dimensions accept 0.00115 inches. The error message names the bound that the value crossed.

Support

For issues, contact us at https://zpl.tools/contact