Uwierzytelnianie
qr3.app używa kluczy API (Bearer token) do uwierzytelniania. Nie ma przepływów OAuth — wystarczy wygenerować klucz i natychmiast go użyć.
Tworzenie klucza API
- Zaloguj się na stronie app.qr3.app
- Przejdź do Ustawienia → Klucze API
- Kliknij Nowy klucz
- Wybierz żądane uprawnienia (zakresy)
- Skopiuj klucz — zostanie wyświetlony tylko raz!
Typy kluczy
| Typ | Prefiks | Zastosowanie |
|---|
| Secret Key | qr3_sk_ | Po stronie serwera (API, backend) |
| Publishable Key | qr3_pk_ | Po stronie klienta (tylko do odczytu) |
| Test Key | qr3_test_sk_ | Programowanie (własne limity żądań) |
Użycie
Nagłówek HTTP
Authorization: Bearer qr3_sk_your_key_here
cURL
curl https://qr3.app/v1/codes \
-H "Authorization: Bearer qr3_sk_your_key_here"
TypeScript SDK
import { QR3 } from "@qr3/sdk";
const client = new QR3({ apiKey: "qr3_sk_your_key_here" });
const codes = await client.codes.list();
CLI
export QR3_API_KEY=qr3_sk_your_key_here
Limity żądań
| Plan | Żądania/minutę | Nagłówki odpowiedzi |
|---|
| Free | 30 | X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset |
| Pro | 120 | ← |
| Business | 300 | ← |
| Agency | 600 | ← |
W przypadku przekroczenia limitu API zwraca kod HTTP 429:
"type": "https://docs.qr3.app/errors/rate-limited",
"title": "Too Many Requests",
"detail": "Rate limit of 30 requests/minute exceeded"
Zakresy
| Zakres | Opis |
|---|
* | Pełny dostęp |
codes:read | Odczyt kodów QR |
codes:write | Tworzenie i edycja kodów QR |
scans:read | Odczyt statystyk skanowania |
webhooks:write | Konfiguracja webhooków |
account:read | Odczyt informacji o koncie |