Skip to main content
GET
Generate a QR code for arbitrary data

Authorizations

Authorization
string
header
required

Dashboard JWT token from Clerk

Headers

X-Test-Mode
enum<string>

Sandbox opt-in for Clerk-session-authenticated requests. Set to true to route the call through the test-mode pipeline: no real provider delivery, no credits deducted, response meta.test_mode: true. Ignored for live API keys (dv_live_sk_*) — server-to-server clients must use a test-prefixed key (dv_test_sk_*) to exercise sandbox. Test-prefixed keys unconditionally enable sandbox regardless of this header.

Available options:
true,
false

Query Parameters

data
string
required

Payload to encode (plain text or a URL, max 2048 chars). Must not start with a script-execution URL scheme such as javascript: or data:.

Required string length: 1 - 2048
size
integer
default:300

Image edge length in pixels (50–1024, default 300). The output PNG is always square.

Required range: 50 <= x <= 1024
format
enum<string>
default:png

png (default) returns raw image/png bytes; json returns the standard envelope with data.qr_data_url as a base64 data URL.

Available options:
png,
json

Response

Rendered QR code as PNG image bytes (content-type image/png). Pass format=json to receive a base64 data-URL in the standard { data, meta } envelope instead.

The response is of type file.