QRThis

QR codes
in a second.

QR codes generated
https://
Options
Size
Foreground
#1D1D1B
Background
#FFFFFF

Or use the API

One GET request. No auth, no signup. Drop the URL into an <img> tag from any origin.

Endpoint

GET https://www.qrth.is/api/generate

Parameters

ParamDefaultDescription
urlreqThe URL to encode. https:// is prepended if missing.
size512Image size in px (square). Min 64, max 2048.
formatpngOutput format: png or svg.
color000000Foreground hex color, no #.
bgtransparentBackground hex color (no #) or 'transparent'.
margin2Quiet zone in module units.

Examples

Basic
https://www.qrth.is/api/generate?url=example.com
Custom colors
https://www.qrth.is/api/generate?url=example.com&color=4CAF50&bg=FFFFFF
SVG output, 1024px
https://www.qrth.is/api/generate?url=example.com&format=svg&size=1024

Response

Returns the image bytes directly with image/png or image/svg+xml content type. Cached for 24 hours. CORS open to all origins.

Rate limits

100 requests per day per IP on the free tier. The 101st request returns 429. Every response includes:

X-RateLimit-Limit: 100
X-RateLimit-Remaining: 87
X-RateLimit-Reset: 1715000000

Errors

400Missing or invalid URL, color, or format
429Rate limit exceeded
500Generation failed