Preskočiť na obsah

Prehľad API

Prehľad API

REST API pre qr3.app je dostupná na adrese https://qr3.app/v1/.

Verziovanie

API je verziovaná prostredníctvom cesty URL (/v1/). Zmeny spôsobujúce nekompatibilitu (breaking changes) vždy vedú k novej hlavnej verzii.

Formát požiadaviek

  • Content-Type: application/json
  • Autentifikácia: Authorization: Bearer qr3_sk_xxx
  • Idempotencia: POST požiadavky môžu byť zabezpečené ako idempotentné pomocou hlavičky Idempotency-Key: <uuid>

Formát odpovedí

Všetky úspešné odpovede vracajú JSON:

{
"id": "qr_abc123",
"type": "url",
"url": "https://example.com",
"short_url": "https://qr3.app/r7f3Kx",
"created_at": "2026-03-15T10:00:00.000Z"
}

Zoznamové odpovede majú vždy štruktúru meta.pagination:

{
"data": [...],
"meta": {
"request_id": "req_xxx",
"pagination": {
"has_more": true,
"next_cursor": "qr_abc",
"total_count": 142
}
}
}

Formát chýb (RFC 7807)

Všetky chyby sa riadia štandardom RFC 7807 Problem Details:

{
"type": "https://docs.qr3.app/errors/not-found",
"title": "Not Found",
"status": 404,
"detail": "QR code qr_xxx not found",
"instance": "/v1/codes/qr_xxx"
}
StatusTyp chybyPopis
400bad-requestNeplatný JSON alebo chýbajúce povinné polia
401authenticationChýbajúci alebo neplatný API kľúč
403forbiddenChýbajúce oprávnenie pre tento zdroj
404not-foundZdroj nebol nájdený
409conflictKonflikt v Idempotency-Key
422validation-errorChybné vstupné údaje (s polom errors)
429rate-limitedPrekročený limit požiadaviek (Rate-Limit)
500internalInterná chyba servera

Stránkovanie

API používa stránkovanie založené na kurzore (cursor-based pagination):

Terminal window
# Erste Seite
GET /v1/codes?limit=20
# Nächste Seite
GET /v1/codes?limit=20&cursor=qr_lastid

Limity požiadaviek (Rate Limits)

Každá odpoveď obsahuje:

X-RateLimit-Limit: 30
X-RateLimit-Remaining: 28
X-RateLimit-Reset: 1742040120

Interaktívna API referencia

Otestujte všetky koncové body (endpoints) priamo v prehliadači:

→ Otvoriť API referenciu (Scalar, interaktívne, s možnosťou vyskúšania Try-it-out)

DPP-Contract (Fáza 4a)

Pre pracovný postup batérií (battery workflow) qr3.app dodatočne dokumentuje tieto trasy:

  • POST /v1/dpp
  • GET /v1/dpp
  • GET /v1/dpp/:id
  • POST /v1/dpp/validate
  • GET /v1/dpp/:id/qr.svg
  • GET /v1/dpp/:id/qr.png
  • GET /v1/dpp/:id/qr.pdf
  • GET /v1/dpp/:id/qr.eps
  • GET /01/...
  • GET /dpp/:gtin/:serial?lot=...

Stránky nástenky (Dashboard), SDKs a táto dokumentácia používajú rovnakú dátovú zmluvu (data contract).