{
    "schema": "https://saferpage.de/schemas/operator-remediation-ticket-delivery.v1",
    "generated_at": "2026-06-19T13:17:15+00:00",
    "domain": "berlinhyp.de",
    "available": true,
    "scan": {
        "id": "4aae630e-5bc8-4310-ab20-1577feb35246",
        "checked_at": "2026-06-19 11:43:06.006813+02"
    },
    "summary": "Delivery-Paket fuer Nachweispositionen mit Webhook-, Slack-, Teams- und Jira-Payloads, HMAC-Receiver-Vertrag und Test-Fixture.",
    "dry_run": true,
    "does_not_send": true,
    "metrics": {
        "delivery_job_count": 26,
        "high_priority_count": 9,
        "channel_count": 4,
        "receiver_check_count": 6,
        "test_fixture_negative_count": 4
    },
    "signature_verification": {
        "algorithm": "HMAC-SHA256",
        "canonical_body": "Exakt canonical_webhook_body aus dem jeweiligen delivery_job signieren; keine Pretty-Print- oder Reordering-Variante verwenden.",
        "signature_secret_ref": "SAFERPAGE_OPERATOR_WEBHOOK_SECRET oder zielsystemspezifisches Secret im Secret Manager",
        "signature_header": "X-SaferPage-Signature",
        "signature_format": "sha256=<hex_hmac_sha256>",
        "body_sha256_header": "X-SaferPage-Body-SHA256",
        "idempotency_header": "X-SaferPage-Idempotency-Key",
        "receiver_must_check": [
            "HMAC ueber den exakten Request-Body stimmt mit X-SaferPage-Signature ueberein.",
            "SHA-256 des exakten Request-Body stimmt mit X-SaferPage-Body-SHA256 ueberein.",
            "X-SaferPage-Event ist operator.remediation.ticket_ready.",
            "X-SaferPage-Schema ist operator-remediation-ticket-delivery.v1.",
            "X-SaferPage-Idempotency-Key wurde fuer Domain, Scan und Nachweisposition noch nicht verarbeitet.",
            "Empfaenger, Projekt, Queue und Verantwortlichkeit sind fuer diese Domain freigegeben."
        ],
        "failure_policy": "Bei fehlender Signatur, Body-Hash-Abweichung, Replay oder unbekanntem Zielsystem ablehnen, nicht teilweise verarbeiten und Auditlog ohne Secret-Werte schreiben."
    },
    "verification_test_fixture": {
        "public_test_secret": "saferpage_remediation_ticket_test_secret_do_not_use_in_production",
        "canonical_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"example.test\",\"scan_id\":\"scan_test_2026_06_09\",\"ticket_id\":\"remediation_test_ticket\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Datenschutz/IT\",\"sla\":\"7 Tage\",\"title\":\"Consent-Befund reproduzieren und beheben\",\"evidence\":\"Test-Fixture fuer Receiver-Implementierung.\",\"action\":\"Testpayload unveraendert verifizieren, Idempotency-Key pruefen und danach verwerfen.\",\"acceptance_criteria\":[\"Signatur stimmt mit exakt diesem Body ueberein.\",\"Idempotency-Key wurde noch nicht verarbeitet.\",\"Event, Schema und Domain sind erlaubt.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/example.test\",\"rescan\":\"https://saferpage.de/scanbetrieb/example.test\",\"report\":\"https://saferpage.de/example.test\",\"fix_guides\":\"https://saferpage.de/fix-guides/example.test\"}}",
        "canonical_body_sha256": "cd19d86313ea4d6ea0f5dcd65b2b40794f017121c655dedcdfa6df362b480dcf",
        "expected_signature": "sha256=834a9f0cd7a3922648b8aa1ab00aef7ae7aa31d08b63e804ee4a586c0e9dd555",
        "expected_signature_header": "X-SaferPage-Signature: sha256=834a9f0cd7a3922648b8aa1ab00aef7ae7aa31d08b63e804ee4a586c0e9dd555",
        "idempotency_key": "sp-fix-test-fixture",
        "positive_test": "Empfaenger akzeptiert den unveraenderten canonical_body mit expected_signature und verwirft ihn danach als Testevent.",
        "negative_tests": [
            "Ein geaendertes Byte im Body muss abgelehnt werden.",
            "Ein fehlender oder doppelter X-SaferPage-Idempotency-Key muss abgelehnt werden.",
            "Eine Signatur mit anderem Secret muss abgelehnt werden.",
            "Ein erneuter Request mit derselben Idempotency-Key/Event-Kombination darf nicht erneut verarbeitet werden."
        ],
        "sample_commands": [
            "printf %s \"$BODY\" | openssl dgst -sha256 -hmac \"saferpage_remediation_ticket_test_secret_do_not_use_in_production\" -binary | xxd -p -c 256",
            "printf %s \"$BODY\" | sha256sum",
            "curl -X POST -H \"Content-Type: application/json\" -H \"X-SaferPage-Event: operator.remediation.ticket_ready\" -H \"X-SaferPage-Signature: sha256=834a9f0cd7a3922648b8aa1ab00aef7ae7aa31d08b63e804ee4a586c0e9dd555\" --data \"$BODY\" https://receiver.example.test/saferpage"
        ]
    },
    "retry_policy": {
        "max_attempts": 3,
        "backoff_seconds": [
            300,
            1800,
            7200
        ],
        "dead_letter_queue": "privacyops.remediation_ticket.failed"
    },
    "delivery_jobs": [
        {
            "id": "sp-fix-d20ddac5f419427b9098f747",
            "ticket_id": "remediation_vendor_contract_transfer_fix",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Legal/Vendor-Verantwortung",
            "sla": "7 Tage",
            "summary": "[berlinhyp.de] Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
            "description": "Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren.",
            "idempotency_key": "sp-fix-d20ddac5f419427b9098f747",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-d20ddac5f419427b9098f747",
                "X-SaferPage-Body-SHA256": "156762675877626bc36d18c1d967020b34803a80b18375ab380c484c139ac307",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_vendor_contract_transfer_fix",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Legal/Vendor-Verantwortung",
                "sla": "7 Tage",
                "title": "Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
                "evidence": "Vendor-Due-Diligence mit 2 Anbieter(n), 0 hohem Risiko, 2 AVV-/DPA-Prüfung(en) und 2 Transfer-/Jurisdiktionsfrage(n).",
                "action": "Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_vendor_contract_transfer_fix\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Legal/Vendor-Verantwortung\",\"sla\":\"7 Tage\",\"title\":\"Anbieterakten, AVV/DPA und Transfers priorisiert schließen\",\"evidence\":\"Vendor-Due-Diligence mit 2 Anbieter(n), 0 hohem Risiko, 2 AVV-/DPA-Prüfung(en) und 2 Transfer-/Jurisdiktionsfrage(n).\",\"action\":\"Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "156762675877626bc36d18c1d967020b34803a80b18375ab380c484c139ac307",
            "slack_payload": {
                "text": "[HOCH] berlinhyp.de: Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Anbieterakten, AVV/DPA und Transfers priorisiert schließen*\nTop-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Legal/Vendor-Verantwortung · Zielzeit: 7 Tage · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] berlinhyp.de: Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Anbieterakten, AVV/DPA und Transfers priorisiert schließen"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Legal/Vendor-Verantwortung"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
                    "description": "Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-37ddd9e80ea4b2001f853c9e",
            "ticket_id": "remediation_beacon_api_usage",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[berlinhyp.de] Beacon-/Keepalive-Telemetrie erkannt",
            "description": "navigator.sendBeacon, keepalive-Fetch und vergleichbare Telemetrie auf Consent, Anbieter und Datenminimierung prüfen.",
            "idempotency_key": "sp-fix-37ddd9e80ea4b2001f853c9e",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-37ddd9e80ea4b2001f853c9e",
                "X-SaferPage-Body-SHA256": "ce182255776c1fea679b33625a010135c7fa8bce6d48011d959ccdc85e9b08ae",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_beacon_api_usage",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Beacon-/Keepalive-Telemetrie erkannt",
                "evidence": "",
                "action": "navigator.sendBeacon, keepalive-Fetch und vergleichbare Telemetrie auf Consent, Anbieter und Datenminimierung prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/tracking-pixel-und-beacons-begrenzen",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_beacon_api_usage\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Beacon-/Keepalive-Telemetrie erkannt\",\"evidence\":\"\",\"action\":\"navigator.sendBeacon, keepalive-Fetch und vergleichbare Telemetrie auf Consent, Anbieter und Datenminimierung prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-pixel-und-beacons-begrenzen\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "ce182255776c1fea679b33625a010135c7fa8bce6d48011d959ccdc85e9b08ae",
            "slack_payload": {
                "text": "[HOCH] berlinhyp.de: Beacon-/Keepalive-Telemetrie erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Beacon-/Keepalive-Telemetrie erkannt*\nnavigator.sendBeacon, keepalive-Fetch und vergleichbare Telemetrie auf Consent, Anbieter und Datenminimierung prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] berlinhyp.de: Beacon-/Keepalive-Telemetrie erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Beacon-/Keepalive-Telemetrie erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "navigator.sendBeacon, keepalive-Fetch und vergleichbare Telemetrie auf Consent, Anbieter und Datenminimierung prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Beacon-/Keepalive-Telemetrie erkannt",
                    "description": "navigator.sendBeacon, keepalive-Fetch und vergleichbare Telemetrie auf Consent, Anbieter und Datenminimierung prüfen.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/tracking-pixel-und-beacons-begrenzen\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-c6a0e4fa6e95ce1b69d49f41",
            "ticket_id": "remediation_csp_unsafe_eval",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[berlinhyp.de] CSP erlaubt eval-nahe Skriptausführung",
            "description": "unsafe-eval vermeiden und betroffene Bibliotheken oder Build-Konfigurationen prüfen.",
            "idempotency_key": "sp-fix-c6a0e4fa6e95ce1b69d49f41",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-c6a0e4fa6e95ce1b69d49f41",
                "X-SaferPage-Body-SHA256": "60181b31798aca6928f199f308f034e2fccbb5ef14d996fc37b88dc2ceb5cae9",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_csp_unsafe_eval",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "CSP erlaubt eval-nahe Skriptausführung",
                "evidence": "",
                "action": "unsafe-eval vermeiden und betroffene Bibliotheken oder Build-Konfigurationen prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_csp_unsafe_eval\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"CSP erlaubt eval-nahe Skriptausführung\",\"evidence\":\"\",\"action\":\"unsafe-eval vermeiden und betroffene Bibliotheken oder Build-Konfigurationen prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "60181b31798aca6928f199f308f034e2fccbb5ef14d996fc37b88dc2ceb5cae9",
            "slack_payload": {
                "text": "[HOCH] berlinhyp.de: CSP erlaubt eval-nahe Skriptausführung",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*CSP erlaubt eval-nahe Skriptausführung*\nunsafe-eval vermeiden und betroffene Bibliotheken oder Build-Konfigurationen prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] berlinhyp.de: CSP erlaubt eval-nahe Skriptausführung",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "CSP erlaubt eval-nahe Skriptausführung"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "unsafe-eval vermeiden und betroffene Bibliotheken oder Build-Konfigurationen prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] CSP erlaubt eval-nahe Skriptausführung",
                    "description": "unsafe-eval vermeiden und betroffene Bibliotheken oder Build-Konfigurationen prüfen.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-5b970013a93f89610c6206c2",
            "ticket_id": "remediation_external_canonical",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[berlinhyp.de] Canonical zeigt auf fremde Domain",
            "description": "Canonical-Tags sollten nur bewusst auf fremde Domains zeigen; sonst kann Traffic/Ranking umgeleitet werden.",
            "idempotency_key": "sp-fix-5b970013a93f89610c6206c2",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-5b970013a93f89610c6206c2",
                "X-SaferPage-Body-SHA256": "27bcf70d68879dd05f7c256684456721c01633cfc2d83316d11f9565ab762ff8",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_external_canonical",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Canonical zeigt auf fremde Domain",
                "evidence": "",
                "action": "Canonical-Tags sollten nur bewusst auf fremde Domains zeigen; sonst kann Traffic/Ranking umgeleitet werden.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/seo-spam-und-cloaking-bereinigen",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_external_canonical\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Canonical zeigt auf fremde Domain\",\"evidence\":\"\",\"action\":\"Canonical-Tags sollten nur bewusst auf fremde Domains zeigen; sonst kann Traffic/Ranking umgeleitet werden.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/seo-spam-und-cloaking-bereinigen\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "27bcf70d68879dd05f7c256684456721c01633cfc2d83316d11f9565ab762ff8",
            "slack_payload": {
                "text": "[HOCH] berlinhyp.de: Canonical zeigt auf fremde Domain",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Canonical zeigt auf fremde Domain*\nCanonical-Tags sollten nur bewusst auf fremde Domains zeigen; sonst kann Traffic/Ranking umgeleitet werden."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] berlinhyp.de: Canonical zeigt auf fremde Domain",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Canonical zeigt auf fremde Domain"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Canonical-Tags sollten nur bewusst auf fremde Domains zeigen; sonst kann Traffic/Ranking umgeleitet werden."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Canonical zeigt auf fremde Domain",
                    "description": "Canonical-Tags sollten nur bewusst auf fremde Domains zeigen; sonst kann Traffic/Ranking umgeleitet werden.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/seo-spam-und-cloaking-bereinigen\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-964095209603942390659bca",
            "ticket_id": "remediation_third_party_full_referrer_leak",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[berlinhyp.de] Drittanbieter können vollen Referrer-Kontext erhalten",
            "description": "Referrer-Policy prüfen und für Anbieter wie content.googleapis.com mindestens strict-origin-when-cross-origin oder strenger setzen.",
            "idempotency_key": "sp-fix-964095209603942390659bca",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-964095209603942390659bca",
                "X-SaferPage-Body-SHA256": "c4090f9685650df734be7093a038f32fb333ac395576c99dea31804bc67e10cf",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_third_party_full_referrer_leak",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Drittanbieter können vollen Referrer-Kontext erhalten",
                "evidence": "",
                "action": "Referrer-Policy prüfen und für Anbieter wie content.googleapis.com mindestens strict-origin-when-cross-origin oder strenger setzen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/referrer-und-url-leaks-vermeiden",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_third_party_full_referrer_leak\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Drittanbieter können vollen Referrer-Kontext erhalten\",\"evidence\":\"\",\"action\":\"Referrer-Policy prüfen und für Anbieter wie content.googleapis.com mindestens strict-origin-when-cross-origin oder strenger setzen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/referrer-und-url-leaks-vermeiden\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "c4090f9685650df734be7093a038f32fb333ac395576c99dea31804bc67e10cf",
            "slack_payload": {
                "text": "[HOCH] berlinhyp.de: Drittanbieter können vollen Referrer-Kontext erhalten",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Drittanbieter können vollen Referrer-Kontext erhalten*\nReferrer-Policy prüfen und für Anbieter wie content.googleapis.com mindestens strict-origin-when-cross-origin oder strenger setzen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] berlinhyp.de: Drittanbieter können vollen Referrer-Kontext erhalten",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Drittanbieter können vollen Referrer-Kontext erhalten"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Referrer-Policy prüfen und für Anbieter wie content.googleapis.com mindestens strict-origin-when-cross-origin oder strenger setzen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Drittanbieter können vollen Referrer-Kontext erhalten",
                    "description": "Referrer-Policy prüfen und für Anbieter wie content.googleapis.com mindestens strict-origin-when-cross-origin oder strenger setzen.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/referrer-und-url-leaks-vermeiden\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-8bd10c0b4a545ae9bec4291e",
            "ticket_id": "remediation_third_country_transfer_review",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[berlinhyp.de] Drittland-/US-Anbieter im Browseraufruf prüfen",
            "description": "Für Anbieter wie apis.google.com, content.googleapis.com Transfergrundlage, AVV, DPF/SCC/TIA und Datenschutzhinweise prüfen.",
            "idempotency_key": "sp-fix-8bd10c0b4a545ae9bec4291e",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-8bd10c0b4a545ae9bec4291e",
                "X-SaferPage-Body-SHA256": "17af7ddc08a42eafc66d5bbbb1583abbd2f0a0aff08097acc09ef90b599ad273",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_third_country_transfer_review",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Drittland-/US-Anbieter im Browseraufruf prüfen",
                "evidence": "",
                "action": "Für Anbieter wie apis.google.com, content.googleapis.com Transfergrundlage, AVV, DPF/SCC/TIA und Datenschutzhinweise prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittlandtransfer-und-anbieter-pruefen",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_third_country_transfer_review\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Drittland-/US-Anbieter im Browseraufruf prüfen\",\"evidence\":\"\",\"action\":\"Für Anbieter wie apis.google.com, content.googleapis.com Transfergrundlage, AVV, DPF/SCC/TIA und Datenschutzhinweise prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittlandtransfer-und-anbieter-pruefen\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "17af7ddc08a42eafc66d5bbbb1583abbd2f0a0aff08097acc09ef90b599ad273",
            "slack_payload": {
                "text": "[HOCH] berlinhyp.de: Drittland-/US-Anbieter im Browseraufruf prüfen",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Drittland-/US-Anbieter im Browseraufruf prüfen*\nFür Anbieter wie apis.google.com, content.googleapis.com Transfergrundlage, AVV, DPF/SCC/TIA und Datenschutzhinweise prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] berlinhyp.de: Drittland-/US-Anbieter im Browseraufruf prüfen",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Drittland-/US-Anbieter im Browseraufruf prüfen"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Für Anbieter wie apis.google.com, content.googleapis.com Transfergrundlage, AVV, DPF/SCC/TIA und Datenschutzhinweise prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Drittland-/US-Anbieter im Browseraufruf prüfen",
                    "description": "Für Anbieter wie apis.google.com, content.googleapis.com Transfergrundlage, AVV, DPF/SCC/TIA und Datenschutzhinweise prüfen.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/drittlandtransfer-und-anbieter-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-02dd338dd4ad94c59c29955d",
            "ticket_id": "remediation_form_label_missing",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[berlinhyp.de] Formularfelder ohne klare Beschriftung",
            "description": "Für jedes Eingabefeld ein sichtbares label, aria-label oder aria-labelledby setzen.",
            "idempotency_key": "sp-fix-02dd338dd4ad94c59c29955d",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-02dd338dd4ad94c59c29955d",
                "X-SaferPage-Body-SHA256": "8925d4405e494d8ef9fab6ab83b52993674fd73a4ec0461fe92776be5b1136f3",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_form_label_missing",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Formularfelder ohne klare Beschriftung",
                "evidence": "",
                "action": "Für jedes Eingabefeld ein sichtbares label, aria-label oder aria-labelledby setzen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_form_label_missing\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Formularfelder ohne klare Beschriftung\",\"evidence\":\"\",\"action\":\"Für jedes Eingabefeld ein sichtbares label, aria-label oder aria-labelledby setzen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "8925d4405e494d8ef9fab6ab83b52993674fd73a4ec0461fe92776be5b1136f3",
            "slack_payload": {
                "text": "[HOCH] berlinhyp.de: Formularfelder ohne klare Beschriftung",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Formularfelder ohne klare Beschriftung*\nFür jedes Eingabefeld ein sichtbares label, aria-label oder aria-labelledby setzen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] berlinhyp.de: Formularfelder ohne klare Beschriftung",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Formularfelder ohne klare Beschriftung"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Für jedes Eingabefeld ein sichtbares label, aria-label oder aria-labelledby setzen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Formularfelder ohne klare Beschriftung",
                    "description": "Für jedes Eingabefeld ein sichtbares label, aria-label oder aria-labelledby setzen.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-747f6ca77c3a9eabaf43f7e9",
            "ticket_id": "remediation_pre_consent_nonessential_cookies",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[berlinhyp.de] Möglicherweise nicht notwendige Cookies vor Einwilligung",
            "description": "Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen.",
            "idempotency_key": "sp-fix-747f6ca77c3a9eabaf43f7e9",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-747f6ca77c3a9eabaf43f7e9",
                "X-SaferPage-Body-SHA256": "4cca93ed39aee96584c3cdac889da7554a87540c5ff317a6f0b485401c6890bd",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_pre_consent_nonessential_cookies",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Möglicherweise nicht notwendige Cookies vor Einwilligung",
                "evidence": "",
                "action": "Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/tracking-und-consent-reparieren",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_pre_consent_nonessential_cookies\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Möglicherweise nicht notwendige Cookies vor Einwilligung\",\"evidence\":\"\",\"action\":\"Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "4cca93ed39aee96584c3cdac889da7554a87540c5ff317a6f0b485401c6890bd",
            "slack_payload": {
                "text": "[HOCH] berlinhyp.de: Möglicherweise nicht notwendige Cookies vor Einwilligung",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Möglicherweise nicht notwendige Cookies vor Einwilligung*\nPrüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] berlinhyp.de: Möglicherweise nicht notwendige Cookies vor Einwilligung",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Möglicherweise nicht notwendige Cookies vor Einwilligung"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Möglicherweise nicht notwendige Cookies vor Einwilligung",
                    "description": "Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/tracking-und-consent-reparieren\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-80c29ff20cd525d9b24b2049",
            "ticket_id": "remediation_external_link_spam",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[berlinhyp.de] Sehr viele externe Links erkannt",
            "description": "Prüfen, ob die Seite als Linkfarm, Affiliate-Brücke oder Spam-Seite dient.",
            "idempotency_key": "sp-fix-80c29ff20cd525d9b24b2049",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-80c29ff20cd525d9b24b2049",
                "X-SaferPage-Body-SHA256": "2ecd589bb80dde356048e65599663be810963bcb1e320b8d242482326a9a0bf6",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_external_link_spam",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Sehr viele externe Links erkannt",
                "evidence": "",
                "action": "Prüfen, ob die Seite als Linkfarm, Affiliate-Brücke oder Spam-Seite dient.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/seo-spam-und-cloaking-bereinigen",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_external_link_spam\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Sehr viele externe Links erkannt\",\"evidence\":\"\",\"action\":\"Prüfen, ob die Seite als Linkfarm, Affiliate-Brücke oder Spam-Seite dient.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/seo-spam-und-cloaking-bereinigen\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "2ecd589bb80dde356048e65599663be810963bcb1e320b8d242482326a9a0bf6",
            "slack_payload": {
                "text": "[HOCH] berlinhyp.de: Sehr viele externe Links erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Sehr viele externe Links erkannt*\nPrüfen, ob die Seite als Linkfarm, Affiliate-Brücke oder Spam-Seite dient."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] berlinhyp.de: Sehr viele externe Links erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Sehr viele externe Links erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Prüfen, ob die Seite als Linkfarm, Affiliate-Brücke oder Spam-Seite dient."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Sehr viele externe Links erkannt",
                    "description": "Prüfen, ob die Seite als Linkfarm, Affiliate-Brücke oder Spam-Seite dient.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/seo-spam-und-cloaking-bereinigen\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-a73ec5edad1423fbbc847c4f",
            "ticket_id": "remediation_module_browser_evidence",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "30 Tage",
            "summary": "[berlinhyp.de] Browser-Nachweis",
            "description": "Unnötige Drittanbieter reduzieren und die verbleibenden Kontakte in Datenschutz und Consent abbilden.",
            "idempotency_key": "sp-fix-a73ec5edad1423fbbc847c4f",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-a73ec5edad1423fbbc847c4f",
                "X-SaferPage-Body-SHA256": "248402460004474aa58a232ab9a9c238260c345a3f12f12e7310c8417d410589",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_module_browser_evidence",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "30 Tage",
                "title": "Browser-Nachweis",
                "evidence": "22 Request(s), 2 Drittanbieter-Domain(s), davon 0 datenschutzrelevant, 1 Browser-Cookie(s), Transfer-Prüfbedarf: 2, Referrer-/URL-Leaks: 1, Fingerprinting-/Replay-Hinweise: 1.",
                "action": "Unnötige Drittanbieter reduzieren und die verbleibenden Kontakte in Datenschutz und Consent abbilden.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_module_browser_evidence\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"Browser-Nachweis\",\"evidence\":\"22 Request(s), 2 Drittanbieter-Domain(s), davon 0 datenschutzrelevant, 1 Browser-Cookie(s), Transfer-Prüfbedarf: 2, Referrer-/URL-Leaks: 1, Fingerprinting-/Replay-Hinweise: 1.\",\"action\":\"Unnötige Drittanbieter reduzieren und die verbleibenden Kontakte in Datenschutz und Consent abbilden.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "248402460004474aa58a232ab9a9c238260c345a3f12f12e7310c8417d410589",
            "slack_payload": {
                "text": "[MITTEL] berlinhyp.de: Browser-Nachweis",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Browser-Nachweis*\nUnnötige Drittanbieter reduzieren und die verbleibenden Kontakte in Datenschutz und Consent abbilden."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 30 Tage · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] berlinhyp.de: Browser-Nachweis",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Browser-Nachweis"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Unnötige Drittanbieter reduzieren und die verbleibenden Kontakte in Datenschutz und Consent abbilden."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Browser-Nachweis",
                    "description": "Unnötige Drittanbieter reduzieren und die verbleibenden Kontakte in Datenschutz und Consent abbilden.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-fcfcc6280011e65762d22278",
            "ticket_id": "remediation_module_privacy_consent",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "30 Tage",
            "summary": "[berlinhyp.de] Datenschutz, Cookies & Consent",
            "description": "Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären.",
            "idempotency_key": "sp-fix-fcfcc6280011e65762d22278",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-fcfcc6280011e65762d22278",
                "X-SaferPage-Body-SHA256": "0a6280c874a5afeaa78dc2224e9d620be8100f46025d5a62461b841e0c7fda5e",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_module_privacy_consent",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "30 Tage",
                "title": "Datenschutz, Cookies & Consent",
                "evidence": "0 Tracking-Script(s), 1 Cookie(s) vor Einwilligung, 0 Tracking-Cookie(s), Ablehnen-Option: ja, Consent-Audit: 94.",
                "action": "Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/tracking-und-consent-reparieren",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_module_privacy_consent\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"Datenschutz, Cookies & Consent\",\"evidence\":\"0 Tracking-Script(s), 1 Cookie(s) vor Einwilligung, 0 Tracking-Cookie(s), Ablehnen-Option: ja, Consent-Audit: 94.\",\"action\":\"Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "0a6280c874a5afeaa78dc2224e9d620be8100f46025d5a62461b841e0c7fda5e",
            "slack_payload": {
                "text": "[MITTEL] berlinhyp.de: Datenschutz, Cookies & Consent",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Datenschutz, Cookies & Consent*\nTracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 30 Tage · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] berlinhyp.de: Datenschutz, Cookies & Consent",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Datenschutz, Cookies & Consent"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Datenschutz, Cookies & Consent",
                    "description": "Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/tracking-und-consent-reparieren\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-e9128b32195a1a412559759c",
            "ticket_id": "remediation_module_seo_integrity",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "30 Tage",
            "summary": "[berlinhyp.de] SEO-Integrität & Cloaking",
            "description": "Versteckte Inhalte, Canonical-Missbrauch und Googlebot-Abweichungen entfernen.",
            "idempotency_key": "sp-fix-e9128b32195a1a412559759c",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-e9128b32195a1a412559759c",
                "X-SaferPage-Body-SHA256": "3a4d38a661c32ce71d84cb30e3ee476c86407ff8ccaa4949ff7cca86aeb0f7c0",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_module_seo_integrity",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "30 Tage",
                "title": "SEO-Integrität & Cloaking",
                "evidence": "2 SEO-Spam-Hinweis(e), 0 Cloaking-Hinweis(e).",
                "action": "Versteckte Inhalte, Canonical-Missbrauch und Googlebot-Abweichungen entfernen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/seo-spam-und-cloaking-bereinigen",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_module_seo_integrity\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"SEO-Integrität & Cloaking\",\"evidence\":\"2 SEO-Spam-Hinweis(e), 0 Cloaking-Hinweis(e).\",\"action\":\"Versteckte Inhalte, Canonical-Missbrauch und Googlebot-Abweichungen entfernen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/seo-spam-und-cloaking-bereinigen\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "3a4d38a661c32ce71d84cb30e3ee476c86407ff8ccaa4949ff7cca86aeb0f7c0",
            "slack_payload": {
                "text": "[MITTEL] berlinhyp.de: SEO-Integrität & Cloaking",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*SEO-Integrität & Cloaking*\nVersteckte Inhalte, Canonical-Missbrauch und Googlebot-Abweichungen entfernen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 30 Tage · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] berlinhyp.de: SEO-Integrität & Cloaking",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "SEO-Integrität & Cloaking"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Versteckte Inhalte, Canonical-Missbrauch und Googlebot-Abweichungen entfernen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] SEO-Integrität & Cloaking",
                    "description": "Versteckte Inhalte, Canonical-Missbrauch und Googlebot-Abweichungen entfernen.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/seo-spam-und-cloaking-bereinigen\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-1b9df47368fb825b6bd7a1d2",
            "ticket_id": "remediation_security_header_gap",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "IT/Security",
            "sla": "30 Tage",
            "summary": "[berlinhyp.de] Security-Header, Referrer-Policy und Browser-Schutz setzen",
            "description": "Befund mit Hintergrundseite einordnen und danach erneut scannen.",
            "idempotency_key": "sp-fix-1b9df47368fb825b6bd7a1d2",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-1b9df47368fb825b6bd7a1d2",
                "X-SaferPage-Body-SHA256": "51cb7540b4d6e26b7ccc3e8f8f65fb2b9eae692d8f16ac86206ddb4ae8058a39",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_security_header_gap",
                "priority": "mittel",
                "severity": "warning",
                "owner": "IT/Security",
                "sla": "30 Tage",
                "title": "Security-Header, Referrer-Policy und Browser-Schutz setzen",
                "evidence": "9 von 9 wichtigen Security-Headern vorhanden, 9 korrekt bewertet. CSP wirksam mit 11 Direktive(n), 1 Warnung(en), 2 Hinweis(e).",
                "action": "Befund mit Hintergrundseite einordnen und danach erneut scannen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_security_header_gap\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"IT/Security\",\"sla\":\"30 Tage\",\"title\":\"Security-Header, Referrer-Policy und Browser-Schutz setzen\",\"evidence\":\"9 von 9 wichtigen Security-Headern vorhanden, 9 korrekt bewertet. CSP wirksam mit 11 Direktive(n), 1 Warnung(en), 2 Hinweis(e).\",\"action\":\"Befund mit Hintergrundseite einordnen und danach erneut scannen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "51cb7540b4d6e26b7ccc3e8f8f65fb2b9eae692d8f16ac86206ddb4ae8058a39",
            "slack_payload": {
                "text": "[MITTEL] berlinhyp.de: Security-Header, Referrer-Policy und Browser-Schutz setzen",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Security-Header, Referrer-Policy und Browser-Schutz setzen*\nBefund mit Hintergrundseite einordnen und danach erneut scannen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: IT/Security · Zielzeit: 30 Tage · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] berlinhyp.de: Security-Header, Referrer-Policy und Browser-Schutz setzen",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Security-Header, Referrer-Policy und Browser-Schutz setzen"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Befund mit Hintergrundseite einordnen und danach erneut scannen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "IT/Security"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Security-Header, Referrer-Policy und Browser-Schutz setzen",
                    "description": "Befund mit Hintergrundseite einordnen und danach erneut scannen.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-85a301682a6774485930366a",
            "ticket_id": "remediation_module_security_tls",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "30 Tage",
            "summary": "[berlinhyp.de] Sicherheit, TLS & Header",
            "description": "HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren.",
            "idempotency_key": "sp-fix-85a301682a6774485930366a",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-85a301682a6774485930366a",
                "X-SaferPage-Body-SHA256": "2985fd153386e58bdbb0e4cb07860b01054f39c1baec25551778129ccee2adcf",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_module_security_tls",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "30 Tage",
                "title": "Sicherheit, TLS & Header",
                "evidence": "1 Infrastruktur-Hinweis(e), Security-Header: 9/9 vorhanden, 0 fehlen, externe Skript-Hosts: 1.",
                "action": "HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_module_security_tls\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"Sicherheit, TLS & Header\",\"evidence\":\"1 Infrastruktur-Hinweis(e), Security-Header: 9/9 vorhanden, 0 fehlen, externe Skript-Hosts: 1.\",\"action\":\"HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "2985fd153386e58bdbb0e4cb07860b01054f39c1baec25551778129ccee2adcf",
            "slack_payload": {
                "text": "[MITTEL] berlinhyp.de: Sicherheit, TLS & Header",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Sicherheit, TLS & Header*\nHTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 30 Tage · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] berlinhyp.de: Sicherheit, TLS & Header",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Sicherheit, TLS & Header"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Sicherheit, TLS & Header",
                    "description": "HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-c6e4cf9fbc768c3315502547",
            "ticket_id": "mapping_cookie_ts019a3e4a",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[berlinhyp.de] TS019a3e4a",
            "description": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.",
            "idempotency_key": "sp-fix-c6e4cf9fbc768c3315502547",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-c6e4cf9fbc768c3315502547",
                "X-SaferPage-Body-SHA256": "4feae2a0e1f49d20113ae039799f5ce57b6dab2fbd393496875c092574e07da4",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "mapping_cookie_ts019a3e4a",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "TS019a3e4a",
                "evidence": "berlinhyp.de",
                "action": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen",
                    "evidence": "https://saferpage.de/cookies/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"mapping_cookie_ts019a3e4a\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"TS019a3e4a\",\"evidence\":\"berlinhyp.de\",\"action\":\"Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\",\"evidence\":\"https://saferpage.de/cookies/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "4feae2a0e1f49d20113ae039799f5ce57b6dab2fbd393496875c092574e07da4",
            "slack_payload": {
                "text": "[MITTEL] berlinhyp.de: TS019a3e4a",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*TS019a3e4a*\nZweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Marketing/IT/Datenschutz · Zielzeit: 30 Tage · https://saferpage.de/cookies/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] berlinhyp.de: TS019a3e4a",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "TS019a3e4a"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] TS019a3e4a",
                    "description": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.\n\nNachweis: https://saferpage.de/cookies/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-f8bd4bc966e4b0705123e351",
            "ticket_id": "mapping_vendor_apis.google.com",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[berlinhyp.de] apis.google.com",
            "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
            "idempotency_key": "sp-fix-f8bd4bc966e4b0705123e351",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-f8bd4bc966e4b0705123e351",
                "X-SaferPage-Body-SHA256": "501c0cf8233ef7c3fc0509cc3d76b62d06a08dc1140099375d57393aa0e2c2ef",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "mapping_vendor_apis.google.com",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "apis.google.com",
                "evidence": "Sonstige",
                "action": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren",
                    "evidence": "https://saferpage.de/anbieter/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"mapping_vendor_apis.google.com\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"apis.google.com\",\"evidence\":\"Sonstige\",\"action\":\"Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\",\"evidence\":\"https://saferpage.de/anbieter/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "501c0cf8233ef7c3fc0509cc3d76b62d06a08dc1140099375d57393aa0e2c2ef",
            "slack_payload": {
                "text": "[MITTEL] berlinhyp.de: apis.google.com",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*apis.google.com*\nZweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Marketing/IT/Datenschutz · Zielzeit: 30 Tage · https://saferpage.de/anbieter/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] berlinhyp.de: apis.google.com",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "apis.google.com"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] apis.google.com",
                    "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\n\nNachweis: https://saferpage.de/anbieter/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-978f4b9ddcfbe4d9e61aac29",
            "ticket_id": "mapping_request_apis.google.com",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[berlinhyp.de] apis.google.com",
            "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
            "idempotency_key": "sp-fix-978f4b9ddcfbe4d9e61aac29",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-978f4b9ddcfbe4d9e61aac29",
                "X-SaferPage-Body-SHA256": "054f7e18daebb59e4c9dafec4dbbe6e2a96e0170ec60e42f5b8db63c8c2c2fb4",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "mapping_request_apis.google.com",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "apis.google.com",
                "evidence": "other",
                "action": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen",
                    "evidence": "https://saferpage.de/anbieter/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"mapping_request_apis.google.com\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"apis.google.com\",\"evidence\":\"other\",\"action\":\"Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\",\"evidence\":\"https://saferpage.de/anbieter/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "054f7e18daebb59e4c9dafec4dbbe6e2a96e0170ec60e42f5b8db63c8c2c2fb4",
            "slack_payload": {
                "text": "[MITTEL] berlinhyp.de: apis.google.com",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*apis.google.com*\nRequest einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Marketing/IT/Datenschutz · Zielzeit: 30 Tage · https://saferpage.de/anbieter/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] berlinhyp.de: apis.google.com",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "apis.google.com"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] apis.google.com",
                    "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\n\nNachweis: https://saferpage.de/anbieter/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-4ca79eb7f3a8d94faaf43de8",
            "ticket_id": "mapping_vendor_content.googleapis.com",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[berlinhyp.de] content.googleapis.com",
            "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
            "idempotency_key": "sp-fix-4ca79eb7f3a8d94faaf43de8",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-4ca79eb7f3a8d94faaf43de8",
                "X-SaferPage-Body-SHA256": "3b55a4a1d5fb110bb8f37bf5648893b9041f8be07889c9994e855520e828c985",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "mapping_vendor_content.googleapis.com",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "content.googleapis.com",
                "evidence": "Sonstige",
                "action": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren",
                    "evidence": "https://saferpage.de/anbieter/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"mapping_vendor_content.googleapis.com\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"content.googleapis.com\",\"evidence\":\"Sonstige\",\"action\":\"Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\",\"evidence\":\"https://saferpage.de/anbieter/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "3b55a4a1d5fb110bb8f37bf5648893b9041f8be07889c9994e855520e828c985",
            "slack_payload": {
                "text": "[MITTEL] berlinhyp.de: content.googleapis.com",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*content.googleapis.com*\nZweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Marketing/IT/Datenschutz · Zielzeit: 30 Tage · https://saferpage.de/anbieter/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] berlinhyp.de: content.googleapis.com",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "content.googleapis.com"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] content.googleapis.com",
                    "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\n\nNachweis: https://saferpage.de/anbieter/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-752ef447c3380d913defd67e",
            "ticket_id": "mapping_request_content.googleapis.com",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[berlinhyp.de] content.googleapis.com",
            "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
            "idempotency_key": "sp-fix-752ef447c3380d913defd67e",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-752ef447c3380d913defd67e",
                "X-SaferPage-Body-SHA256": "72228bfd4b84ef8f96ca5e8ce2951d42cc6564ae4e3a08260a8684b4b169c80f",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "mapping_request_content.googleapis.com",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "content.googleapis.com",
                "evidence": "other",
                "action": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen",
                    "evidence": "https://saferpage.de/anbieter/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"mapping_request_content.googleapis.com\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"content.googleapis.com\",\"evidence\":\"other\",\"action\":\"Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\",\"evidence\":\"https://saferpage.de/anbieter/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "72228bfd4b84ef8f96ca5e8ce2951d42cc6564ae4e3a08260a8684b4b169c80f",
            "slack_payload": {
                "text": "[MITTEL] berlinhyp.de: content.googleapis.com",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*content.googleapis.com*\nRequest einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Marketing/IT/Datenschutz · Zielzeit: 30 Tage · https://saferpage.de/anbieter/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] berlinhyp.de: content.googleapis.com",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "content.googleapis.com"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] content.googleapis.com",
                    "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\n\nNachweis: https://saferpage.de/anbieter/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-d4ba77781b9c8e1fd958051c",
            "ticket_id": "remediation_csp_missing_base_uri",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[berlinhyp.de] CSP ohne base-uri",
            "description": "base-uri 'self' oder 'none' setzen, damit Base-Tag-Manipulation begrenzt wird.",
            "idempotency_key": "sp-fix-d4ba77781b9c8e1fd958051c",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-d4ba77781b9c8e1fd958051c",
                "X-SaferPage-Body-SHA256": "12844d0ee726c3d9706091f1a5cfbad9a243137a429f4d408018edea6ed1656a",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_csp_missing_base_uri",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "CSP ohne base-uri",
                "evidence": "",
                "action": "base-uri 'self' oder 'none' setzen, damit Base-Tag-Manipulation begrenzt wird.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_csp_missing_base_uri\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"CSP ohne base-uri\",\"evidence\":\"\",\"action\":\"base-uri 'self' oder 'none' setzen, damit Base-Tag-Manipulation begrenzt wird.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "12844d0ee726c3d9706091f1a5cfbad9a243137a429f4d408018edea6ed1656a",
            "slack_payload": {
                "text": "[NIEDRIG] berlinhyp.de: CSP ohne base-uri",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*CSP ohne base-uri*\nbase-uri 'self' oder 'none' setzen, damit Base-Tag-Manipulation begrenzt wird."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] berlinhyp.de: CSP ohne base-uri",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "CSP ohne base-uri"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "base-uri 'self' oder 'none' setzen, damit Base-Tag-Manipulation begrenzt wird."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] CSP ohne base-uri",
                    "description": "base-uri 'self' oder 'none' setzen, damit Base-Tag-Manipulation begrenzt wird.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-71d08d1b2f916605b9fd2a0f",
            "ticket_id": "remediation_csp_missing_object_src",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[berlinhyp.de] CSP ohne object-src",
            "description": "object-src 'none' setzen, wenn keine Plugins oder Objekte benötigt werden.",
            "idempotency_key": "sp-fix-71d08d1b2f916605b9fd2a0f",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-71d08d1b2f916605b9fd2a0f",
                "X-SaferPage-Body-SHA256": "b8cb79197ad159107ea3ba47599e442ef7f66c1e42d0a30dd0ba2e67659995d4",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_csp_missing_object_src",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "CSP ohne object-src",
                "evidence": "",
                "action": "object-src 'none' setzen, wenn keine Plugins oder Objekte benötigt werden.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_csp_missing_object_src\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"CSP ohne object-src\",\"evidence\":\"\",\"action\":\"object-src 'none' setzen, wenn keine Plugins oder Objekte benötigt werden.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "b8cb79197ad159107ea3ba47599e442ef7f66c1e42d0a30dd0ba2e67659995d4",
            "slack_payload": {
                "text": "[NIEDRIG] berlinhyp.de: CSP ohne object-src",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*CSP ohne object-src*\nobject-src 'none' setzen, wenn keine Plugins oder Objekte benötigt werden."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] berlinhyp.de: CSP ohne object-src",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "CSP ohne object-src"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "object-src 'none' setzen, wenn keine Plugins oder Objekte benötigt werden."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] CSP ohne object-src",
                    "description": "object-src 'none' setzen, wenn keine Plugins oder Objekte benötigt werden.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-1e2c5e3ca2bc8db31dde0ac6",
            "ticket_id": "remediation_cookie_missing_samesite",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[berlinhyp.de] Cookie ohne SameSite-Attribut",
            "description": "SameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich.",
            "idempotency_key": "sp-fix-1e2c5e3ca2bc8db31dde0ac6",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-1e2c5e3ca2bc8db31dde0ac6",
                "X-SaferPage-Body-SHA256": "921b0eb2f9acf8bb1f3d190feebccf37a86c95c4629a9af71f83f43861e10f5b",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_cookie_missing_samesite",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Cookie ohne SameSite-Attribut",
                "evidence": "",
                "action": "SameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/cookies-sicher-konfigurieren",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_cookie_missing_samesite\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Cookie ohne SameSite-Attribut\",\"evidence\":\"\",\"action\":\"SameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/cookies-sicher-konfigurieren\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "921b0eb2f9acf8bb1f3d190feebccf37a86c95c4629a9af71f83f43861e10f5b",
            "slack_payload": {
                "text": "[NIEDRIG] berlinhyp.de: Cookie ohne SameSite-Attribut",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Cookie ohne SameSite-Attribut*\nSameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] berlinhyp.de: Cookie ohne SameSite-Attribut",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Cookie ohne SameSite-Attribut"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "SameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Cookie ohne SameSite-Attribut",
                    "description": "SameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/cookies-sicher-konfigurieren\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-1764bb862ab964db0c314c57",
            "ticket_id": "remediation_external_script_without_sri",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[berlinhyp.de] Externe Skripte ohne Subresource Integrity",
            "description": "Für statische CDN-Skripte `integrity` und passend `crossorigin` setzen oder Skripte kontrolliert lokal ausliefern.",
            "idempotency_key": "sp-fix-1764bb862ab964db0c314c57",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-1764bb862ab964db0c314c57",
                "X-SaferPage-Body-SHA256": "b6198f373284420f2960ce36954edb130e9160edc8ca059137495171466b27f4",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_external_script_without_sri",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Externe Skripte ohne Subresource Integrity",
                "evidence": "",
                "action": "Für statische CDN-Skripte `integrity` und passend `crossorigin` setzen oder Skripte kontrolliert lokal ausliefern.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/externe-skripte-und-sri-absichern",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_external_script_without_sri\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Externe Skripte ohne Subresource Integrity\",\"evidence\":\"\",\"action\":\"Für statische CDN-Skripte `integrity` und passend `crossorigin` setzen oder Skripte kontrolliert lokal ausliefern.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/externe-skripte-und-sri-absichern\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "b6198f373284420f2960ce36954edb130e9160edc8ca059137495171466b27f4",
            "slack_payload": {
                "text": "[NIEDRIG] berlinhyp.de: Externe Skripte ohne Subresource Integrity",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Externe Skripte ohne Subresource Integrity*\nFür statische CDN-Skripte `integrity` und passend `crossorigin` setzen oder Skripte kontrolliert lokal ausliefern."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] berlinhyp.de: Externe Skripte ohne Subresource Integrity",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Externe Skripte ohne Subresource Integrity"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Für statische CDN-Skripte `integrity` und passend `crossorigin` setzen oder Skripte kontrolliert lokal ausliefern."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Externe Skripte ohne Subresource Integrity",
                    "description": "Für statische CDN-Skripte `integrity` und passend `crossorigin` setzen oder Skripte kontrolliert lokal ausliefern.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/externe-skripte-und-sri-absichern\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-58700452aaa43991e8d5ed56",
            "ticket_id": "remediation_compression_missing",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[berlinhyp.de] Komprimierung nicht erkannt",
            "description": "Brotli oder gzip für HTML/CSS/JS aktivieren.",
            "idempotency_key": "sp-fix-58700452aaa43991e8d5ed56",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-58700452aaa43991e8d5ed56",
                "X-SaferPage-Body-SHA256": "1cdcbd2aa2dc2c114259318f7424ecc6ac0523a30cd22cf6610114d3c4047e18",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_compression_missing",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Komprimierung nicht erkannt",
                "evidence": "",
                "action": "Brotli oder gzip für HTML/CSS/JS aktivieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/performance-und-mobile-usability-verbessern",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_compression_missing\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Komprimierung nicht erkannt\",\"evidence\":\"\",\"action\":\"Brotli oder gzip für HTML/CSS/JS aktivieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/performance-und-mobile-usability-verbessern\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "1cdcbd2aa2dc2c114259318f7424ecc6ac0523a30cd22cf6610114d3c4047e18",
            "slack_payload": {
                "text": "[NIEDRIG] berlinhyp.de: Komprimierung nicht erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Komprimierung nicht erkannt*\nBrotli oder gzip für HTML/CSS/JS aktivieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] berlinhyp.de: Komprimierung nicht erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Komprimierung nicht erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Brotli oder gzip für HTML/CSS/JS aktivieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Komprimierung nicht erkannt",
                    "description": "Brotli oder gzip für HTML/CSS/JS aktivieren.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/performance-und-mobile-usability-verbessern\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-e1106af2c8e148abb2581a07",
            "ticket_id": "remediation_privacy_policy_update_date_missing",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[berlinhyp.de] Stand der Datenschutzerklärung nicht klar erkennbar",
            "description": "Ergänzen Sie ein gut sichtbares Stand- oder Aktualisierungsdatum und prüfen Sie die Erklärung nach technischen Änderungen.",
            "idempotency_key": "sp-fix-e1106af2c8e148abb2581a07",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-e1106af2c8e148abb2581a07",
                "X-SaferPage-Body-SHA256": "d958a926c6db144650c2aace5fdd5b447a319ea3f02379dd2b7af979093f7392",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_privacy_policy_update_date_missing",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Stand der Datenschutzerklärung nicht klar erkennbar",
                "evidence": "",
                "action": "Ergänzen Sie ein gut sichtbares Stand- oder Aktualisierungsdatum und prüfen Sie die Erklärung nach technischen Änderungen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/datenschutzerklaerung-verbessern",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_privacy_policy_update_date_missing\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Stand der Datenschutzerklärung nicht klar erkennbar\",\"evidence\":\"\",\"action\":\"Ergänzen Sie ein gut sichtbares Stand- oder Aktualisierungsdatum und prüfen Sie die Erklärung nach technischen Änderungen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/datenschutzerklaerung-verbessern\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "d958a926c6db144650c2aace5fdd5b447a319ea3f02379dd2b7af979093f7392",
            "slack_payload": {
                "text": "[NIEDRIG] berlinhyp.de: Stand der Datenschutzerklärung nicht klar erkennbar",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Stand der Datenschutzerklärung nicht klar erkennbar*\nErgänzen Sie ein gut sichtbares Stand- oder Aktualisierungsdatum und prüfen Sie die Erklärung nach technischen Änderungen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] berlinhyp.de: Stand der Datenschutzerklärung nicht klar erkennbar",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Stand der Datenschutzerklärung nicht klar erkennbar"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Ergänzen Sie ein gut sichtbares Stand- oder Aktualisierungsdatum und prüfen Sie die Erklärung nach technischen Änderungen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Stand der Datenschutzerklärung nicht klar erkennbar",
                    "description": "Ergänzen Sie ein gut sichtbares Stand- oder Aktualisierungsdatum und prüfen Sie die Erklärung nach technischen Änderungen.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/datenschutzerklaerung-verbessern\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-2a25991e8bf784ed0b1b3179",
            "ticket_id": "remediation_browser_keystroke_listener_signals",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[berlinhyp.de] Viele Tastatur-/Eingabe-Listener im Browser erkannt",
            "description": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.",
            "idempotency_key": "sp-fix-2a25991e8bf784ed0b1b3179",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-2a25991e8bf784ed0b1b3179",
                "X-SaferPage-Body-SHA256": "0d5f1bf0717b7078436da2bb1a6b63c5af7ef22870833af27342408b00def47b",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "berlinhyp.de",
                "scan_id": "4aae630e-5bc8-4310-ab20-1577feb35246",
                "ticket_id": "remediation_browser_keystroke_listener_signals",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Viele Tastatur-/Eingabe-Listener im Browser erkannt",
                "evidence": "",
                "action": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/session-replay-und-fingerprinting-pruefen",
                    "evidence": "https://saferpage.de/befunde/berlinhyp.de",
                    "rescan": "https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "report": "https://saferpage.de/berlinhyp.de",
                    "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"berlinhyp.de\",\"scan_id\":\"4aae630e-5bc8-4310-ab20-1577feb35246\",\"ticket_id\":\"remediation_browser_keystroke_listener_signals\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Viele Tastatur-/Eingabe-Listener im Browser erkannt\",\"evidence\":\"\",\"action\":\"Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/session-replay-und-fingerprinting-pruefen\",\"evidence\":\"https://saferpage.de/befunde/berlinhyp.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/berlinhyp.de\",\"report\":\"https://saferpage.de/berlinhyp.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/berlinhyp.de\"}}",
            "canonical_body_sha256": "0d5f1bf0717b7078436da2bb1a6b63c5af7ef22870833af27342408b00def47b",
            "slack_payload": {
                "text": "[NIEDRIG] berlinhyp.de: Viele Tastatur-/Eingabe-Listener im Browser erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Viele Tastatur-/Eingabe-Listener im Browser erkannt*\nPrüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/berlinhyp.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] berlinhyp.de: Viele Tastatur-/Eingabe-Listener im Browser erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Viele Tastatur-/Eingabe-Listener im Browser erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "berlinhyp.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[berlinhyp.de] Viele Tastatur-/Eingabe-Listener im Browser erkannt",
                    "description": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.\n\nNachweis: https://saferpage.de/befunde/berlinhyp.de\nHintergrundseite: https://saferpage.de/guides/session-replay-und-fingerprinting-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/berlinhyp.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        }
    ],
    "links": {
        "fix_guides": "https://saferpage.de/fix-guides/berlinhyp.de",
        "tickets_json": "https://saferpage.de/fix-guides/berlinhyp.de/tickets-json",
        "json": "https://saferpage.de/fix-guides/berlinhyp.de/tickets-delivery-json",
        "csv": "https://saferpage.de/fix-guides/berlinhyp.de/tickets-delivery-csv"
    },
    "disclaimer": "Payload-Vorlagen ohne aktive Zustellung und ohne echte Secrets. Betreiber muessen Zielsysteme, Authentifizierung, HMAC-Secret, Projekte, Empfaenger und Freigaben selbst konfigurieren."
}
