Chiavi API utente
Se preferisci autenticarti con una chiave tua, emessa da /dashboard/keys, invece del proxy secret del marketplace di RapidAPI, questa pagina fa per te. Stesso motore, porta diversa.
I clienti del marketplace devono continuare a usare
X-RapidAPI-Proxy-Secretsuapi.qr-branding.com. Il gateway delle chiavi consumer si trova suqr-branding.com/api/v1/*e non interferisce mai con il canale marketplace.
URL di base
https://qr-branding.com/api/v1
Autenticazione
Invia la tua chiave a ogni richiesta:
X-API-Key: qrb_…
La chiave viene verificata all'edge (CF Pages) confrontandola con l'hash nel nostro database: il motore non vede mai la tua chiave in chiaro.
Se la chiave manca, è malformata o è stata revocata ricevi:
{ "success": false, "error": "Key not recognised, revoked, or malformed.", "code": "invalid_api_key" }
(codice di stato 401).
Requisito: piano Studio
L'API è una funzione di Studio. Tutte le richieste, non solo quelle IA, richiedono un pacchetto Studio attivo (acquistato meno di 12 mesi fa e non rimborsato). Se la chiave è valida ma il tuo account non ha Studio, il gateway risponde 402 con i link a questa pagina e ai prezzi:
{ "success": false, "error": "The QR Branding API is included with Studio. Buy a Studio pack at https://qr-branding.com/pricing to use your key.", "code": "studio_required", "docs": "https://qr-branding.com/docs/api/public-keys", "pricing": "https://qr-branding.com/pricing" }
Le generazioni IA sulle nostre chiavi LLM (POST /api/v1/qr/ai/generate/server) scalano inoltre un credito IA dal tuo pacchetto Studio; quando finiscono ricevi 402 out_of_api_credits con gli stessi link. Le altre chiamate non consumano crediti.
Endpoint disponibili
Il gateway inoltra al motore ogni percorso sotto /api/v1/*. Quindi:
| URL pubblico | Inoltrato a |
|---|---|
POST /api/v1/qr/generate | POST /api/qr/generate |
POST /api/v1/qr/ai/generate/server | POST /api/qr/ai/generate/server |
GET /api/v1/qr/templates | GET /api/qr/templates |
POST /api/v1/qr/templates/:id | POST /api/qr/templates/:id |
POST /api/v1/qr/content/:type | Helper di contenuto (wifi · vcard · geo) |
GET /api/v1/qr/ai/providers | GET /api/qr/ai/providers |
GET /api/v1/ping | GET /api/ping |
Corpi, strutture delle risposte e codici di errore sono identici a quelli degli endpoint del motore: i segnalibri alla documentazione restano validi.
Test rapido
curl -X POST https://qr-branding.com/api/v1/qr/generate \
-H "X-API-Key: qrb_your_key_here" \
-H "Content-Type: application/json" \
-d '{ "content": "https://yourbrand.com", "primaryColor": "#dcc28a", "backgroundColor": "#0a0b0e", "eccLevel": "H" }' \
--output qr.png --silent --write-out "%{http_code}\n"
Se ricevi un 200 e trovi un qr.png sul disco, hai finito.
Limiti
Le chiavi utente hanno i limiti per cliente del canale consumer:
| Tipo di chiamata | Al minuto |
|---|---|
| Generale | 120 |
Generazione (/qr/generate, /qr/templates/:id) | 60 |
IA (/qr/ai/generate/server) | 30 |
Se raggiungi un limite ricevi un 429 con l'intestazione Retry-After. I dettagli e i tetti globali sono nella Panoramica dell'API.
Caricamenti multipart
Il gateway accetta solo JSON. Per caricare logo / sfondo in binario usa i
campi base64 (logoBase64, backgroundImageBase64) invece di
multipart/form-data. Potremmo aggiungere il supporto multipart nativo nella v2.
Rotazione
Genera una nuova chiave, distribuiscila e poi revoca quella vecchia. Il testo in chiaro viene mostrato una sola volta: conservalo nel tuo gestore di segreti.
# in your CI / secrets tool
QR_BRANDING_KEY=qrb_new_key_here
Quando la vecchia chiave riceve un 401 invalid_api_key dal gateway, significa
che tutti i tuoi sistemi sono migrati e puoi confermare che la rotazione è riuscita.