Download a QR code for print
Get a saved code's file at the right resolution for the print shop.
A saved code's print file is a vector SVG — the same deterministic renderer used for the live
preview, encoding https://<domain><path> for that code.
curl -o flyer.svg "https://app.tease.link/api/admin/qr/links.creator.com/3/image.svg?px=2048&download=true" \
-H "Authorization: Bearer $TEASE_API_KEY"| Param | Type | Description |
|---|---|---|
px | int | Default width attribute on the SVG, 64–4096. Because the viewBox is vector, this only sets a starting size hint — the file itself prints crisply at any size a print shop scales it to. |
download | bool | true sets Content-Disposition: attachment with a qr-<domain>-<slug-or-main>.svg filename, so a browser saves the file instead of opening it inline. |
account | string | For an agency viewing another owner's page: the page address, so the request passes the same RBAC check a page-level request would. Omit it for your own pages — a plain <img> tag can't send the account-switcher header this substitutes for. |
PNG instead of SVG
There's no PNG endpoint — the server only ever returns SVG. The panel renders a PNG client-side
(SVG onto a canvas element) when a viewer needs one. If you're calling the API directly and need
a raster file, download the SVG and convert it yourself (a canvas, or any SVG-to-PNG tool) —
don't expect image.svg to content-negotiate into a PNG.
How to know it worked
The downloaded file opens as a valid SVG and a phone scan of it 302s to the landing page. For print, hand the print shop the SVG directly rather than a rasterized export when their workflow supports it — vector avoids any resolution ceiling.
If it didn't work
- 404 — the
qr_iddoesn't belong to that domain, or the domain string is wrong. - 500 on a previously-working code — the design likely references an icon file that's since been removed from disk; see Troubleshooting.
- Broken preview for another owner's page in an agency view — pass that page's address as
account; without it the request is scoped to your own pages only.
px doesn't crop or rasterize anything — if a design still looks pixelated at large print sizes,
the problem is downstream (a rasterizing step in your own pipeline), not this endpoint.
What's next
- Read a carrier's funnel — once it's printed and out in the world, see what it's driving.