Inhaltshelfer
QR-Codes für WLAN-Zugangsdaten, Kontaktkarten (vCard) und Geostandorte nutzen bestimmte Textformate. Diese Endpunkte setzen den Payload-String für dich zusammen, sodass du ihn direkt als content an /api/qr/generate übergeben kannst.
Alle drei Endpunkte nehmen JSON an und geben JSON zurück. Es wird nichts gerendert – sie bauen nur Strings.
WLAN
POST /api/qr/content/wifi
{
"ssid": "MyNetwork",
"password": "supersecret",
"encryption": "WPA",
"hidden": false
}
Antwort:
{
"success": true,
"content": "WIFI:T:WPA;S:MyNetwork;P:supersecret;H:false;;"
}
encryption: WPA, WEP oder nopass.
vCard
POST /api/qr/content/vcard
{
"firstName": "Ada",
"lastName": "Lovelace",
"organization": "Analytical Engine Co.",
"title": "Programmer",
"phone": "+44 20 7946 0958",
"email": "ada@example.com",
"url": "https://adalovelace.example",
"address": "10 Downing St, London"
}
Antwort: ein vollständiger vCard-3.0-String, bereit zum Codieren.
Geo
POST /api/qr/content/geo
{
"latitude": 40.4168,
"longitude": -3.7038,
"query": "Plaza Mayor, Madrid"
}
Antwort:
{
"success": true,
"content": "geo:40.4168,-3.7038?q=Plaza%20Mayor%2C%20Madrid"
}
query ist optional – fügt eine Beschriftung hinzu, die Google Maps / Apple Maps lesen können.
Warum es sie gibt
Du könntest die Strings selbst bauen, aber die Formate haben Sonderfälle (Escaping in WLAN-Passwörtern, Zeilenumbruch in vCard, URI-Codierung bei Geo). Die Helfer erledigen das, damit ein Tippfehler nicht dazu führt, dass ein Kunde einen QR-Code bekommt, der „MyNetwork P:supersecret“ als SSID öffnet.
Muster
1. POST to /api/qr/content/{wifi|vcard|geo} → get the content string
2. POST that string as `content` to /api/qr/generate → get the QR
Du kannst den zusammengesetzten String auch direkt als content an den KI-Endpunkt übergeben, wenn die KI den WLAN-/vCard-/Geo-QR-Code gestalten soll.