Integrujte QRflex do svého systému
Kompletní REST API, webhooky a hotové konektory. Automatizujte tvorbu kódů, sledujte skeny a propojte QRflex s nástroji, které už používáte.
Co s API a webhooky uděláte
Nemusíte být vývojář. Většinu scénářů zvládnete pár řádky kódu, nebo úplně bez něj přes Zapier a Make.
Automatická tvorba kódů
Generujte QR kódy programově z objednávkového systému, CRM nebo e-shopu.
Kampaňové přesměrování
Měňte cíl QR kódu za běhu a sledujte, která kampaň přinesla kolik skenů.
Real-time notifikace
Webhooky upozorní váš systém okamžitě při každém skenu nebo změně kódu.
Hromadné operace
Importujte nebo exportujte tisíce kódů najednou přes batch API.
Hotové integrace
Propojte QRflex s nástroji, které už používáte. Stačí se přihlásit a vybrat, co se má stát.
Zapier
Napojte se na 6 000+ aplikací bez jediného řádku kódu.
Make (Integromat)
Vizuální automatizace s podmínkami a větvením.
Slack
Upozornění do kanálu při novém skenu nebo překročení limitu.
Google Analytics 4
Předávejte UTM parametry rovnou do GA4 bez dalšího nastavení.
Google Sheets
Exportujte statistiky skenů automaticky do tabulky.
Vlastní webhook
Libovolný HTTP endpoint — váš server, vaše pravidla.
První požadavek za pět minut
-
1
Vytvořte API klíč
V nastavení účtu vygenerujte klíč a přidělte mu potřebná oprávnění (čtení, zápis nebo oboje).
-
2
Pošlete požadavek
Přidejte hlavičku Authorization: Bearer <váš-klíč> a pošlete POST na /api/v1/qr-codes.
-
3
Zkontrolujte odpověď
API vrátí 201 Created s URL nového kódu a jeho ID pro další operace.
curl -X POST https://qrflex.io/api/v1/qr-codes \
-H "Authorization: Bearer qrf_your_key" \
-H "Content-Type: application/json" \
-d '{"type":"url","target":"https://example.com","name":"My QR"}'
$ch = curl_init('https://qrflex.io/api/v1/qr-codes');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer qrf_your_key',
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'type' => 'url',
'target' => 'https://example.com',
'name' => 'My QR',
]),
CURLOPT_RETURNTRANSFER => true,
]);
$response = curl_exec($ch);
const response = await fetch('https://qrflex.io/api/v1/qr-codes', {
method: 'POST',
headers: {
'Authorization': 'Bearer qrf_your_key',
'Content-Type': 'application/json',
},
body: JSON.stringify({
type: 'url',
target: 'https://example.com',
name: 'My QR',
}),
});
const data = await response.json();
import requests
response = requests.post(
'https://qrflex.io/api/v1/qr-codes',
headers={
'Authorization': 'Bearer qrf_your_key',
'Content-Type': 'application/json',
},
json={
'type': 'url',
'target': 'https://example.com',
'name': 'My QR',
},
)
data = response.json()
Co API umí
Všechny cesty začínají /api/v1
| Skupina | Metody | Popis |
|---|---|---|
/qr-codes |
GET POST PATCH DELETE | QR kódy — Vytvoření, čtení, úprava a smazání dynamických QR kódů. |
/campaigns |
GET POST PATCH | Kampaně — Správa marketingových kampaní a jejich UTM parametrů. |
/scans |
GET | Statistiky skenů — Agregované i detailní data o skenech (čas, místo, zařízení). |
/webhooks |
GET POST DELETE | Webhooky — Registrace a správa webhookových endpointů. |
/api-keys |
GET POST DELETE | API klíče — Vytvoření, výpis a odvolání API klíčů. |
/workspace |
GET | Workspace — Čtení informací o workspace a jeho limitech. |
/export |
GET | Export — Hromadný export kódů a statistik ve formátu CSV nebo JSON. |
Události přijdou samy
Zadejte adresu, na kterou má QRflex posílat zprávy, a vyberte události. Každá zpráva je podepsaná (HMAC-SHA256, Standard Webhooks) a při výpadku vašeho serveru ji pošleme znovu.
Podpis ověříte v hlavičce webhook-signature, duplicitní doručení poznáte podle webhook-id.
{
"id": "msg_01xyz",
"type": "qr_code.scanned",
"timestamp": "2026-09-25T14:23:10Z",
"data": {
"qr_code_id": "qr_abc123",
"scan_id": "scan_def456",
"target": "https://example.com",
"location": {
"country": "CZ",
"city": "Praha"
},
"device": "mobile"
}
}
Předvídatelné chování v každém endpointu
Stejná pravidla pro přihlášení, stránkování, chyby i limity. Integraci napíšete jednou.
Bearer token
Každý požadavek nese hlavičku Authorization: Bearer.
Authorization: Bearer qrf_...
Stránkování
Výsledky jsou stránkované přes cursor. Maximálně 100 položek na stránku.
?limit=50&cursor=eyJpZCI6...
HTTP stavové kódy
Standardní kódy: 200 OK, 201 Created, 400 Bad Request, 401 Unauthorized, 429 Too Many Requests.
HTTP 429 Too Many Requests
Rate limiting
Limit 1 000 požadavků za minutu na API klíč. Hlavičky X-RateLimit-* vás informují o zbývajícím počtu.
X-RateLimit-Remaining: 843
JSON všude
Požadavky i odpovědi jsou vždy application/json (nebo application/problem+json u chyb).
Content-Type: application/json
Idempotentní požadavky
GET a DELETE jsou idempotentní. Pro PUT platí: stejná data = stejný výsledek.
Idempotency-Key: uuid-v4
Srozumitelné chyby
Chyby přicházejí ve standardním formátu application/problem+json. Popis je česky, slovensky nebo anglicky a u validace uvidíte, které pole je špatně.
{
"type": "https://tools.ietf.org/html/rfc9110#section-15.5.1",
"title": "Validation failed",
"status": 400,
"detail": "Pole target je povinné.",
"violations": [
{
"field": "target",
"message": "Toto pole nesmí být prázdné."
}
]
}
Klíče a data pod kontrolou
Scoped API klíče
Každý klíč má jen ta oprávnění, která mu přidělíte. Čtení, zápis nebo oboje zvlášť.
Odvolání klíče
Kompromitovaný klíč zneplatníte jediným klikem bez dopadu na ostatní klíče.
HTTPS everywhere
Veškerá komunikace probíhá výhradně přes TLS 1.2+. HTTP požadavky jsou přesměrovány.
Data v EU
Servery stojí v Německu (Frankfurt). Vaše data nikdy neopustí Evropskou unii.
Potřebujete pomoct s napojením?
Kompletní reference s ukázkami v curl, PHP, JavaScriptu a Pythonu. Nebo nám napište.