DSGVO-Check · API

DSGVO-Check REST API

Pruefen Sie deutsche Websites programmatisch auf typische DSGVO-Verstoesse. Kostenlos, ohne Anmeldung, CORS-enabled, MIT-Open-Source.

Status: Production Auth: keine Rate-Limit: ~100 req/min pro IP Quelle: GitHub

Endpoints

MethodePfadZweck
POST/api/checkJSON-Body mit URL pruefen
GET/api/check?url=...Quick-Check via Query-Parameter
OPTIONS/api/checkCORS-Preflight

Request

cURL

curl -X POST https://www.webwerk-muc.de/api/check \\
  -H "Content-Type: application/json" \\
  -d '{"url":"https://example.de"}'

JavaScript / Fetch

const r = await fetch('https://www.webwerk-muc.de/api/check', {
  method: 'POST',
  headers: {'Content-Type': 'application/json'},
  body: JSON.stringify({url: 'https://example.de'})
});
const data = await r.json();

Python / requests

import requests
r = requests.post(
    'https://www.webwerk-muc.de/api/check',
    json={'url': 'https://example.de'},
    timeout=20,
)
data = r.json()

Response

{
  "ok": true,
  "url": "https://example.de/",
  "checked_at": "2026-05-27T02:21:13.767Z",
  "score": 64,
  "consent_vendor": null,
  "impressum_url": "https://example.de/impressum",
  "issues": [
    {
      "rule": "Google Fonts ohne lokale Einbindung",
      "rechtsgrundlage": "LG Muenchen I, 20 O 17493/20",
      "schweregrad": "SICHER",
      "fix": "Bunny Fonts oder lokale Einbindung"
    }
  ],
  "issue_count": 1,
  "classification": "SICHER_ABMAHNBAR"
}

Felder

FeldTypBedeutung
okbooleantrue wenn Check ausfuehrbar war (auch wenn Verstoesse gefunden)
urlstringfinale URL nach allen Redirects
score0-100DSGVO-Score; 100 = sauber, 0 = viele schwere Verstoesse
consent_vendorstring|nullErkanntes Consent-Tool im HTML (Cookiebot, Borlabs, etc.)
impressum_urlstring|nullGefundenes Impressum (oder null wenn keines auffindbar)
issuesarrayListe der gefundenen Verstoesse (rule, rechtsgrundlage, schweregrad, fix)
schweregradstringSICHER · WAHRSCHEINLICH · HINWEIS
classificationstringSICHER_ABMAHNBAR · WAHRSCHEINLICH · KEIN_OFFENSICHTLICHER_VERSTOSS

Was der Check erkennt

Was nicht erkannt wird

Transparenz vorab: dieser Check ist pattern-basiert, kein vollstaendiges Audit. Nicht erkannt werden:

Fuer ein vollstaendiges Audit: manuelle Pruefung als Festpreis-Paket.

Open Source & Self-Hosting

Komplette Worker-Quelle (eine Datei, ~200 Zeilen) auf GitHub: Ibrahimfarajk/dsgvo-checker. MIT-lizenziert.

Self-Host in ~30 Sekunden:

git clone https://github.com/Ibrahimfarajk/dsgvo-checker.git
cd dsgvo-checker
npx wrangler pages deploy . --project-name=dsgvo-check

Auf Cloudflare Free-Tier reichen 100.000 Checks pro Tag.

Rate-Limit & Fair-Use

Kein hartes Rate-Limit aktuell, aber bitte fair bleiben: max ~100 req/min pro Quell-IP. Wer mehr braucht, hostet bitte selbst (siehe oben) — das ist ja der ganze Sinn von Open-Source.

Lizenz & Verantwortung

Die API liefert Hinweise auf moegliche Verstoesse, keine Rechtsberatung. Bei konkreter Abmahnung — Anwalt fragen.

Fragen, Bug-Reports, neue Pattern-Vorschlaege: GitHub-Issues.