Saltar al contenido

Claves de API de usuario

Si prefieres autenticarte con tu propia clave, emitida desde /dashboard/keys, en lugar del proxy secret del marketplace de RapidAPI, esta página es para ti. El mismo motor, otra puerta.

Los clientes de Marketplace deben seguir usando X-RapidAPI-Proxy-Secret contra api.qr-branding.com. La pasarela de claves para consumidores vive en qr-branding.com/api/v1/* y nunca interfiere con el canal de Marketplace.

URL base

https://qr-branding.com/api/v1

Autenticación

Envía tu clave en cada petición:

X-API-Key: qrb_…

La clave se verifica en el edge (CF Pages) contra el hash guardado en nuestra base de datos: el motor nunca ve tu clave en claro.

Si la clave falta, está mal formada o se ha revocado, recibes:

{ "success": false, "error": "Key not recognised, revoked, or malformed.", "code": "invalid_api_key" }

(código de estado 401).

Requisito: plan Studio

La API es una función de Studio. Todas las peticiones, no solo las de IA, exigen un pack Studio activo (comprado hace menos de 12 meses y no reembolsado). Si la clave es válida pero tu cuenta no tiene Studio, la pasarela responde 402 con enlaces a esta página y a los precios:

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

Las generaciones con IA en nuestras claves de LLM (POST /api/v1/qr/ai/generate/server) descuentan además un crédito de IA de tu pack Studio; cuando se agotan, recibes 402 out_of_api_credits con los mismos enlaces. El resto de llamadas no gasta créditos.

Endpoints disponibles

La pasarela reenvía al motor cualquier ruta bajo /api/v1/*. Por tanto:

URL públicaSe reenvía a
POST /api/v1/qr/generatePOST /api/qr/generate
POST /api/v1/qr/ai/generate/serverPOST /api/qr/ai/generate/server
GET /api/v1/qr/templatesGET /api/qr/templates
POST /api/v1/qr/templates/:idPOST /api/qr/templates/:id
POST /api/v1/qr/content/:typeUtilidades de contenido (wifi · vcard · geo)
GET /api/v1/qr/ai/providersGET /api/qr/ai/providers
GET /api/v1/pingGET /api/ping

Los cuerpos, las formas de respuesta y los códigos de error son idénticos a los de los endpoints del motor: conserva tus marcadores de la documentación.

Prueba rápida

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"

Si recibes un 200 y tienes un qr.png en disco, ya está.

Límites

Las claves de usuario tienen los límites por cliente del canal de consumidor:

Tipo de llamadaPor minuto
General120
Generación (/qr/generate, /qr/templates/:id)60
IA (/qr/ai/generate/server)30

Si alcanzas un límite, recibes un 429 con la cabecera Retry-After. Los detalles y los topes globales están en Visión general de la API.

Subidas multipart

La pasarela solo acepta JSON. Para subir el logo o el fondo como binario, usa los campos base64 (logoBase64, backgroundImageBase64) en lugar de multipart/form-data. Puede que añadamos soporte multipart nativo en la v2.

Rotación

Genera una clave nueva, despliégala y después revoca la antigua. La clave en claro solo se muestra una vez: guárdala en tu gestor de secretos.

# in your CI / secrets tool
QR_BRANDING_KEY=qrb_new_key_here

Cuando la clave antigua reciba un 401 invalid_api_key de la pasarela, significa que toda tu infraestructura ya ha migrado y puedes dar por buena la rotación.