QR code API

Everything the generator does, from a POST request.

Your keys

Sign in to create a key

Only the API needs an account. The generator never will, and nothing you type into it is sent anywhere.


One request, one SVG

Send the same choices the generator offers as JSON and get the finished SVG back. The response carries the symbol version in an x-qr-version header. The API is free: one key per account, 10 requests a minute and 1,000 requests a month.

curl -X POST https://qracker.com/api/v1/qr \
  -H "x-api-key: qk_..." \
  -H "content-type: application/json" \
  -d '{"type":"url","fields":{"url":"https://example.com"},
       "look":{"dotStyle":"rounded","frame":"bar","frameLabel":"Menu"}}' \
  -o code.svg

type is one of the twelve content types; GET /api/v1/types lists them with their field names. Every look key is optional:

fg, bg
hex colors, #000000 and #ffffff by default
dotStyle
square, rounded, dots or connected
eyeStyle, eyeDotStyle
square, extra-rounded or dot
logo
none, wifi, link, utensils, ticket, store or music
frame, frameLabel
none, bar, card or ticket, with a label of up to 40 characters
size
160 to 320 pixels
ec
L, M, Q or H; M by default, H when a logo is placed

Errors come back as JSON with an error field: 400 for a body that fails validation, 401 for a missing or unknown key, 422 when the content is too long for any code, and 429 with a Retry-After header: with a tryAgainIn value in milliseconds when the account is over its per-minute limit, or with a resetsAt time when it has used its month's requests.