Scan-Fakten als JSON anzeigen
{
"schema": "https://saferpage.de/schemas/public-scan-facts.v1",
"claim_boundary": "Öffentliche Rohdaten enthalten nur Scan-Fakten, Statuswerte, Evidence-Grenzen und feste Detail-/Hintergrund-Links. Betreiber-Hintergrund, Planungen, Checklisten, Code und allgemeine Empfehlungen sind ausgelagert.",
"current_evidence_policy": {
"schema": "https://saferpage.de/schemas/public-scan-current-evidence-policy.v1",
"status": "current_scan_fields_only",
"summary": "Der Fakten-JSON exportiert nur Felder, die im gespeicherten aktuellen Scan wirklich vorhanden sind. Fehlende neue Evidence wird nicht aus alten Testergebnisformaten nachgebaut.",
"guardrails": [
"Keine synthetischen Boundary-Fallbacks fuer alte Scans",
"Keine Nachbewertung alter Testergebnisse im Fakten-JSON",
"Keine Betreiber-Empfehlung im Testresult-JSON"
]
},
"host": "abcitydienst.ch",
"normalized_url": "https://abcitydienst.ch/",
"score": 0,
"verdict": {
"color": "red",
"label": "riskant",
"score": 0
},
"scan_id": "5b0dc7b3-0fd0-4c2e-9e94-8723bd7698a3",
"created_at": "2026-06-15 19:19:14.751642+02",
"evidence": {
"dns": {
"ok": true,
"addresses": [
"136.243.225.185",
"2a01:4f8:212:1719::29"
],
"duration_ms": 20
},
"tls": {
"ok": true,
"cipher": "TLS_AES_256_GCM_SHA384",
"issuer": [
[
[
"countryName",
"US"
]
],
[
[
"organizationName",
"Let's Encrypt"
]
],
[
[
"commonName",
"R12"
]
]
],
"subject": [
[
[
"commonName",
"abcitydienst.ch"
]
]
],
"version": "TLSv1.3",
"not_after": "Aug 10 06:13:46 2026 GMT",
"hostname_matches": true,
"days_until_expiry": 55,
"subject_alt_names": [
"abcitydienst.ch",
"www.abcitydienst.ch"
],
"issuer_common_name": "R12"
},
"http": {
"ok": true,
"status": 200,
"headers": {
"date": "Mon, 15 Jun 2026 17:19:06 GMT",
"server": "Apache",
"upgrade": "h2",
"connection": "Upgrade, close",
"content-type": "text/html; charset=UTF-8",
"cache-control": "max-age=10, public",
"transfer-encoding": "chunked",
"strict-transport-security": "max-age=63072000; includeSubDomains; preload"
},
"body_size": 14539,
"final_url": "https://www.abcitydienst.ch/Schluesseldienst/",
"duration_ms": 680
},
"scanner": {
"bot_url": "https://saferpage.de/bot",
"context": "manual",
"user_agent": "SaferPageBot/0.2 (+https://saferpage.de/bot; passive website safety check; no attack tests)",
"default_user_agent": "SaferPageBot/0.2 (+https://saferpage.de/bot; passive website safety check; no attack tests)"
},
"domain_records": {
"mx": true,
"caa": false,
"spf": true,
"dmarc": false,
"dnssec": false
},
"googlebot_http": {
"ok": true,
"status": 200,
"headers": {
"date": "Mon, 15 Jun 2026 17:19:07 GMT",
"server": "Apache",
"upgrade": "h2",
"connection": "Upgrade, close",
"content-type": "text/html; charset=UTF-8",
"cache-control": "max-age=10, public",
"transfer-encoding": "chunked",
"strict-transport-security": "max-age=63072000; includeSubDomains; preload"
},
"body_size": 14539,
"final_url": "https://www.abcitydienst.ch/Schluesseldienst/",
"duration_ms": 21
},
"ai_search_policy_evidence": {
"files": [
{
"id": "robots_txt",
"url": "https://www.abcitydienst.ch/robots.txt",
"label": "robots.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 30,
"http_status": 301,
"relevant_lines": []
},
{
"id": "llms_txt",
"url": "https://www.abcitydienst.ch/llms.txt",
"label": "llms.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"relevant_lines": []
},
{
"id": "ai_txt",
"url": "https://www.abcitydienst.ch/.well-known/ai.txt",
"label": "AI Policy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"relevant_lines": []
},
{
"id": "ai_policy_txt",
"url": "https://www.abcitydienst.ch/.well-known/ai-policy.txt",
"label": "AI Policy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"relevant_lines": []
},
{
"id": "ward_txt",
"url": "https://www.abcitydienst.ch/.well-known/ward.txt",
"label": "WARD Policy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"relevant_lines": []
}
],
"origin": "https://www.abcitydienst.ch",
"schema": "https://saferpage.de/schemas/ai-search-policy-evidence.v1",
"status": "checked",
"metrics": {
"file_count": 5,
"found_file_count": 0,
"policy_file_count": 0,
"explicit_ai_bot_count": 0
},
"summary": "0 von 5 Policy-Datei(en) gefunden; 0 explizite KI-Bot-Regel(n) in robots.txt.",
"available": true,
"guardrails": [
"Nur feste Same-Origin-Policy-Dateien",
"Keine Off-Host-Redirects",
"64-KB-Body-Limit",
"Öffentlich nur Hash, Status und kurze relevante Zeilen"
],
"known_ai_bots": [
"GPTBot",
"ChatGPT-User",
"Google-Extended",
"ClaudeBot",
"PerplexityBot",
"CCBot"
],
"explicit_ai_bots": [],
"policy_file_count": 0,
"llms_ward_policy_status": "not_publicly_verified",
"robots_ai_policy_status": "robots_missing"
},
"adtech_transparency_evidence": {
"files": [
{
"id": "ads_txt",
"url": "https://www.abcitydienst.ch/ads.txt",
"label": "ads.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"ads_txt_policy": [],
"relevant_lines": [],
"sellers_json_policy": []
},
{
"id": "app_ads_txt",
"url": "https://www.abcitydienst.ch/app-ads.txt",
"label": "app-ads.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"ads_txt_policy": [],
"relevant_lines": [],
"sellers_json_policy": []
},
{
"id": "sellers_json",
"url": "https://www.abcitydienst.ch/sellers.json",
"label": "sellers.json",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"ads_txt_policy": [],
"relevant_lines": [],
"sellers_json_policy": []
}
],
"origin": "https://www.abcitydienst.ch",
"schema": "https://saferpage.de/schemas/adtech-transparency-evidence.v1",
"status": "checked",
"metrics": {
"file_count": 3,
"direct_count": 0,
"reseller_count": 0,
"found_file_count": 0,
"ads_txt_entry_count": 0,
"exchange_domain_count": 0,
"app_ads_txt_entry_count": 0,
"sellers_json_seller_count": 0
},
"summary": "0 von 3 AdTech-Transparenzdatei(en) gefunden; 0 DIRECT- und 0 RESELLER-Zeile(n).",
"available": true,
"guardrails": [
"Nur feste Same-Origin-AdTech-Dateien",
"Keine Off-Host-Redirects",
"64-KB-Body-Limit",
"Öffentlich nur Hash, Status, Zähler und kurze relevante Zeilen"
],
"direct_count": 0,
"ads_txt_found": false,
"reseller_count": 0,
"app_ads_txt_found": false,
"sellers_json_found": false,
"ads_txt_entry_count": 0,
"exchange_domain_count": 0,
"sellers_json_parse_ok": false,
"app_ads_txt_entry_count": 0,
"sellers_json_seller_count": 0
},
"security_trust_policy_evidence": {
"files": [
{
"id": "security_txt",
"url": "https://www.abcitydienst.ch/.well-known/security.txt",
"label": "security.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"relevant_lines": [],
"security_txt_policy": []
},
{
"id": "security_txt_legacy",
"url": "https://www.abcitydienst.ch/security.txt",
"label": "security.txt legacy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"relevant_lines": [],
"security_txt_policy": []
}
],
"origin": "https://www.abcitydienst.ch",
"schema": "https://saferpage.de/schemas/security-trust-policy-evidence.v1",
"status": "checked",
"metrics": {
"file_count": 2,
"field_count": 0,
"contact_count": 0,
"found_file_count": 0,
"preferred_well_known_found": 0
},
"summary": "0 von 2 security.txt-Ziel(en) gefunden; 0 Kontaktfeld(er), 0 strukturierte Feld(er).",
"available": true,
"guardrails": [
"Nur feste Same-Origin-security.txt-Ziele",
"Keine Off-Host-Redirects",
"64-KB-Body-Limit",
"Öffentlich nur Hash, Status und kurze relevante Zeilen"
],
"field_count": 0,
"contact_count": 0,
"fields_present": [],
"policy_present": false,
"expires_present": false,
"encryption_present": false,
"security_txt_found": false,
"preferred_well_known_found": false
}
},
"findings": [
{
"id": "known_vulnerability_advisory",
"title": "CVE-2020-11023: Potential XSS vulnerability in jQuery",
"public": true,
"version": "3.1.1",
"audience": "nutzer",
"category": "vulnerability",
"severity": "critical",
"confirmed": true,
"technology": "jQuery",
"advisory_id": "CVE-2020-11023",
"user_importance": 135,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "known_vulnerability_advisory",
"title": "CVE-2019-11358: XSS in jQuery as used in Drupal, Backdrop CMS, and other products",
"public": true,
"version": "3.1.1",
"audience": "nutzer",
"category": "vulnerability",
"severity": "warning",
"confirmed": true,
"technology": "jQuery",
"advisory_id": "CVE-2019-11358",
"user_importance": 135,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "known_vulnerability_advisory",
"title": "CVE-2020-11022: Potential XSS vulnerability in jQuery",
"public": true,
"version": "3.1.1",
"audience": "nutzer",
"category": "vulnerability",
"severity": "warning",
"confirmed": true,
"technology": "jQuery",
"advisory_id": "CVE-2020-11022",
"user_importance": 135,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "imprint_missing",
"title": "Kein Impressum-Link erkannt",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 125,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "data_entry_privacy_context_missing",
"title": "Dateneingabe ohne klaren Datenschutzkontext",
"public": true,
"audience": "nutzer",
"category": "data_entry",
"severity": "warning",
"user_importance": 122,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "third_party_full_referrer_leak",
"count": 2,
"title": "Drittanbieter können vollen Referrer-Kontext erhalten",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 120,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "tracking_pixel_detected",
"count": 1,
"title": "Tracking-Pixel oder pixelnahe Requests erkannt",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "info",
"user_importance": 119,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "sampled_form_privacy_context_missing",
"title": "Formular-Unterseite ohne klaren Datenschutzkontext",
"public": true,
"audience": "nutzer",
"category": "crawl",
"severity": "warning",
"user_importance": 96,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "important_pages_not_discovered",
"title": "Wichtige Betreiberseiten nicht vollständig in der Linkstruktur gefunden",
"public": true,
"audience": "nutzer",
"category": "crawl",
"severity": "warning",
"user_importance": 88,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "external_script_without_sri",
"count": 2,
"title": "Externe Skripte ohne Subresource Integrity",
"public": true,
"audience": "nutzer",
"category": "security_headers",
"severity": "info",
"user_importance": 84,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "image_alt_missing",
"count": 10,
"title": "Bilder ohne Alternativtext",
"public": true,
"audience": "nutzer",
"category": "accessibility",
"severity": "info",
"user_importance": 82,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "missing_csp",
"title": "Content-Security-Policy fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "warning",
"user_importance": 72,
"importance_label": "Technischer Hinweis"
},
{
"id": "missing_x_frame_options",
"title": "X-Frame-Options fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "warning",
"user_importance": 70,
"importance_label": "Technischer Hinweis"
},
{
"id": "missing_x_content_type_options",
"title": "X-Content-Type-Options fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "warning",
"user_importance": 70,
"importance_label": "Technischer Hinweis"
},
{
"id": "missing_cross_origin_embedder_policy",
"title": "Cross-Origin-Embedder-Policy fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "info",
"user_importance": 68,
"importance_label": "Technischer Hinweis"
},
{
"id": "missing_cross_origin_opener_policy",
"title": "Cross-Origin-Opener-Policy fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "info",
"user_importance": 66,
"importance_label": "Technischer Hinweis"
},
{
"id": "missing_cross_origin_resource_policy",
"title": "Cross-Origin-Resource-Policy fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "info",
"user_importance": 64,
"importance_label": "Technischer Hinweis"
},
{
"id": "missing_referrer_policy",
"title": "Referrer-Policy fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "info",
"user_importance": 40,
"importance_label": "Technischer Hinweis"
},
{
"id": "missing_permissions_policy",
"title": "Permissions-Policy fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "info",
"user_importance": 40,
"importance_label": "Technischer Hinweis"
},
{
"id": "unknown_vendor_jurisdiction",
"title": "Anbieter-Jurisdiktion nicht klar ableitbar",
"public": true,
"audience": "betreiber",
"category": "privacy",
"severity": "info",
"user_importance": 30,
"importance_label": "Technischer Hinweis"
}
],
"audit_modules": [
{
"id": "security_tls",
"color": "red",
"score": 46,
"title": "Sicherheit, TLS & Header",
"source": "DNS, TLS, HTTP-Status, Zertifikat und Security-Header",
"status": "kritisch",
"evidence": "2 Infrastruktur-Hinweis(e), Security-Header: 1/9 vorhanden, 8 fehlen, externe Skript-Hosts: 2."
},
{
"id": "privacy_consent",
"color": "red",
"score": 48,
"title": "Datenschutz, Cookies & Consent",
"source": "Browser, HTTP-Header, HTML und Consent-/Cookie-Heuristik",
"status": "kritisch",
"evidence": "0 Tracking-Script(s), 0 Cookie(s) vor Einwilligung, 0 Tracking-Cookie(s), Ablehnen-Option: nein, Consent-Audit: 48."
},
{
"id": "site_coverage",
"color": "orange",
"score": 52,
"title": "Seitenabdeckung & Crawl",
"source": "Startseiten-Links, Compliance-Links und begrenzter interner Zusatzabruf",
"status": "auffällig",
"evidence": "30 interne Linkziele erkannt, 4 priorisierte Unterseite(n) abgerufen."
},
{
"id": "operator_transparency",
"color": "orange",
"score": 55,
"title": "Impressum, Kontakt & Datenschutzerklärung",
"source": "Deutschsprachige Betreiber- und Datenschutzhinweis-Erkennung",
"status": "auffällig",
"evidence": "Impressum: nein, Datenschutz: nein, Kontakt: ja."
},
{
"id": "accessibility_usability",
"color": "orange",
"score": 68,
"title": "Barrierefreiheit & Usability",
"source": "Passives HTML-Sample: Bilder, Formulare, Buttons, Sprache, Headings und Viewport",
"status": "auffällig",
"evidence": "10 Bild(er) ohne alt, 0 Formularfeld(er) ohne Beschriftung, 0 Button(s) ohne Namen."
},
{
"id": "forms_payments",
"color": "yellow",
"score": 75,
"title": "Formulare, Login & Zahlung",
"source": "HTML-Formulare, Eingabefelder, Zahlungsanbieter und Kontextlinks",
"status": "prüfen",
"evidence": "Aus diesem Rohfeld wird im Testresult keine zusätzliche Scan-Feststellung abgeleitet; Betreiberkontext und Umsetzungshinweise sind ausgelagert."
},
{
"id": "browser_evidence",
"color": "yellow",
"score": 76,
"title": "Browser-Nachweis",
"source": "Headless Chromium mit Screenshot- und Request-Telemetrie",
"status": "prüfen",
"evidence": "24 Request(s), 2 Drittanbieter-Domain(s), davon 0 datenschutzrelevant, 0 Browser-Cookie(s), Transfer-Prüfbedarf: 0, Referrer-/URL-Leaks: 1, Fingerprinting-/Replay-Hinweise: 0."
},
{
"id": "referrer_url_leaks",
"color": "yellow",
"score": 76,
"title": "Referrer & URL-Leaks",
"source": "Chromium-Request-Telemetrie ohne gespeicherte Parameterwerte",
"status": "prüfen",
"evidence": "1 Drittanbieter-Domain(s) mit Referrer-/URL-Leak-Prüfbedarf, 0 sensible Query-Kontexte."
},
{
"id": "tracking_pixels_beacons",
"color": "green",
"score": 90,
"title": "Tracking-Pixel & Beacons",
"source": "HTML-Pixel, Link-Ping-Attribute, Chromium-Requests und Browser-API-Instrumentierung",
"status": "unauffällig",
"evidence": "1 Pixel-/Bildtracking-Hinweis(e), 0 Beacon-/Telemetry-Hinweis(e), 0 Link-Ping(s)."
},
{
"id": "script_supply_chain",
"color": "green",
"score": 92,
"title": "Externe Skripte & SRI",
"source": "HTML-Script-Tags, Anbieterklassifikation und SRI-Attribute",
"status": "unauffällig",
"evidence": "2 externe Skript(e) von 2 Host(s), 2 ohne SRI, 0 Tracking-/Tag-nahe Skript(e)."
},
{
"id": "consent_journey",
"color": "green",
"score": 100,
"title": "Consent-Journey-Matrix",
"source": "Chromium-Zustände: Erstaufruf, Reject, Accept und GPC",
"status": "unauffällig",
"evidence": "Consent-Journey: 0 neue Datenschutz-Domain(s) nach Ablehnen, 0 nach Akzeptieren, 0 im GPC-Aufruf."
},
{
"id": "cookie_inventory",
"color": "green",
"score": 100,
"title": "Cookie-Inventar",
"source": "HTTP-Set-Cookie und Chromium-Cookies beim ersten Seitenaufruf",
"status": "unauffällig",
"evidence": "0 Cookie(s), 0 Tracking-/Werbe-Cookie(s), 0 Drittanbieter-Cookie(s), 0 langlebig, 0 sehr lang."
},
{
"id": "embedded_content",
"color": "green",
"score": 100,
"title": "Externe Inhalte & Widgets",
"source": "HTML-Embeds und Chromium-Drittanbieter-Requests",
"status": "unauffällig",
"evidence": "0 externe Embed-/Widget-Dienst(e), 0 davon im ersten Browseraufruf geladen."
},
{
"id": "google_third_parties",
"color": "green",
"score": 100,
"title": "Google-Dienste & Drittanbieter",
"source": "Chromium-Requests, Anbieterklassifikation und Google Consent Mode Heuristik",
"status": "unauffällig",
"evidence": "Keine Google-Domain, keine Google-Tracking-ID und keine datenschutzrelevanten Drittanbieter im passiven Check erkannt."
},
{
"id": "pii_exposure",
"color": "green",
"score": 100,
"title": "PII, URL-Parameter & Datenleck-Schutz",
"source": "URL-Parameter, interne Links, HTML-Formulare, Browser-Drittanbieter und Dateneingabe-Kontext",
"status": "unauffällig",
"evidence": "0 PII-/Datenleck-Hinweis(e) aus URL-, Formular- und Browserkontext."
},
{
"id": "performance_mobile",
"color": "green",
"score": 100,
"title": "Performance & mobile Nutzbarkeit",
"source": "HTTP-Antwort, HTML-Größe, Komprimierung und mobile Basis",
"status": "unauffällig",
"evidence": "Performance-Score 100, Antwortzeit 680 ms."
},
{
"id": "seo_integrity",
"color": "green",
"score": 100,
"title": "SEO-Integrität & Cloaking",
"source": "HTML-Inhalt, strukturierte Daten, Links und Googlebot-Vergleich",
"status": "unauffällig",
"evidence": "0 SEO-Spam-Hinweis(e), 0 Cloaking-Hinweis(e)."
}
],
"ai_search_policy_evidence": {
"files": [
{
"id": "robots_txt",
"url": "https://www.abcitydienst.ch/robots.txt",
"label": "robots.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 30,
"http_status": 301,
"relevant_lines": []
},
{
"id": "llms_txt",
"url": "https://www.abcitydienst.ch/llms.txt",
"label": "llms.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"relevant_lines": []
},
{
"id": "ai_txt",
"url": "https://www.abcitydienst.ch/.well-known/ai.txt",
"label": "AI Policy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"relevant_lines": []
},
{
"id": "ai_policy_txt",
"url": "https://www.abcitydienst.ch/.well-known/ai-policy.txt",
"label": "AI Policy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"relevant_lines": []
},
{
"id": "ward_txt",
"url": "https://www.abcitydienst.ch/.well-known/ward.txt",
"label": "WARD Policy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"relevant_lines": []
}
],
"origin": "https://www.abcitydienst.ch",
"schema": "https://saferpage.de/schemas/ai-search-policy-evidence.v1",
"status": "checked",
"metrics": {
"file_count": 5,
"found_file_count": 0,
"policy_file_count": 0,
"explicit_ai_bot_count": 0
},
"summary": "0 von 5 Policy-Datei(en) gefunden; 0 explizite KI-Bot-Regel(n) in robots.txt.",
"available": true,
"guardrails": [
"Nur feste Same-Origin-Policy-Dateien",
"Keine Off-Host-Redirects",
"64-KB-Body-Limit",
"Öffentlich nur Hash, Status und kurze relevante Zeilen"
],
"known_ai_bots": [
"GPTBot",
"ChatGPT-User",
"Google-Extended",
"ClaudeBot",
"PerplexityBot",
"CCBot"
],
"explicit_ai_bots": [],
"policy_file_count": 0,
"llms_ward_policy_status": "not_publicly_verified",
"robots_ai_policy_status": "robots_missing"
},
"adtech_transparency_evidence": {
"files": [
{
"id": "ads_txt",
"url": "https://www.abcitydienst.ch/ads.txt",
"label": "ads.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"ads_txt_policy": [],
"relevant_lines": [],
"sellers_json_policy": []
},
{
"id": "app_ads_txt",
"url": "https://www.abcitydienst.ch/app-ads.txt",
"label": "app-ads.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"ads_txt_policy": [],
"relevant_lines": [],
"sellers_json_policy": []
},
{
"id": "sellers_json",
"url": "https://www.abcitydienst.ch/sellers.json",
"label": "sellers.json",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"ads_txt_policy": [],
"relevant_lines": [],
"sellers_json_policy": []
}
],
"origin": "https://www.abcitydienst.ch",
"schema": "https://saferpage.de/schemas/adtech-transparency-evidence.v1",
"status": "checked",
"metrics": {
"file_count": 3,
"direct_count": 0,
"reseller_count": 0,
"found_file_count": 0,
"ads_txt_entry_count": 0,
"exchange_domain_count": 0,
"app_ads_txt_entry_count": 0,
"sellers_json_seller_count": 0
},
"summary": "0 von 3 AdTech-Transparenzdatei(en) gefunden; 0 DIRECT- und 0 RESELLER-Zeile(n).",
"available": true,
"guardrails": [
"Nur feste Same-Origin-AdTech-Dateien",
"Keine Off-Host-Redirects",
"64-KB-Body-Limit",
"Öffentlich nur Hash, Status, Zähler und kurze relevante Zeilen"
],
"direct_count": 0,
"ads_txt_found": false,
"reseller_count": 0,
"app_ads_txt_found": false,
"sellers_json_found": false,
"ads_txt_entry_count": 0,
"exchange_domain_count": 0,
"sellers_json_parse_ok": false,
"app_ads_txt_entry_count": 0,
"sellers_json_seller_count": 0
},
"security_trust_policy_evidence": {
"files": [
{
"id": "security_txt",
"url": "https://www.abcitydienst.ch/.well-known/security.txt",
"label": "security.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"relevant_lines": [],
"security_txt_policy": []
},
{
"id": "security_txt_legacy",
"url": "https://www.abcitydienst.ch/security.txt",
"label": "security.txt legacy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 21,
"http_status": 301,
"relevant_lines": [],
"security_txt_policy": []
}
],
"origin": "https://www.abcitydienst.ch",
"schema": "https://saferpage.de/schemas/security-trust-policy-evidence.v1",
"status": "checked",
"metrics": {
"file_count": 2,
"field_count": 0,
"contact_count": 0,
"found_file_count": 0,
"preferred_well_known_found": 0
},
"summary": "0 von 2 security.txt-Ziel(en) gefunden; 0 Kontaktfeld(er), 0 strukturierte Feld(er).",
"available": true,
"guardrails": [
"Nur feste Same-Origin-security.txt-Ziele",
"Keine Off-Host-Redirects",
"64-KB-Body-Limit",
"Öffentlich nur Hash, Status und kurze relevante Zeilen"
],
"field_count": 0,
"contact_count": 0,
"fields_present": [],
"policy_present": false,
"expires_present": false,
"encryption_present": false,
"security_txt_found": false,
"preferred_well_known_found": false
},
"site_coverage_analysis": {
"color": "orange",
"pages": [
{
"url": "https://www.abcitydienst.ch/Schluesseldienst/kontakt.php",
"path": "/Schluesseldienst/kontakt.php",
"text": "© ABCityDienst.ch",
"source": "homepage_link",
"category": "kontakt",
"priority": 90
},
{
"url": "https://www.abcitydienst.ch/kontakt.php",
"path": "/kontakt.php",
"text": "Kontakt",
"source": "homepage_link",
"category": "kontakt",
"priority": 90
},
{
"url": "https://www.abcitydienst.ch/preise.php",
"path": "/preise.php",
"text": "Preise",
"source": "homepage_link",
"category": "preise",
"priority": 58
},
{
"url": "https://www.abcitydienst.ch/",
"path": "/",
"text": "Home",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://www.abcitydienst.ch/Schluesseldienst/Adlikon+bei+Regensdorf",
"path": "/Schluesseldienst/Adlikon+bei+Regensdorf",
"text": "Adlikon bei Regensdorf",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://www.abcitydienst.ch/Schluesseldienst/Adliswil",
"path": "/Schluesseldienst/Adliswil",
"text": "Adliswil",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://www.abcitydienst.ch/Schluesseldienst/Bassersdorf",
"path": "/Schluesseldienst/Bassersdorf",
"text": "Bassersdorf",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://www.abcitydienst.ch/Schluesseldienst/Birmensdorf+ZH",
"path": "/Schluesseldienst/Birmensdorf+ZH",
"text": "Birmensdorf ZH",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://www.abcitydienst.ch/Schluesseldienst/Boppelsen",
"path": "/Schluesseldienst/Boppelsen",
"text": "Boppelsen",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://www.abcitydienst.ch/Schluesseldienst/Bruettisellen",
"path": "/Schluesseldienst/Bruettisellen",
"text": "Brüttisellen",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://www.abcitydienst.ch/Schluesseldienst/Buchs+ZH",
"path": "/Schluesseldienst/Buchs+ZH",
"text": "Buchs ZH",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://www.abcitydienst.ch/Schluesseldienst/Buelach",
"path": "/Schluesseldienst/Buelach",
"text": "Bülach",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
}
],
"score": 52,
"status": "auffällig",
"summary": "30 interne Linkziele erkannt (0 aus Sitemap), 4 priorisierte Unterseite(n) zusätzlich abgerufen.",
"findings": [
{
"id": "important_pages_not_discovered",
"title": "Wichtige Betreiberseiten nicht vollständig in der Linkstruktur gefunden",
"public": true,
"category": "crawl",
"severity": "warning"
},
{
"id": "sampled_form_privacy_context_missing",
"title": "Formular-Unterseite ohne klaren Datenschutzkontext",
"public": true,
"category": "crawl",
"severity": "warning"
}
],
"robots_ok": true,
"categories": {
"preise": 1,
"kontakt": 2,
"unterseite": 27
},
"sample_limit": 4,
"sampled_count": 4,
"sampled_pages": [
{
"ok": true,
"url": "https://www.abcitydienst.ch/Schluesseldienst/kontakt.php",
"path": "/Schluesseldienst/kontakt.php",
"audit": {
"form_count": 1,
"finding_ids": [
"cookie_missing_secure",
"cookie_missing_samesite",
"imprint_missing"
],
"cookie_count": 1,
"imprint_found": false,
"consent_hint_found": false,
"reject_option_found": false,
"privacy_policy_found": false,
"tracking_script_count": 0,
"pre_consent_cookie_count": 1,
"pre_consent_tracking_cookie_count": 0
},
"forms": 1,
"title": "Schlüsselservice 24h Region Zürich, Schlüsseldienst, Notfalldienst - kontakt",
"status": 200,
"category": "kontakt",
"duration_ms": 8,
"privacy_hint": false,
"privacy_policy_audit": []
},
{
"ok": true,
"url": "https://www.abcitydienst.ch/kontakt.php",
"path": "/kontakt.php",
"audit": {
"form_count": 1,
"finding_ids": [
"cookie_missing_secure",
"cookie_missing_samesite",
"imprint_missing"
],
"cookie_count": 1,
"imprint_found": false,
"consent_hint_found": false,
"reject_option_found": false,
"privacy_policy_found": false,
"tracking_script_count": 0,
"pre_consent_cookie_count": 1,
"pre_consent_tracking_cookie_count": 0
},
"forms": 1,
"title": "Schlüsselservice 24h Region Zürich, Schlüsseldienst, Notfalldienst - kontakt",
"status": 200,
"category": "kontakt",
"duration_ms": 15,
"privacy_hint": false,
"privacy_policy_audit": []
},
{
"ok": true,
"url": "https://www.abcitydienst.ch/preise.php",
"path": "/preise.php",
"audit": {
"form_count": 0,
"finding_ids": [
"imprint_missing"
],
"cookie_count": 0,
"imprint_found": false,
"consent_hint_found": false,
"reject_option_found": false,
"privacy_policy_found": false,
"tracking_script_count": 0,
"pre_consent_cookie_count": 0,
"pre_consent_tracking_cookie_count": 0
},
"forms": 0,
"title": "Schlüsselservice 24h Region Zürich, Schlüsseldienst, Notfalldienst - preise",
"status": 200,
"category": "preise",
"duration_ms": 28,
"privacy_hint": false,
"privacy_policy_audit": []
},
{
"ok": true,
"url": "https://www.abcitydienst.ch/",
"path": "/",
"audit": {
"form_count": 0,
"finding_ids": [
"imprint_missing"
],
"cookie_count": 0,
"imprint_found": false,
"consent_hint_found": false,
"reject_option_found": false,
"privacy_policy_found": false,
"tracking_script_count": 0,
"pre_consent_cookie_count": 0,
"pre_consent_tracking_cookie_count": 0
},
"forms": 0,
"title": "Schlüsselservice 24h Region Zürich, Schlüsseldienst, Notfalldienst",
"status": 200,
"category": "unterseite",
"duration_ms": 15,
"privacy_hint": false,
"privacy_policy_audit": []
}
],
"robots_checked": true,
"sitemap_sources": [
"https://www.abcitydienst.ch/sitemap.xml"
],
"sitemap_available": true,
"sitemap_url_count": 0,
"homepage_link_count": 64,
"internal_link_count": 30,
"privacy_policy_audit": [],
"sitemap_source_count": 1,
"provider_disclosure_audit": {
"found": [],
"checks": [],
"reason": "no_detected_services",
"missing": [],
"available": false
},
"important_categories_found": [
"kontakt"
],
"sampled_tracking_page_count": 0,
"sampled_form_privacy_gap_count": 2,
"sitemap_candidate_source_count": 1
},
"page_analysis": {
"h1": [],
"h2": [
"24h Schlüsseldienst / Schlüsselservice Inh. Becker Rolf"
],
"title": "Schlüsselservice 24h Region Zürich, Schlüsseldienst, Notfalldienst",
"keywords": [
[
"zürich",
30
],
[
"kreis",
16
],
[
"schlüsselservice",
5
],
[
"schlüsseldienst",
5
],
[
"kaba",
5
],
[
"keso",
4
],
[
"notfalldienst",
3
],
[
"zylinder",
3
],
[
"schloss",
3
],
[
"kontakt",
3
]
],
"language": "de",
"description": "Ihr 24h Schlüsselservice für Zürich und Umgebung mit jahrelanger Erfahrung. Schlüsseldienst, Notfalldienst, Pikettdienst, Aufsperrservice, 24Std, Kanton, Schliessanlagen, Kaba, Keso, Einbruchschutz, Zylinder, Schloss, Sicherheitstechnik, Einbruch, Notfallservice, Sicherheitsschloss, Reparaturen, AB City Dienst",
"favicon_url": "https://www.abcitydienst.ch/favicon.ico",
"link_counts": {
"external": 1,
"internal": 63
},
"preview_image": "/cache/screenshots/abcitydienst.ch-160x150-82140f16e5797c28a6.png",
"screenshot_url": "/cache/screenshots/abcitydienst.ch-160x150-82140f16e5797c28a6.png",
"external_scripts": [
"https://code.jquery.com/jquery-3.1.1.min.js",
"https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"
],
"browser_final_url": "https://www.abcitydienst.ch/Schluesseldienst/",
"meta_preview_image": "",
"screenshot_renderer": "playwright-chromium",
"external_link_targets": [
{
"host": "pctec.ch",
"count": 1,
"examples": [
{
"href": "https://www.pctec.ch",
"text": "Webdesign PCtec.ch"
}
],
"nofollow": 0,
"strength": "strong",
"follow_count": 1
}
]
},
"browser_analysis": {
"cookies": {
"items": [],
"total": 0,
"third_party": 0
},
"storage": {
"total": 0,
"local_storage_keys": [],
"tracking_key_hints": [],
"local_storage_total": 0,
"session_storage_keys": [],
"session_storage_total": 0
},
"findings": [
{
"id": "unknown_vendor_jurisdiction",
"title": "Anbieter-Jurisdiktion nicht klar ableitbar",
"public": true,
"category": "privacy",
"severity": "info"
},
{
"id": "third_party_full_referrer_leak",
"count": 2,
"title": "Drittanbieter können vollen Referrer-Kontext erhalten",
"public": true,
"category": "privacy",
"severity": "warning"
},
{
"id": "tracking_pixel_detected",
"count": 1,
"title": "Tracking-Pixel oder pixelnahe Requests erkannt",
"public": true,
"category": "privacy",
"severity": "info"
}
],
"renderer": "playwright-chromium",
"final_url": "https://www.abcitydienst.ch/Schluesseldienst/",
"consent_ui": {
"accept_controls": [],
"accept_max_area": 0,
"reject_controls": [],
"reject_max_area": 0,
"settings_controls": [],
"first_layer_summary": "Akzeptieren 0 / Ablehnen 0 / Einstellungen 0",
"cookie_context_found": false,
"reject_less_prominent": false,
"visible_control_count": 9,
"reject_prominence_ratio": 0
},
"gpc_signal": {
"error": "",
"enabled": true,
"storage": {
"total": 0,
"tracking_key_hints": [],
"local_storage_total": 0,
"session_storage_total": 0
},
"cookie_count": 0,
"request_count": 22,
"sec_gpc_header": true,
"navigator_value": true,
"contacted_domains": [
{
"host": "abcitydienst.ch",
"count": 17,
"category": "other",
"provider": "abcitydienst.ch",
"third_party": false,
"category_label": "Sonstige",
"resource_types": {
"image": 14,
"document": 1,
"stylesheet": 2
}
},
{
"host": "maxcdn.bootstrapcdn.com",
"count": 4,
"category": "other",
"provider": "maxcdn.bootstrapcdn.com",
"third_party": true,
"category_label": "Sonstige",
"resource_types": {
"font": 1,
"script": 1,
"stylesheet": 2
}
},
{
"host": "code.jquery.com",
"count": 1,
"category": "other",
"provider": "code.jquery.com",
"third_party": true,
"category_label": "Sonstige",
"resource_types": {
"script": 1
}
}
],
"contacted_domain_count": 3,
"privacy_relevant_domains": [],
"third_party_cookie_count": 0,
"third_party_domain_count": 2,
"privacy_relevant_domain_count": 0
},
"screenshot": {
"fit": "contain",
"width": 160,
"height": 150,
"source_width": 1024,
"source_height": 960,
"source_capture": "full_page",
"capture_version": "contain-v4-viewport-transparency-160x150"
},
"consent_apis": {
"cmpapi": false,
"tcfapi": false,
"onetrust": false,
"cookiebot": false,
"data_layer": false,
"cmp_detected": false,
"usercentrics": false,
"google_tag_data": false
},
"accept_signal": {
"error": "",
"enabled": false,
"storage": {
"total": 0,
"tracking_key_hints": [],
"local_storage_total": 0,
"session_storage_total": 0
},
"clicked_text": "",
"accept_clicked": false,
"accept_available": false,
"contacted_domains": [],
"contacted_domain_count": 0,
"new_domains_after_accept": [],
"privacy_relevant_domains": [],
"third_party_domain_count": 0,
"cookie_count_after_accept": 0,
"cookie_count_before_accept": 0,
"request_count_after_accept": 0,
"storage_count_after_accept": 0,
"request_count_before_accept": 0,
"new_cookie_count_after_accept": 0,
"privacy_relevant_domain_count": 0,
"new_request_count_after_accept": 0,
"third_party_cookie_count_after_accept": 0,
"storage_tracking_hint_count_after_accept": 0,
"new_privacy_relevant_domains_after_accept": [],
"new_privacy_relevant_domain_count_after_accept": 0
},
"request_count": 24,
"top_providers": [
{
"provider": "maxcdn.bootstrapcdn.com",
"request_count": 5
},
{
"provider": "code.jquery.com",
"request_count": 1
}
],
"request_samples": [
{
"host": "maxcdn.bootstrapcdn.com",
"method": "GET",
"referrer": {
"host": "abcitydienst.ch",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": false,
"path_depth": 4,
"query_keys": [],
"third_party": true,
"resource_type": "stylesheet",
"query_key_count": 0,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "maxcdn.bootstrapcdn.com",
"method": "GET",
"referrer": {
"host": "abcitydienst.ch",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": false,
"path_depth": 4,
"query_keys": [],
"third_party": true,
"resource_type": "stylesheet",
"query_key_count": 0,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "code.jquery.com",
"method": "GET",
"referrer": {
"host": "abcitydienst.ch",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": false,
"path_depth": 1,
"query_keys": [],
"third_party": true,
"resource_type": "script",
"query_key_count": 0,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "maxcdn.bootstrapcdn.com",
"method": "GET",
"referrer": {
"host": "abcitydienst.ch",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": false,
"path_depth": 4,
"query_keys": [],
"third_party": true,
"resource_type": "script",
"query_key_count": 0,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "maxcdn.bootstrapcdn.com",
"method": "GET",
"referrer": {
"host": "maxcdn.bootstrapcdn.com",
"has_path": true,
"has_query": false,
"same_site": false,
"path_depth": 4,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": false,
"path_depth": 4,
"query_keys": [],
"third_party": true,
"resource_type": "font",
"query_key_count": 0,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "maxcdn.bootstrapcdn.com",
"method": "GET",
"referrer": {
"host": "maxcdn.bootstrapcdn.com",
"has_path": true,
"has_query": false,
"same_site": false,
"path_depth": 4,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": true,
"path_depth": 4,
"query_keys": [
"v"
],
"third_party": true,
"resource_type": "font",
"query_key_count": 1,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
}
],
"cmp_consent_state": {
"tcf": {
"api_found": false,
"vendor_li": [],
"cmp_loaded": false,
"cmp_status": "",
"purpose_li": [],
"event_status": "",
"gdpr_applies": null,
"ping_success": false,
"policy_version": "",
"vendor_consents": [],
"vendor_li_count": 0,
"purpose_consents": [],
"purpose_li_count": 0,
"tc_string_length": 0,
"tc_string_present": false,
"vendor_consent_count": 0,
"purpose_consent_count": 0
},
"onetrust": {
"found": false,
"active_groups": [],
"active_group_count": 0
},
"cookiebot": {
"found": false,
"declined": false,
"consented": false,
"has_response": false,
"consent_marketing": null,
"consent_statistics": null,
"consent_preferences": null
},
"usercentrics": {
"found": false,
"has_response": false,
"services_count": 0,
"accepted_services_count": 0
}
},
"contacted_domains": [
{
"host": "abcitydienst.ch",
"count": 18,
"category": "other",
"provider": "abcitydienst.ch",
"third_party": false,
"category_label": "Sonstige",
"resource_types": {
"image": 15,
"document": 1,
"stylesheet": 2
}
},
{
"host": "maxcdn.bootstrapcdn.com",
"count": 5,
"category": "other",
"provider": "maxcdn.bootstrapcdn.com",
"third_party": true,
"category_label": "Sonstige",
"resource_types": {
"font": 2,
"script": 1,
"stylesheet": 2
}
},
{
"host": "code.jquery.com",
"count": 1,
"category": "other",
"provider": "code.jquery.com",
"third_party": true,
"category_label": "Sonstige",
"resource_types": {
"script": 1
}
}
],
"privacy_api_metrics": {
"api_calls": {
"keyboard_input_listener_count": 1
},
"beacon_count": 0,
"webgl_read_count": 0,
"canvas_read_count": 0,
"audio_context_count": 0,
"canvas_export_count": 0,
"fetch_keepalive_count": 0,
"webgl_parameter_count": 0,
"mutation_observer_count": 0,
"keyboard_input_listener_count": 1
},
"tcf_consent_analysis": {
"color": "green",
"score": 100,
"status": "unauffällig",
"summary": "TCF-Decoder: 0 Zweck(e) mit Consent/LI-Signal, 0 Vendor-Consent(s), 0 Vendor-LI-Signal(e).",
"findings": [],
"api_found": false,
"available": false,
"cmp_loaded": false,
"cmp_status": "",
"event_status": "",
"gdpr_applies": null,
"ping_success": false,
"purpose_rows": [
{
"id": 1,
"label": "Informationen auf einem Gerät speichern und/oder abrufen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 2,
"label": "Einfache Anzeigen auswählen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 3,
"label": "Personalisiertes Anzeigen-Profil erstellen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 4,
"label": "Personalisierte Anzeigen auswählen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 5,
"label": "Personalisiertes Inhalts-Profil erstellen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 6,
"label": "Personalisierte Inhalte auswählen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 7,
"label": "Anzeigen-Leistung messen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 8,
"label": "Inhalte-Leistung messen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 9,
"label": "Marktforschung zur Generierung von Erkenntnissen nutzen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 10,
"label": "Produkte entwickeln und verbessern",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 11,
"label": "Begrenzte Daten zur Anzeigen-Auswahl verwenden",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
}
],
"vendor_li_ids": [],
"policy_version": "",
"vendor_li_count": 0,
"purpose_li_count": 0,
"tc_string_length": 0,
"tc_string_present": false,
"vendor_consent_ids": [],
"granted_purpose_rows": [],
"vendor_consent_count": 0,
"purpose_consent_count": 0,
"high_risk_purpose_count": 0,
"medium_risk_purpose_count": 0
},
"viewport_transparency": {
"samples": [
{
"tag": "a",
"top": 208,
"href": "/kontakt.php",
"left": 668,
"text": "Kontakt",
"width": 52,
"height": 16,
"category": "contact"
}
],
"available": true,
"sample_count": 1,
"claim_boundary": "Sichtbarkeits-Evidence aus dem ersten Headless-Chromium-Viewport; keine Aussage ueber Footer nach Scrollen, Loginbereiche oder rechtliche Vollstaendigkeit.",
"viewport_width": 1024,
"category_counts": {
"contact": 1
},
"contact_visible": true,
"imprint_visible": false,
"viewport_height": 960,
"cookie_consent_visible": false,
"privacy_notice_visible": false
},
"consent_journey_matrix": {
"color": "green",
"items": [
{
"host": "maxcdn.bootstrapcdn.com",
"states": {
"gpc": 4,
"default": 5
},
"category": "other",
"provider": "maxcdn.bootstrapcdn.com",
"category_label": "Sonstige",
"privacy_relevant": false,
"total_request_count": 9
},
{
"host": "code.jquery.com",
"states": {
"gpc": 1,
"default": 1
},
"category": "other",
"provider": "code.jquery.com",
"category_label": "Sonstige",
"privacy_relevant": false,
"total_request_count": 2
}
],
"score": 100,
"states": [
{
"id": "default",
"label": "Erstaufruf",
"description": "Kontakte ohne Nutzeraktion",
"domain_count": 2,
"request_count": 6,
"privacy_relevant_domain_count": 0
},
{
"id": "reject_new",
"label": "Nach Ablehnen neu",
"description": "Neue Kontakte nach Ablehnen-Klick",
"domain_count": 0,
"request_count": 0,
"privacy_relevant_domain_count": 0
},
{
"id": "accept_new",
"label": "Nach Akzeptieren neu",
"description": "Neue Kontakte nach Akzeptieren-Klick",
"domain_count": 0,
"request_count": 0,
"privacy_relevant_domain_count": 0
},
{
"id": "gpc",
"label": "GPC-Aufruf",
"description": "Kontakte bei Global Privacy Control",
"domain_count": 2,
"request_count": 5,
"privacy_relevant_domain_count": 0
}
],
"status": "unauffällig",
"summary": "Consent-Journey: 0 neue Datenschutz-Domain(s) nach Ablehnen, 0 nach Akzeptieren, 0 im GPC-Aufruf.",
"gpc_privacy_relevant_domain_count": 0,
"accept_privacy_relevant_domain_count": 0,
"reject_privacy_relevant_domain_count": 0
},
"consent_state_evidence": {
"rows": [
{
"id": "default",
"label": "Erstaufruf",
"status": "ohne Nutzeraktion",
"evidence": "Baseline aus erstem Chromium-Aufruf ohne Banner-Interaktion.",
"risk_level": "niedrig",
"cookie_count": 0,
"domain_count": 3,
"request_count": 24,
"storage_total": 0,
"new_cookie_count": 0,
"third_party_cookie_count": 0,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 0
},
{
"id": "reject",
"label": "Nach Ablehnen",
"status": "nicht verfügbar",
"evidence": "",
"risk_level": "niedrig",
"cookie_count": 0,
"domain_count": 0,
"request_count": 0,
"storage_total": 0,
"new_cookie_count": 0,
"third_party_cookie_count": 0,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 0
},
{
"id": "accept",
"label": "Nach Akzeptieren",
"status": "nicht ausgeführt",
"evidence": "",
"risk_level": "niedrig",
"cookie_count": 0,
"domain_count": 0,
"request_count": 0,
"storage_total": 0,
"new_cookie_count": 0,
"third_party_cookie_count": 0,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 0
},
{
"id": "gpc",
"label": "GPC-Aufruf",
"status": "aktiv",
"evidence": "Navigator-GPC und Sec-GPC wurden im gesonderten Browserlauf gesetzt.",
"risk_level": "niedrig",
"cookie_count": 0,
"domain_count": 3,
"request_count": 22,
"storage_total": 0,
"new_cookie_count": 0,
"third_party_cookie_count": 0,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 0
}
],
"color": "green",
"score": 100,
"status": "unauffällig",
"summary": "Consent-State-Evidence: 4 Zustände verglichen, 0 hoch auffällig, 0 mittel auffällig.",
"findings": [],
"available": true,
"high_count": 0,
"medium_count": 0
},
"contacted_domain_count": 3,
"fingerprinting_analysis": {
"color": "green",
"score": 100,
"checks": [
{
"id": "canvas",
"ok": true,
"count": 0,
"label": "Canvas-Auslese",
"detail": "0 Pixel-Lesezugriff(e), 0 Export(e)."
},
{
"id": "webgl",
"ok": true,
"count": 0,
"label": "WebGL-Merkmale",
"detail": "0 Parameterzugriff(e), 0 Pixel-Lesezugriff(e)."
},
{
"id": "audio",
"ok": true,
"count": 0,
"label": "AudioContext",
"detail": "0 AudioContext/OfflineAudioContext-Aufruf(e)."
},
{
"id": "session_replay",
"ok": true,
"count": 0,
"label": "Session-Replay-Anbieter",
"detail": "Keine bekannten Anbieter erkannt."
},
{
"id": "input_listeners",
"ok": true,
"count": 1,
"label": "Tastatur-/Eingabe-Listener",
"detail": "1 Tastatur-/Input-Listener, 1 Interaktions-Listener, 0 MutationObserver."
}
],
"status": "unauffällig",
"metrics": {
"webgl_read_count": 0,
"canvas_read_count": 0,
"audio_context_count": 0,
"canvas_export_count": 0,
"webgl_parameter_count": 0,
"mutation_observer_count": 0,
"keyboard_input_listener_count": 1
},
"summary": "0 Fingerprinting-/Session-Replay-Hinweis(e) aus dem Browserlauf.",
"findings": [],
"finding_count": 0,
"session_replay_domains": []
},
"privacy_relevant_domains": [],
"provider_category_counts": {
"other": 2
},
"provider_category_labels": {
"other": "other"
},
"third_party_domain_count": 2,
"embedded_content_analysis": {
"color": "green",
"items": [],
"score": 100,
"status": "unauffällig",
"summary": "0 externe Embed-/Widget-Dienst(e), 0 davon im ersten Browseraufruf geladen.",
"findings": [],
"map_count": 0,
"total_count": 0,
"video_count": 0,
"captcha_count": 0,
"category_counts": [],
"social_widget_count": 0,
"loaded_pre_consent_count": 0,
"request_count_by_provider": []
},
"referrer_leakage_analysis": {
"color": "yellow",
"items": [
{
"host": "maxcdn.bootstrapcdn.com",
"category": "other",
"provider": "maxcdn.bootstrapcdn.com",
"query_keys": [],
"risk_reason": "voller Referrer-Pfad oder Suchparameter an Drittanbieter",
"referrer_host": "maxcdn.bootstrapcdn.com",
"resource_type": "font",
"category_label": "Sonstige",
"referrer_has_path": true,
"referrer_has_query": false,
"referrer_query_keys": [],
"referrer_sensitive_query_key_count": 0
},
{
"host": "maxcdn.bootstrapcdn.com",
"category": "other",
"provider": "maxcdn.bootstrapcdn.com",
"query_keys": [
"v"
],
"risk_reason": "voller Referrer-Pfad oder Suchparameter an Drittanbieter",
"referrer_host": "maxcdn.bootstrapcdn.com",
"resource_type": "font",
"category_label": "Sonstige",
"referrer_has_path": true,
"referrer_has_query": false,
"referrer_query_keys": [],
"referrer_sensitive_query_key_count": 0
}
],
"score": 76,
"status": "prüfen",
"summary": "1 Drittanbieter-Domain(s) mit Referrer-/URL-Leak-Prüfbedarf, 0 sensible Query-Kontexte.",
"findings": [
{
"id": "third_party_full_referrer_leak",
"count": 2,
"title": "Drittanbieter können vollen Referrer-Kontext erhalten",
"public": true,
"category": "privacy",
"severity": "warning"
}
],
"sample_count": 6,
"full_referrer_count": 2,
"page_url_param_count": 0,
"affected_domain_count": 1,
"sensitive_query_count": 0
},
"third_party_contact_matrix": {
"color": "green",
"items": [
{
"host": "maxcdn.bootstrapcdn.com",
"region": "unbekannt",
"status": "prüfen",
"category": "other",
"provider": "maxcdn.bootstrapcdn.com",
"risk_level": "niedrig",
"request_count": 5,
"transfer_risk": "mittel",
"category_label": "Sonstige",
"resource_types": [
{
"type": "font",
"count": 2
},
{
"type": "stylesheet",
"count": 2
},
{
"type": "script",
"count": 1
}
],
"transfer_label": "Jurisdiktion unklar",
"privacy_relevant": false
},
{
"host": "code.jquery.com",
"region": "unbekannt",
"status": "prüfen",
"category": "other",
"provider": "code.jquery.com",
"risk_level": "niedrig",
"request_count": 1,
"transfer_risk": "mittel",
"category_label": "Sonstige",
"resource_types": [
{
"type": "script",
"count": 1
}
],
"transfer_label": "Jurisdiktion unklar",
"privacy_relevant": false
}
],
"score": 100,
"status": "unauffällig",
"summary": "2 Drittanbieter-Domain(s) beim ersten Browseraufruf, davon 0 datenschutzrelevant.",
"category_counts": {
"Sonstige": 2
},
"total_domain_count": 2,
"total_request_count": 6,
"privacy_relevant_count": 0,
"transfer_risk_analysis": {
"color": "yellow",
"items": [
{
"host": "maxcdn.bootstrapcdn.com",
"region": "unbekannt",
"provider": "maxcdn.bootstrapcdn.com",
"request_count": 5,
"transfer_risk": "mittel",
"category_label": "Sonstige",
"transfer_label": "Jurisdiktion unklar",
"privacy_relevant": false
},
{
"host": "code.jquery.com",
"region": "unbekannt",
"provider": "code.jquery.com",
"request_count": 1,
"transfer_risk": "mittel",
"category_label": "Sonstige",
"transfer_label": "Jurisdiktion unklar",
"privacy_relevant": false
}
],
"score": 84,
"status": "prüfen",
"summary": "2 Drittanbieter für Transfer-/Jurisdiktionsprüfung, 0 mit hohem Prüfbedarf, 2 unklar.",
"findings": [
{
"id": "unknown_vendor_jurisdiction",
"title": "Anbieter-Jurisdiktion nicht klar ableitbar",
"public": true,
"category": "privacy",
"severity": "info"
}
],
"unknown_count": 2,
"high_risk_count": 0,
"total_vendor_count": 2,
"third_country_count": 0
}
},
"privacy_relevant_domain_count": 0,
"tracking_pixel_beacon_analysis": {
"color": "green",
"items": [
{
"url": "https://www.abcitydienst.ch/Schluesseldienst/images/pixel.gif",
"host": "abcitydienst.ch",
"kind": "tracking_pixel",
"reason": "Tracking-nahe URL",
"source": "html_img",
"category": "other",
"provider": "abcitydienst.ch",
"third_party": false,
"resource_type": "image",
"category_label": "Sonstige"
}
],
"score": 90,
"status": "unauffällig",
"summary": "1 Pixel-/Bildtracking-Hinweis(e), 0 Beacon-/Telemetry-Hinweis(e), 0 Link-Ping(s).",
"findings": [
{
"id": "tracking_pixel_detected",
"count": 1,
"title": "Tracking-Pixel oder pixelnahe Requests erkannt",
"public": true,
"category": "privacy",
"severity": "info"
}
],
"pixel_count": 1,
"link_ping_count": 0,
"telemetry_count": 0,
"beacon_api_count": 0,
"third_party_count": 0,
"fetch_keepalive_count": 0,
"privacy_relevant_count": 0,
"beacon_code_reference_count": 0,
"fetch_keepalive_reference_count": 0
}
},
"privacy_analysis": {
"cookies": {
"items": [],
"total": 0,
"tracking": [],
"pre_consent": [],
"missing_secure": [],
"missing_samesite": [],
"pre_consent_tracking": [],
"pre_consent_nonessential": []
},
"findings": [],
"tracking_ids": [],
"tracking_scripts": [],
"consent_hint_found": false,
"privacy_policy_hint_found": false
},
"consent_audit": {
"color": "red",
"score": 48,
"checks": [
{
"id": "banner_visible",
"ok": false,
"label": "Cookie-/Consent-Hinweis sichtbar",
"detail": "Ein Hinweis mit Cookie-/Einwilligungsbezug wurde im sichtbaren Text erkannt."
},
{
"id": "reject_visible",
"ok": false,
"label": "Ablehnen gleichwertig erreichbar",
"detail": "Ablehnen oder nur notwendige Cookies wurde im Text oder Browser erkannt. Browser-Buttons: 0."
},
{
"id": "settings_visible",
"ok": false,
"label": "Einstellungen oder Auswahl vorhanden",
"detail": "Eine Einstellungs- oder Auswahlmoeglichkeit wurde im Text oder Browser erkannt. Browser-Buttons: 0."
},
{
"id": "browser_reject_visible",
"ok": true,
"label": "Ablehnen im sichtbaren Banner",
"detail": "Sichtbare Banner-Controls: Akzeptieren 0, Ablehnen 0, Einstellungen 0."
},
{
"id": "browser_settings_visible",
"ok": true,
"label": "Einstellungen im sichtbaren Banner",
"detail": "Sichtbare Banner-Controls: Akzeptieren 0, Ablehnen 0, Einstellungen 0."
},
{
"id": "reject_equally_prominent",
"ok": true,
"label": "Ablehnen nicht deutlich schwaecher dargestellt",
"detail": "Groessen-Verhältnis Ablehnen/Akzeptieren: nicht messbar."
},
{
"id": "reject_button_clickable",
"ok": true,
"label": "Ablehnen technisch klickbar",
"detail": "Wenn ein Ablehnen-Button sichtbar ist, klickt SaferPage ihn im Chromium-Browser einmal an."
},
{
"id": "no_new_cookies_after_reject",
"ok": true,
"label": "Keine neuen Cookies nach Ablehnen",
"detail": "0 neue Cookie(s) nach dem Ablehnen-Klick."
},
{
"id": "no_tracking_storage_after_reject",
"ok": true,
"label": "Kein Tracking-Storage nach Ablehnen",
"detail": "0 Tracking-Hinweis(e) im Web Storage nach Ablehnen."
},
{
"id": "no_privacy_domains_after_reject",
"ok": true,
"label": "Keine neuen Tracking-Kontakte nach Ablehnen",
"detail": "0 neue datenschutzrelevante Domain(s) nach Ablehnen."
},
{
"id": "gpc_signal_respected",
"ok": true,
"label": "GPC-Signal ohne Tracking-Hinweise",
"detail": "GPC-Aufruf: 0 datenschutzrelevante Domain(s), 0 Drittanbieter-Cookie(s), 0 Storage-Hinweis(e)."
},
{
"id": "no_tracking_cookies_before_consent",
"ok": true,
"label": "Keine Tracking-Cookies vor Einwilligung",
"detail": "0 Tracking-Cookie(s) im Erstaufruf."
},
{
"id": "no_nonessential_cookies_before_consent",
"ok": true,
"label": "Keine nicht notwendigen Cookies vor Einwilligung",
"detail": "0 moeglicherweise nicht notwendige Cookie(s) im Erstaufruf."
},
{
"id": "third_parties_explained",
"ok": true,
"label": "Drittanbieter begrenzt und erklaerbar",
"detail": "0 datenschutzrelevante Drittanbieter-Domain(s), 2 Drittanbieter insgesamt."
},
{
"id": "storage_without_tracking_hints",
"ok": true,
"label": "Web Storage ohne Tracking-Hinweise",
"detail": "0 Storage-Key(s), 0 Tracking-Hinweis(e)."
},
{
"id": "cmp_api_detected_when_needed",
"ok": true,
"label": "CMP-/TCF-Signal bei Tracking erkennbar",
"detail": "Gängige CMP-/TCF-Indikatoren: __tcfapi, __cmp, Cookiebot, OneTrust oder Usercentrics."
},
{
"id": "accept_click_documented",
"ok": true,
"label": "Akzeptieren-Klick nachvollziehbar",
"detail": "Accept-Test: nicht ausgefuehrt, neue Requests 0, neue Cookies 0, neue Datenschutz-Domains 0."
},
{
"id": "cmp_state_readable",
"ok": true,
"label": "CMP-/TCF-Zustand auslesbar",
"detail": "TCF TC-String: nein, Cookiebot: nein, OneTrust: nein, Usercentrics: nein."
},
{
"id": "cmp_default_restrictive",
"ok": true,
"label": "CMP-Default wirkt restriktiv",
"detail": "TCF Purposes erlaubt: 0, TCF Vendors erlaubt: 0, Cookiebot Statistik/Marketing: nein."
}
],
"status": "kritisch",
"summary": "Consent, Tracking oder Drittanbieter wirken im Erstaufruf deutlich nachbesserungsbeduerftig.",
"evidence": [
"0 Cookie(s) beim ersten Aufruf aus HTTP-Headern und Chromium",
"0 Tracking-Script(s) im HTML",
"0 datenschutzrelevante Drittanbieter-Domain(s)",
"0 Storage-Key(s), 0 Tracking-Hinweis(e)",
"Consent-Banner-Controls: Akzeptieren 0, Ablehnen 0, Einstellungen 0",
"Ablehnen/Akzeptieren-Prominenz: nicht messbar",
"Reject-Test: nicht ausgefuehrt, neue Cookies 0, Tracking-Storage 0, neue Datenschutz-Domains 0",
"Accept-Test: nicht ausgefuehrt, neue Requests 0, neue Cookies 0, neue Datenschutz-Domains 0, Drittanbieter-Cookies 0",
"CMP-State: TCF-String nein, TCF Purposes 0, TCF Vendors 0, Cookiebot nein, OneTrust-Gruppen 0, Usercentrics-Services 0",
"GPC-Test: aktiv, Datenschutz-Domains 0, Drittanbieter-Cookies 0, Storage-Hinweise 0",
"CMP-/TCF-Signal: nein",
"Google Consent Default: nein"
],
"gpc_enabled": true,
"cmp_detected": false,
"blocking_plan": {
"items": [],
"summary": "Kein Google-Tag und keine Google-Domain erkannt; kein Google-spezifischer Pre-Consent-Blockierplan aus dieser Evidenz erforderlich.",
"available": false,
"high_count": 0,
"total_count": 0,
"type_counts": [],
"medium_count": 0
},
"tcf_api_found": false,
"cookiebot_found": false,
"accept_test_enabled": false,
"browser_cookie_count": 0,
"accept_button_clicked": false,
"browser_storage_count": 0,
"reject_button_clicked": false,
"reject_less_prominent": false,
"tcf_tc_string_present": false,
"tracking_script_count": 0,
"accept_button_available": false,
"reject_button_available": false,
"reject_prominence_ratio": 0,
"pre_consent_cookie_count": 0,
"pre_consent_cookie_names": [],
"tcf_vendor_consent_count": 0,
"third_party_domain_count": 2,
"tcf_purpose_consent_count": 0,
"onetrust_active_group_count": 0,
"usercentrics_services_count": 0,
"browser_accept_control_count": 0,
"browser_cookie_context_found": false,
"browser_reject_control_count": 0,
"gpc_third_party_cookie_count": 0,
"post_accept_new_cookie_count": 0,
"post_reject_new_cookie_count": 0,
"post_accept_new_request_count": 0,
"browser_settings_control_count": 0,
"gpc_storage_tracking_hint_count": 0,
"cookiebot_marketing_or_statistics": false,
"gpc_privacy_relevant_domain_count": 0,
"pre_consent_tracking_cookie_count": 0,
"pre_consent_tracking_cookie_names": [],
"privacy_relevant_third_party_count": 0,
"browser_storage_tracking_hint_count": 0,
"post_accept_third_party_cookie_count": 0,
"pre_consent_nonessential_cookie_count": 0,
"pre_consent_nonessential_cookie_names": [],
"post_accept_storage_tracking_hint_count": 0,
"post_reject_storage_tracking_hint_count": 0,
"post_accept_privacy_relevant_domain_count": 0,
"post_reject_privacy_relevant_domain_count": 0
},
"cookie_inventory": {
"color": "green",
"items": [],
"score": 100,
"total": 0,
"status": "unauffällig",
"summary": "0 Cookie(s) inventarisiert: 0 Tracking-/Werbe-Cookie(s), 0 Drittanbieter-Cookie(s), 0 langlebige Cookie(s), 0 sehr lange Laufzeit(en).",
"findings": [],
"categories": [],
"tracking_count": 0,
"category_labels": {
"consent": "Consent",
"payment": "Zahlung",
"unknown": "Unklar",
"security": "Sicherheit",
"analytics": "Analytics",
"necessary": "Notwendig",
"functional": "Funktional",
"advertising": "Werbung"
},
"long_lived_count": 0,
"persistent_count": 0,
"first_party_count": 0,
"pre_consent_count": 0,
"retention_classes": [],
"third_party_count": 0,
"missing_secure_count": 0,
"retention_risk_count": 0,
"retention_risk_items": [],
"very_long_lived_count": 0,
"missing_samesite_count": 0,
"persistent_unknown_count": 0,
"long_lived_tracking_count": 0
},
"security_header_analysis": {
"color": "red",
"score": 46,
"checks": [
{
"ok": true,
"note": "",
"label": "HSTS",
"value": "max-age=63072000; includeSubDomains; preload",
"header": "strict-transport-security",
"present": true,
"purpose": "Erzwingt HTTPS nach dem ersten sicheren Aufruf.",
"severity": "warning"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "Content-Security-Policy",
"value": "",
"header": "content-security-policy",
"present": false,
"purpose": "Begrenzt Skript-, Frame- und Ressourcenquellen im Browser.",
"severity": "warning"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "X-Frame-Options",
"value": "",
"header": "x-frame-options",
"present": false,
"purpose": "Reduziert Clickjacking-Risiken bei älteren Browsern.",
"severity": "warning"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "X-Content-Type-Options",
"value": "",
"header": "x-content-type-options",
"present": false,
"purpose": "Verhindert MIME-Sniffing bei Skripten und Stylesheets.",
"severity": "warning"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "Referrer-Policy",
"value": "",
"header": "referrer-policy",
"present": false,
"purpose": "Begrenzt, welche URL-Informationen an Zielseiten weitergegeben werden.",
"severity": "info"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "Permissions-Policy",
"value": "",
"header": "permissions-policy",
"present": false,
"purpose": "Begrenzt sensible Browser-Funktionen pro Seite.",
"severity": "info"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "Cross-Origin-Opener-Policy",
"value": "",
"header": "cross-origin-opener-policy",
"present": false,
"purpose": "Isoliert Top-Level-Fenster und reduziert Cross-Origin-Seiteneffekte.",
"severity": "info"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "Cross-Origin-Resource-Policy",
"value": "",
"header": "cross-origin-resource-policy",
"present": false,
"purpose": "Begrenzt, welche fremden Seiten Ressourcen einbetten dürfen.",
"severity": "info"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "Cross-Origin-Embedder-Policy",
"value": "",
"header": "cross-origin-embedder-policy",
"present": false,
"purpose": "Erzwingt kontrollierte Cross-Origin-Einbettungen und kann Cross-Origin Isolation ermöglichen.",
"severity": "info"
}
],
"status": "kritisch",
"missing": [
"Content-Security-Policy",
"X-Frame-Options",
"X-Content-Type-Options",
"Referrer-Policy",
"Permissions-Policy",
"Cross-Origin-Opener-Policy",
"Cross-Origin-Resource-Policy",
"Cross-Origin-Embedder-Policy"
],
"summary": "1 von 9 wichtigen Security-Headern vorhanden, 1 korrekt bewertet. Keine Content-Security-Policy gefunden.",
"findings": [],
"ok_count": 1,
"weak_count": 0,
"csp_analysis": {
"color": "red",
"score": 0,
"status": "fehlt",
"summary": "Keine Content-Security-Policy gefunden.",
"enforced": false,
"findings": [],
"available": false,
"directives": [],
"report_only": false,
"finding_count": 0,
"warning_count": 0
},
"missing_count": 8,
"present_count": 1,
"missing_info_count": 5,
"missing_warning_count": 3
},
"infrastructure_analysis": {
"signals": {
"caa": false,
"dnssec": false,
"final_https": true,
"tls_version": "TLSv1.3",
"hsts_enabled": true,
"address_count": 2,
"ipv6_available": true,
"email_protection": {
"mx": true,
"spf": true,
"dmarc": false
},
"certificate_valid": true,
"certificate_issuer": "R12",
"certificate_alt_names": [
"abcitydienst.ch",
"www.abcitydienst.ch"
],
"multiple_ip_addresses": true,
"certificate_expires_at": "Aug 10 06:13:46 2026 GMT",
"certificate_days_remaining": 55,
"certificate_hostname_matches": true
},
"findings": [
{
"id": "dmarc_missing",
"title": "DMARC fehlt",
"public": true,
"category": "email",
"severity": "info"
},
{
"id": "caa_missing",
"title": "CAA-Record fehlt",
"public": true,
"category": "dns",
"severity": "info"
}
],
"risk_level": "low",
"positive_signals": [
"Mehrere IP-Adressen gefunden: Hinweis auf redundante Infrastruktur oder CDN.",
"IPv6 ist vorhanden.",
"Moderne TLS-Version aktiv: TLSv1.3.",
"HSTS ist aktiv."
]
},
"performance_analysis": {
"score": 100,
"signals": {
"compressed": false,
"duration_ms": 680,
"image_count": 10,
"script_count": 2,
"cache_control": "max-age=10, public",
"content_length": 0,
"viewport_found": true,
"stylesheet_count": 3
},
"findings": [],
"risk_level": "low"
},
"accessibility_analysis": {
"color": "orange",
"score": 68,
"status": "auffällig",
"signals": {
"h1_count": 0,
"image_count": 10,
"button_count": 0,
"heading_count": 3,
"viewport_found": true,
"html_lang_found": true,
"form_field_count": 0,
"image_missing_alt_count": 10,
"buttons_without_name_count": 0,
"form_fields_without_label_count": 0
},
"summary": "10 Bild(er), 0 Formularfeld(er), 0 Button(s) im passiven HTML-Sample auf Basis-Barrierefreiheit geprüft.",
"findings": [
{
"id": "image_alt_missing",
"count": 10,
"title": "Bilder ohne Alternativtext",
"public": true,
"category": "accessibility",
"severity": "info"
}
],
"wcag_matrix": {
"rows": [
{
"id": "wcag_non_text_content",
"ok": false,
"wcag": "WCAG 1.1.1 Non-text Content",
"title": "Alternativtexte für Bilder",
"impact": "mittel",
"status": "prüfen",
"evidence": "10 von 10 Bild(er) ohne alt-Text im HTML-Sample."
},
{
"id": "wcag_form_labels",
"ok": true,
"wcag": "WCAG 1.3.1 Info and Relationships / 3.3.2 Labels or Instructions",
"title": "Formularfelder beschriften",
"impact": "niedrig",
"status": "ok",
"evidence": "0 von 0 Formularfeld(er) ohne erkennbare Beschriftung."
},
{
"id": "wcag_button_names",
"ok": true,
"wcag": "WCAG 4.1.2 Name, Role, Value",
"title": "Buttons mit Namen versehen",
"impact": "niedrig",
"status": "ok",
"evidence": "0 von 0 Button(s) ohne erkennbaren Namen."
},
{
"id": "wcag_page_language",
"ok": true,
"wcag": "WCAG 3.1.1 Language of Page",
"title": "Seitensprache auszeichnen",
"impact": "niedrig",
"status": "ok",
"evidence": "HTML-lang-Attribut gefunden."
},
{
"id": "wcag_heading_structure",
"ok": false,
"wcag": "WCAG 1.3.1 Info and Relationships / 2.4.6 Headings and Labels",
"title": "Überschriftenstruktur",
"impact": "mittel",
"status": "prüfen",
"evidence": "0 H1 und 3 Überschrift(en) im HTML-Sample."
},
{
"id": "wcag_mobile_reflow",
"ok": true,
"wcag": "WCAG 1.4.10 Reflow",
"title": "Mobile Viewport-Basis",
"impact": "niedrig",
"status": "ok",
"evidence": "Viewport-Meta-Tag gefunden."
}
],
"summary": "2 WCAG-/EAA-Prüfpunkt(e) auffällig, davon 0 mit hoher Auswirkung.",
"standard": "WCAG 2.2 orientierte Basisprüfung",
"available": true,
"issue_count": 2,
"high_impact_count": 0
}
},
"domain_history": {
"summary": "Domainhistorie konnte per RDAP nicht zuverlässig abgerufen werden.",
"findings": [],
"available": false,
"risk_level": "unknown"
},
"data_entry_analysis": {
"forms": [
{
"url": "https://www.abcitydienst.ch/Schluesseldienst/kontakt.php",
"path": "/Schluesseldienst/kontakt.php",
"method": "UNBEKANNT",
"source": "crawl",
"purpose": "Formular",
"data_types": [],
"field_count": 0
},
{
"url": "https://www.abcitydienst.ch/kontakt.php",
"path": "/kontakt.php",
"method": "UNBEKANNT",
"source": "crawl",
"purpose": "Formular",
"data_types": [],
"field_count": 0
},
{
"purpose": "Formular",
"field_count": 0,
"source": "crawl",
"path": "/Schluesseldienst/kontakt.php",
"url": "https://www.abcitydienst.ch/Schluesseldienst/kontakt.php"
},
{
"purpose": "Formular",
"field_count": 0,
"source": "crawl",
"path": "/kontakt.php",
"url": "https://www.abcitydienst.ch/kontakt.php"
}
],
"score": 75,
"summary": "Crawl fand 2 Formular(e) auf 2 geprüften Seite(n), u. a. /Schluesseldienst/kontakt.php, /kontakt.php.",
"findings": [
{
"id": "data_entry_privacy_context_missing",
"title": "Dateneingabe ohne klaren Datenschutzkontext",
"public": true,
"category": "data_entry",
"severity": "warning"
}
],
"form_count": 2,
"risk_level": "medium",
"field_count": 0,
"asks_for_data": true,
"crawl_form_pages": [
{
"url": "https://www.abcitydienst.ch/Schluesseldienst/kontakt.php",
"path": "/Schluesseldienst/kontakt.php",
"category": "kontakt",
"form_count": 1
},
{
"url": "https://www.abcitydienst.ch/kontakt.php",
"path": "/kontakt.php",
"category": "kontakt",
"form_count": 1
}
],
"payment_providers": [],
"detected_data_types": [
{
"id": "contact",
"count": 1,
"label": "Kontaktformular"
}
],
"crawl_form_page_count": 2,
"privacy_context_found": false,
"operator_context_found": true
},
"pii_exposure_analysis": {
"color": "green",
"score": 100,
"checks": [
{
"id": "current_url",
"ok": true,
"count": 0,
"label": "Aktuelle URL",
"detail": "Keine sensiblen Query-Parameter erkannt."
},
{
"id": "link_queries",
"ok": true,
"count": 0,
"label": "Link-Parameter",
"detail": "Keine sensiblen Link-Querys erkannt."
},
{
"id": "get_forms",
"ok": true,
"count": 0,
"label": "GET-Formulare",
"detail": "Keine personenbezogenen GET-Formulare erkannt."
},
{
"id": "external_forms",
"ok": true,
"count": 0,
"label": "Externe Formularziele",
"detail": "Keine externen Formularziele mit personenbezogenen Feldern erkannt."
},
{
"id": "tracking_context",
"ok": true,
"count": 0,
"label": "Tracking neben Dateneingabe",
"detail": "Keine Kombination aus Dateneingabe und datenschutzrelevanten Drittanbietern erkannt."
}
],
"status": "unauffällig",
"summary": "0 PII-/Datenleck-Hinweis(e) aus URL-, Formular- und Browserkontext.",
"findings": [],
"link_hits": [],
"finding_count": 0,
"current_url_hits": [],
"tracking_context": false,
"sensitive_get_forms": []
},
"scan_history_analysis": {
"available": false,
"summary": "Noch kein früherer gespeicherter Scan für diese Domain vorhanden.",
"total_scan_count": 1,
"previous_scan_count": 0,
"history": [
{
"scan_id": "5b0dc7b3-0fd0-4c2e-9e94-8723bd7698a3",
"created_at": "2026-06-15 19:19:14.751642+02",
"score": 0,
"verdict": "riskant",
"finding_count": 20,
"integrity_root_hash": "cba3033c9f2c33f6a57e2ffa7f8f61545bc43c62184ba73bf30f4d73807c9a7f",
"integrity_available_hash_count": 9,
"current": true
}
],
"new_findings": [],
"resolved_findings": [],
"technical_changes": {
"available": false,
"summary": "Noch kein früherer Scan für technische Änderungen vorhanden."
}
},
"benchmark_analysis": {
"host": "abcitydienst.ch",
"rank": 1,
"score": 0,
"status": "im_mittelfeld",
"summary": "abcitydienst.ch liegt mit 0 Punkten ungefähr im gespeicherten Vergleichsfeld. Weil viele gespeicherte Checks bei 0 Punkten liegen, zeigt die Detailansicht zusätzlich aktive Peers mit Durchschnitt 17.5.",
"available": true,
"peer_count": 1773,
"percentile": 0,
"query_mode": "php_ttl_cache_refresh",
"distribution": {
"0_39": 1766,
"40_59": 5,
"60_79": 2,
"80_100": 0
},
"median_score": 0,
"average_score": 1,
"comparison_basis": "Neuester gespeicherter SaferPage-Scan je Domain; überwiegend deutschsprachige gespeicherte Checks.",
"same_score_count": 0,
"better_than_count": 0,
"qualified_peer_count": 101,
"zero_score_count": 1672,
"top_quartile_score": 0,
"top_decile_score": 0,
"qualified_average_score": 17.5,
"qualified_median_score": 16,
"qualified_top_quartile_score": 24,
"qualified_top_decile_score": 36,
"thresholds": [
{
"id": "critical",
"label": "Kritisch",
"range": "0-39",
"met": true
},
{
"id": "basic",
"label": "Basis stabilisieren",
"range": "40-59",
"met": false
},
{
"id": "managed",
"label": "Gesteuert",
"range": "60-79",
"met": false
},
{
"id": "strong",
"label": "Stark",
"range": "80-100",
"met": false
}
],
"risk_tier": "kritisch",
"target_score": 40,
"aspirational_target_score": 60,
"gap_to_target": 40,
"gap_to_top_quartile": 24,
"gap_to_strong": 80,
"cache_ttl_seconds": 300
},
"audit_receipt": {
"url": "https://abcitydienst.ch/",
"host": "abcitydienst.ch",
"status": "verfügbar",
"bot_url": "https://saferpage.de/bot",
"summary": "Prüfbeleg für abcitydienst.ch: kontrollierter HTTP-/Browser-Kurzcheck mit 24 Request(s), 4 Consent-Zustand/Zuständen und 6 Artefakt(en).",
"renderer": "playwright-chromium",
"artifacts": [
{
"label": "Öffentlicher Kurzreport",
"detail": "https://saferpage.de/abcitydienst.ch",
"status": "verfügbar"
},
{
"label": "JSON-Export",
"detail": "Maschinenlesbarer Report mit Modulen, Nachweisen und Tabellen.",
"status": "verfügbar"
},
{
"label": "CSV-Export",
"detail": "Tabellarische Prüfzeilen für Betreiber, Datenschutz und Technik.",
"status": "verfügbar"
},
{
"label": "160x150 Seitenvorschau",
"detail": "/cache/screenshots/abcitydienst.ch-160x150-82140f16e5797c28a6.png",
"status": "verfügbar"
},
{
"label": "Empfänger-/Anbieterinventar",
"detail": "2 Anbieterzeile(n), 2 AVV-/Rollenprüfung(en).",
"status": "unauffällig"
},
{
"label": "Barrierefreiheitserklärung-Entwurf",
"detail": "2 bekannte Barrierefreiheits-Punkt(e).",
"status": "Teilweise konform im automatischen Basischeck"
}
],
"available": true,
"final_url": "https://www.abcitydienst.ch/Schluesseldienst/",
"checked_at": "2026-06-15T17:19:14+00:00",
"share_text": "SaferPage Prüfbeleg abcitydienst.ch: 24 Browser-Request(s), 2 Drittanbieter, 0 Cookie-/Storage-Einträge, geprüft am 2026-06-15T17:19:14.",
"user_agent": "SaferPageBot/0.2 (+https://saferpage.de/bot; passive website safety check; no attack tests)",
"limitations": [
"Öffentliche Nachweise enthalten keine Cookie-Werte und keine vollständigen Request-URLs.",
"Der Scan ist ein passiver Browser- und HTTP-Kurzcheck; rechtliche Bewertung bleibt Betreiberaufgabe.",
"Dynamische Inhalte können sich je nach Region, Zeit, Gerät und Consent-Auswahl ändern."
],
"scan_context": "manual",
"coverage_items": [
{
"label": "HTTP/DNS/TLS",
"value": "HTTP 200 · DNS ok · TLS ok"
},
{
"label": "Browserlauf",
"value": "24 Request(s), 2 Drittanbieter-Domain(s), 0 Browser-Cookie(s)."
},
{
"label": "Consent-Zustände",
"value": "4 Zustand/Zustände: Default, Ablehnen, Akzeptieren und GPC soweit verfügbar."
},
{
"label": "Seitenabdeckung",
"value": "8 priorisierte Unterseite(n) im Nachweispack."
},
{
"label": "Drittanbieter-Auszug",
"value": "2 Anbieterzeile(n) im öffentlichen Nachweis."
},
{
"label": "Cookie-Auszug",
"value": "0 Cookie-Zeile(n) im öffentlichen Nachweis."
}
],
"confidence_score": 84,
"browser_final_url": "https://www.abcitydienst.ch/Schluesseldienst/"
},
"evidence_integrity_manifest": {
"host": "abcitydienst.ch",
"status": "verfügbar",
"summary": "Integritätsmanifest für abcitydienst.ch: 9/9 Nachweisbereich(e) mit SHA-256-Hash dokumentiert.",
"sections": [
{
"id": "audit_receipt",
"hash": "8cb15737dae05f5c6d7af5ca99ea60ab0b8b769d7243683c03422cf56379b859",
"count": 18,
"label": "Prüfbeleg",
"detail": "Kanonischer JSON-Hash des kompakten Prüfbelegs.",
"status": "verfügbar"
},
{
"id": "protocol",
"hash": "8d96c75a8c52109b15bb9888ba07f3b38000584370af94a4ad40364e42d63316",
"count": 15,
"label": "Scan-Protokoll",
"detail": "URL, Endziel, User-Agent, Zeitstempel, HTTP/DNS/TLS und Renderer.",
"status": "verfügbar"
},
{
"id": "checkpoints",
"hash": "d152f7afb505069c66d098dca5474431b571e37954b0975b1e0baefb5316b28c",
"count": 6,
"label": "Prüfschritte",
"detail": "Kanonischer JSON-Hash der dokumentierten Prüfstationen.",
"status": "verfügbar"
},
{
"id": "consent_states",
"hash": "17a1c0a7e62c7e67bbbd743034d3cfa8345488c6d90287d89ec99c4d5fddcb43",
"count": 4,
"label": "Consent-Zustände",
"detail": "Default-, Ablehnen-, Akzeptieren- und GPC-Nachweise soweit verfügbar.",
"status": "verfügbar"
},
{
"id": "third_party_evidence",
"hash": "57c059ae212814deca5625520b52d3888dc910133c5e6c904ff36f4ccc41b8a7",
"count": 2,
"label": "Drittanbieter-Auszug",
"detail": "Sanitisierte Anbieter-, Kategorie-, Transfer- und Request-Zählwerte.",
"status": "verfügbar"
},
{
"id": "cookie_evidence",
"hash": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
"count": 0,
"label": "Cookie-Auszug",
"detail": "Sanitisierte Cookie-Metadaten ohne Cookie-Werte.",
"status": "leer"
},
{
"id": "request_samples",
"hash": "f95d3224494b65b7cbffc1e2f1f357a63a72bed84a82c1855142d2e7e5a606d0",
"count": 6,
"label": "Request-Samples",
"detail": "Sanitisierte Drittanbieter-Samples ohne vollständige Request-URLs.",
"status": "verfügbar"
},
{
"id": "checked_pages",
"hash": "f1b0d4aaed68122202322f940542538446c84d0a93a0b85a2b03a3629d978288",
"count": 8,
"label": "Geprüfte Unterseiten",
"detail": "Priorisierte Pfade aus Sitemap, Pflichtseiten und interner Linkstruktur.",
"status": "verfügbar"
},
{
"id": "screenshot_file",
"hash": "71234d50267d40c9f2cdf5928bbf1b7f2eb18d91cbb0312fbba1c223046a22bf",
"count": 11012,
"label": "160x150 Seitenvorschau-Datei",
"detail": "/cache/screenshots/abcitydienst.ch-160x150-82140f16e5797c28a6.png",
"status": "verfügbar"
}
],
"algorithm": "sha256",
"available": true,
"root_hash": "cba3033c9f2c33f6a57e2ffa7f8f61545bc43c62184ba73bf30f4d73807c9a7f",
"checked_at": "2026-06-15T17:19:14+00:00",
"limitations": [
"Das Manifest schützt die im Report veröffentlichten/sanitisierten Nachweise, nicht verdeckte Cookie-Werte oder vollständige Request-URLs.",
"Ohne externe qualifizierte Zeitstempelung beweist der Hash Integrität des exportierten Artefakts, aber keine amtliche Zustellung."
],
"section_count": 9,
"canonicalization": "JSON UTF-8, sort_keys=true, kompakte Separatoren; Screenshot als rohe Datei-Bytes.",
"available_hash_count": 9
},
"audit_evidence_pack": {
"status": "verfügbar",
"summary": "Nachweisprotokoll mit 24 Browser-Request(s), 0 Cookie-Nachweis(en), 2 Drittanbieter-Auszug/auszügen und 4 Consent-Zustand/Zuständen.",
"protocol": {
"host": "abcitydienst.ch",
"dns_ok": true,
"tls_ok": true,
"bot_url": "https://saferpage.de/bot",
"renderer": "playwright-chromium",
"final_url": "https://www.abcitydienst.ch/Schluesseldienst/",
"input_url": "https://abcitydienst.ch/",
"checked_at": "2026-06-15T17:19:14+00:00",
"user_agent": "SaferPageBot/0.2 (+https://saferpage.de/bot; passive website safety check; no attack tests)",
"http_status": 200,
"scan_context": "manual",
"screenshot_url": "/cache/screenshots/abcitydienst.ch-160x150-82140f16e5797c28a6.png",
"googlebot_status": 200,
"browser_final_url": "https://www.abcitydienst.ch/Schluesseldienst/",
"dns_address_count": 2
},
"checkpoints": [
{
"label": "DNS",
"detail": "2 Adresse(n) aufgelöst.",
"status": "ok"
},
{
"label": "TLS/HTTPS",
"detail": "TLSv1.3",
"status": "ok"
},
{
"label": "HTTP-Abruf",
"detail": "Status 200, Endziel https://www.abcitydienst.ch/Schluesseldienst/.",
"status": "ok"
},
{
"label": "Browserlauf",
"detail": "24 Request(s), 2 Drittanbieter-Domain(s).",
"status": "ok"
},
{
"label": "Consent-Zustände",
"detail": "Default, Ablehnen, Akzeptieren und GPC werden soweit möglich gegenübergestellt.",
"status": "unauffällig"
},
{
"label": "Exports",
"detail": "PDF/Druck, JSON und CSV enthalten die wesentlichen Prüfnachweise.",
"status": "verfügbar"
}
],
"limitations": [
"Öffentliche Nachweise enthalten keine Cookie-Werte und keine vollständigen Request-URLs.",
"Der Scan ist ein passiver Browser- und HTTP-Kurzcheck; rechtliche Bewertung bleibt Betreiberaufgabe.",
"Dynamische Inhalte können sich je nach Region, Zeit, Gerät und Consent-Auswahl ändern."
],
"checked_pages": [
{
"path": "/Schluesseldienst/kontakt.php",
"source": "homepage_link",
"status": 0,
"category": "kontakt"
},
{
"path": "/kontakt.php",
"source": "homepage_link",
"status": 0,
"category": "kontakt"
},
{
"path": "/preise.php",
"source": "homepage_link",
"status": 0,
"category": "preise"
},
{
"path": "/",
"source": "homepage_link",
"status": 0,
"category": "unterseite"
},
{
"path": "/Schluesseldienst/Adlikon+bei+Regensdorf",
"source": "homepage_link",
"status": 0,
"category": "unterseite"
},
{
"path": "/Schluesseldienst/Adliswil",
"source": "homepage_link",
"status": 0,
"category": "unterseite"
},
{
"path": "/Schluesseldienst/Bassersdorf",
"source": "homepage_link",
"status": 0,
"category": "unterseite"
},
{
"path": "/Schluesseldienst/Birmensdorf+ZH",
"source": "homepage_link",
"status": 0,
"category": "unterseite"
}
],
"cookie_evidence": [],
"browser_evidence": {
"gpc_enabled": true,
"request_count": 24,
"storage_total": 0,
"accept_clicked": false,
"reject_clicked": false,
"browser_cookie_count": 0,
"contacted_domain_count": 3,
"third_party_domain_count": 2,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 0
},
"storage_evidence": {
"tracking_key_hints": [],
"local_storage_total": 0,
"session_storage_total": 0
},
"third_party_evidence": [
{
"host": "maxcdn.bootstrapcdn.com",
"category": "Sonstige",
"provider": "maxcdn.bootstrapcdn.com",
"transfer": "Jurisdiktion unklar",
"risk_level": "niedrig",
"request_count": 5,
"resource_types": [
"font",
"stylesheet",
"script"
],
"privacy_relevant": false
},
{
"host": "code.jquery.com",
"category": "Sonstige",
"provider": "code.jquery.com",
"transfer": "Jurisdiktion unklar",
"risk_level": "niedrig",
"request_count": 1,
"resource_types": [
"script"
],
"privacy_relevant": false
}
],
"external_script_count": 2,
"consent_state_evidence": [
{
"label": "Erstaufruf",
"cookie_count": 0,
"domain_count": 2,
"request_count": 6,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 0
},
{
"label": "Nach Ablehnen neu",
"cookie_count": 0,
"domain_count": 0,
"request_count": 0,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 0
},
{
"label": "Nach Akzeptieren neu",
"cookie_count": 0,
"domain_count": 0,
"request_count": 0,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 0
},
{
"label": "GPC-Aufruf",
"cookie_count": 0,
"domain_count": 2,
"request_count": 5,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 0
}
],
"request_sample_evidence": [
{
"host": "maxcdn.bootstrapcdn.com",
"query_keys": [],
"resource_type": "stylesheet",
"query_key_count": 0,
"referrer_has_path": false,
"referrer_has_query": false,
"sensitive_query_key_count": 0
},
{
"host": "maxcdn.bootstrapcdn.com",
"query_keys": [],
"resource_type": "stylesheet",
"query_key_count": 0,
"referrer_has_path": false,
"referrer_has_query": false,
"sensitive_query_key_count": 0
},
{
"host": "code.jquery.com",
"query_keys": [],
"resource_type": "script",
"query_key_count": 0,
"referrer_has_path": false,
"referrer_has_query": false,
"sensitive_query_key_count": 0
},
{
"host": "maxcdn.bootstrapcdn.com",
"query_keys": [],
"resource_type": "script",
"query_key_count": 0,
"referrer_has_path": false,
"referrer_has_query": false,
"sensitive_query_key_count": 0
},
{
"host": "maxcdn.bootstrapcdn.com",
"query_keys": [],
"resource_type": "font",
"query_key_count": 0,
"referrer_has_path": true,
"referrer_has_query": false,
"sensitive_query_key_count": 0
},
{
"host": "maxcdn.bootstrapcdn.com",
"query_keys": [
"v"
],
"resource_type": "font",
"query_key_count": 1,
"referrer_has_path": true,
"referrer_has_query": false,
"sensitive_query_key_count": 0
}
]
},
"consent_visual_salience_evidence": {
"schema": "https://saferpage.de/schemas/consent-visual-salience-evidence.v1",
"status": "measured_dom_viewport_signal",
"available": true,
"evidence_level": "dom_viewport_signal_only",
"summary": "Der erste Headless-Chromium-Viewport liefert sichtbare Consent-Control-Signale mit Text, Position, Groesse und typografischen Hinweisen.",
"sample_status": "visible_controls_without_classified_samples",
"classified_sample_count": 0,
"accept_control_count": 0,
"reject_control_count": 0,
"settings_control_count": 0,
"visible_control_count": 9,
"accept_max_area": 0,
"reject_max_area": 0,
"reject_prominence_ratio": "nicht messbar",
"samples": [],
"sample_boundary": "Samples enthalten nur klassifizierte Accept-/Reject-/Settings-Controls. Weitere sichtbare Consent-Controls bleiben als Zaehler erhalten, werden aber ohne Klassifizierung nicht als Ablehnen-, Akzeptieren- oder Einstellungsprobe behauptet.",
"claim_boundary": "Consent-Visual-Salienz ist ein DOM-/Viewport-Signal aus dem ersten Browserlauf. Sie ist keine Rechtsbewertung, kein Dark-Pattern-Endurteil und kein Nachweis fuer spaetere Consent-Zustaende, Scrollbereiche, Loginbereiche oder manuelle Betreiberkontexte."
}
}