Vai al contenuto

POST /api/qr/generate

Genera un codice QR da una configurazione esplicita. È l'endpoint di rendering principale: sia l'interfaccia dell'editor sia l'endpoint IA passano da qui.

Richiesta

Content-Type: application/json oppure multipart/form-data (per caricare logo / sfondo in binario).

Struttura del corpo: un oggetto QrConfig.

Esempio minimo:

Caricamento multipart (logo da file)

curl -X POST https://api.qr-branding.com/api/qr/generate \
  -H "X-RapidAPI-Proxy-Secret: <secret>" \
  -F 'config={"content":"https://yourbrand.com","logoSizePercent":18,"eccLevel":"H"}' \
  -F "logoFile=@./brand-mark.png"

Il campo config è una stringa codificata in JSON. logoFile e backgroundFile sono parti binarie (PNG / JPG / GIF / BMP / WebP fino a 10 MB).

Risposta (modalità base64, predefinita)

{
  "success": true,
  "qrBase64": "iVBORw0KGgoAAAANSUhEUgAA…",
  "format": "png",
  "contentType": "image/png",
  "sizeBytes": 38291
}

Risposta (modalità binaria)

{ "responseType": "binary" }

Restituisce i byte grezzi del file con il Content-Type appropriato e Content-Disposition: attachment; filename="qrcode.png".

Convalida

Il motore esegue l'intera pipeline della garanzia di scansione. Motivi di rifiuto frequenti:

CodiceSignificatoSoluzione
CONTENT_TOO_LONGStringa codificata > 4296 caratteriAccorciala / usa un URL shortener
LOW_CONTRASTprimo piano vs sfondo < 4:1Scegli un primo piano più scuro o uno sfondo più chiaro
LOGO_TOO_LARGElogoSizePercent > 25 con ECC < HPassa a H o riduci il logo
INVALID_HEXColore non in formato #RGB, #RRGGBB, #RRGGBBAACorreggi il colore
INVALID_LLM_MODELSolo sull'endpoint IAVedi Modalità IA

Vedi anche