GET
/api/v1/{type}
Typed endpoints
GET /api/v1/{type} builds a correctly formatted payload for you — wifi, upi, vcard, mecard, url, text and the rest — using the exact same builders the web app uses. Every styling parameter from /v1/qr works here too.
View as MarkdownPaste this page into any AI assistant — it is plain, portable Markdown.
Request
GET /api/v1/{type}Parameters
| Name | Type | Detail |
|---|---|---|
| typeREQUIRED | string | The payload type, in the path: wifi, upi, pix, epc, paypal, vcard, mecard, url, text, email, phone, sms, calendar, location, social, whatsapp, telegram, and more. |
| …fieldsREQUIRED | string | The fields that type needs — ssid and password for wifi, pa and pn for upi, fn and ln for vcard. A missing required field returns a 400 naming it. |
- The full list of types and their fields is in the OpenAPI document at /api/openapi.json.
When you get it wrong
Errors are RFC 9457 problem+json with one addition: a fix field containing a corrected call you can run as-is.
{
"type": "https://useqr.app/errors",
"title": "Missing field",
"status": 400,
"detail": "wifi needs an ssid",
"fix": "/api/v1/wifi?ssid=CafeGuest&password=espresso&security=WPA"
}