# GET /api/v1/{type}

> 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.

Source: https://useqr.app/docs/api/typed · No API key required · UseQR is free forever, MIT licensed.

---

## Parameters

| Name | Type | Required | Detail |
| --- | --- | --- | --- |
| `type` | string | yes | 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. |
| `…fields` | string | yes | 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. |

## Notes

- The full list of types and their fields is in the OpenAPI document at /api/openapi.json.

## Errors

Every 4xx is RFC 9457 problem+json with an extra `fix` field containing a corrected call.

```json
{
  "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"
}
```
