Перейти до вмісту

Огляд API

Рушій опубліковано як невеликий HTTP API. Є два способи автентифікації.

Два канали

1. RapidAPI Marketplace (наявні клієнти)

Викликайте https://api.qr-branding.com зі своїм секретом проксі RapidAPI. Ендпоінти ШІ використовують ваш власний ключ LLM або керований ендпоінт, якому ключ не потрібен. Усе працює так само, як в оригінальному Signet QR API.

2. Споживчі пакети кредитів (нове)

Купіть пакет на сторінці /pricing. Ваші ендпоінти ШІ використовують серверні ключі LLM (Groq / Gemini / OpenAI), а кредити списуються за кожну успішну генерацію. Редактор у фронтенді використовує цей канал прозоро.

Ендпоінти

МетодШляхПризначення
POST/api/qr/generateРендер QR з явного QrConfig.
POST/api/qr/ai/generateШІ маркетплейсу — власний ключ LLM.
POST/api/qr/ai/generate-managedКероване ШІ маркетплейсу — ключ LLM не потрібен.
POST/api/qr/ai/generate/serverСпоживчий ШІ — серверний ключ LLM, облік у кредитах.
GET/api/qr/templatesСписок із 118 готових шаблонів (за бажання ?category=…).
POST/api/qr/templates/{templateId}Рендер QR за ідентифікатором шаблону з необов’язковими перевизначеннями.
POST/api/qr/content/wifiПомічник: формує рядок вмісту для WiFi QR.
POST/api/qr/content/vcardПомічник: формує рядок вмісту vCard.
POST/api/qr/content/geoПомічник: формує рядок вмісту геолокації.
GET/api/qr/ai/providersСписок підтримуваних провайдерів і моделей LLM.
GET/api/pingПеревірка стану (анонімна).

Заголовки автентифікації

RapidAPI

X-RapidAPI-Proxy-Secret: <secret>

Внутрішній BFF (споживчий сайт)

X-Internal-Service-Secret: <secret>
X-Internal-Customer-Id:    <customer id>
X-Internal-Ts:             <unix seconds>
X-Internal-Signature:      <HMAC-SHA256(signing-key, "{customerId}.{ts}")>

TTL захисту від повторного відтворення: 60 секунд. Використовується всередині фронтенду Next.js — вручну ви їх ніколи не задаватимете.

Обгортка помилок

Структура кожної відповіді, відмінної від 2xx, стабільна:

{
  "success": false,
  "error": "Content length (5000) exceeds maximum allowed (4296 characters).",
  "code": "CONTENT_TOO_LONG",
  "field": "content"
}

field заповнюється, коли збій стосується конкретного вхідного параметра.

Ліміти запитів

РівеньЗа хвилинуПримітки
RapidAPI загальний60документація, ping, помічники
RapidAPI генерація30/api/qr/generate
RapidAPI ШІ15зовнішні виклики LLM
Споживчий загальний120на ідентифікатор клієнта
Споживча генерація60на ідентифікатор клієнта
Споживчий ШІ30на ідентифікатор клієнта

Є також глобальні обмеження на хвилину, що захищають безкоштовний рівень Azure. Якщо ви на них натрапите, отримаєте 429 із заголовком Retry-After.

Формати виводу

png (за замовчуванням, base64), jpg, svg, pdf, webp. Задайте "responseType": "binary", щоб завантажити файл напряму, а не отримувати base64 у JSON.