Přeskočit na obsah

GDPR & ochrana osobních údajů

Ochrana soukromí od návrhu (Privacy by Design)

qr3.app je od základu navržen v souladu s GDPR:

  • Anonymizace IP adres — IP adresy jsou v Edge Workeru okamžitě převedeny na hashe SHA-256 (s denně rotující solí). Původní IP adresa se do databáze nikdy nedostane.
  • Zásady uchovávání dat (Retention Policies) — Data o skenování jsou automaticky mazána po uplynutí lhůty závislé na tarifu (Free: 7 dní, Pro: 90 dní, Business: 1 rok).
  • Minimalizace dat — Shromažďují se pouze data nezbytná pro provoz.

Privacy API

Přehled údajů (čl. 15 GDPR)

GET /v1/account/privacy — Vrací přehled všech uložených dat.

Terminál
curl https://qr3.app/v1/account/privacy \
-H "Authorization: Bearer qr3_sk_..."

Response:

{
"data": {
"workspace_id": "ws_xxx",
"stored_data": {
"qr_codes": { "count": 42, "oldest_at": "2026-03-01T..." },
"scan_records": { "count": 15000, "oldest_at": "2026-03-01T..." },
"api_keys": { "count": 2 },
"webhooks": { "count": 1 }
},
"your_rights": {
"access": "GET /v1/account/export",
"erasure": "DELETE /v1/account",
"contact": "[email protected]"
},
"data_processing": {
"legal_basis": "Contract performance (Art. 6(1)(b) GDPR)",
"sub_processors": [
{ "name": "Cloudflare, Inc.", "purpose": "CDN, edge computing, database" }
]
}
}
}

Export dat (čl. 20 GDPR — přenositelnost údajů)

GET /v1/account/export — Stáhne všechna data jako soubor JSON.

Terminál
curl https://qr3.app/v1/account/export \
-H "Authorization: Bearer qr3_sk_..." \
-o meine-daten.json

Export obsahuje:

  • Všechny QR kódy (včetně smazaných)
  • Agregované statistiky skenování (žádné surové hashe IP adres)
  • Časová razítka vytvoření a změny

Smazání účtu (čl. 17 GDPR — právo na být zapomenut)

DELETE /v1/accountNevratné smazání všech dat.

Terminál
curl -X DELETE https://qr3.app/v1/account \
-H "Authorization: Bearer qr3_sk_..."

Co se stane:

  1. Všechny QR kódy budou soft-deleted (archivovány)
  2. Všechny záznamy o skenování budou trvale smazány (PII)
  3. Všechny API klíče budou zneplatněny
  4. KV cache bude invalidována

Správa souhlasů

GET /v1/account/privacy/consents — Získat aktuální souhlasy.

POST /v1/account/privacy/consents — Aktualizovat souhlasy.

Terminál
# Aktuelle Einwilligungen abrufen
curl https://qr3.app/v1/account/privacy/consents \
-H "Authorization: Bearer qr3_sk_..."
# Marketing-E-Mails deaktivieren
curl -X POST https://qr3.app/v1/account/privacy/consents \
-H "Authorization: Bearer qr3_sk_..." \
-H "Content-Type: application/json" \
-d '{ "marketing_emails": false, "analytics": true, "product_updates": true }'

Pole souhlasu:

PoleVýchozíPopis
marketing_emailsfalseNewslettery a reklamní e-maily
analyticstrueAgregované statistiky používání
product_updatestrueNovinky o produktech a changelogy

Technická implementace GDPR

Anonymizace IP adres (čl. 25 GDPR)

HTTP Request → Cloudflare Edge Worker
CF-Connecting-IP Header → SHA-256(IP + täglicher Salt)
ip_hash (nicht reversibel) → D1 Datenbank
Original-IP wird NIEMALS gespeichert

Sůl rotuje každý den o půlnoci UTC. Díky tomu není ani při znalosti soli možná korelace IP adres mezi jednotlivými dny.

Uchovávání dat (automatizované)

Denně spouštěná cron úloha (purgeOldScans) maže data o skenování po uplynutí lhůty závislé na tarifu:

TarifUchovávání (Retention)
Free7 dní
Pro90 dní
Business / Agency1 rok
EnterpriseVlastní (SLA)

Zpracovatelská smlouva (DPA) subdodavatelů

Společnost Cloudflare, Inc. zpracovává data jako zpracovatel. Smlouva DPA je k dispozici na adrese cloudflare.com/cloudflare-customer-dpa.

Cloudflare zpracovává data na serverech v EU (Frankfurt). V platnosti jsou standardní smluvní doložky (SCC) podle čl. 46 GDPR.


Kontakt