{
    "schema": "https://saferpage.de/schemas/portfolio-scan-digest.v1",
    "generated_at": "2026-08-19T08:33:30+00:00",
    "subject": "SaferPage Portfolio-Digest: 1 Domains, 0 woechentliche Scans, 1 Dispatches",
    "headline": "Keine kritischen Domains im aktuellen Portfolio-Digest erkannt.",
    "summary": "Wiederkehrender Portfolio-Digest für geplante SaferPage-Scans mit Management-Kennzahlen, Zielgruppen, Top-Aktionen, Dispatch-Hinweisen und Markdown-Mailtext.",
    "metrics": {
        "domain_count": 1,
        "weekly_scan_count": 0,
        "next_7_days_count": 1,
        "critical_count": 0,
        "new_count": 1,
        "regressed_count": 0,
        "dispatch_count": 1,
        "urgent_dispatch_count": 0
    },
    "audiences": [
        {
            "id": "management",
            "label": "Management",
            "focus": "Risikolast, kritische Domains, Fortschritt und nächste Entscheidungspunkte."
        },
        {
            "id": "datenschutz",
            "label": "Datenschutz/Legal",
            "focus": "Audit-Trail, Nachweise, Betreiberfreigaben und priorisierte Guides."
        },
        {
            "id": "webbetrieb",
            "label": "Webbetrieb/Marketing Ops",
            "focus": "Scanplan, Dispatches, technische Umsetzung und Re-Scan-Nachweise."
        }
    ],
    "top_actions": [
        {
            "owner": "Programm-Verantwortung/Datenschutz",
            "priority": "hoch",
            "action": "Kritische woechentliche Scans prüfen, Verantwortlichkeit bestätigen und Dispatch-Paket in Nachweispositionen übernehmen.",
            "url": "https://saferpage.de/portfolio/dispatch-json"
        },
        {
            "owner": "Website-Betrieb",
            "priority": "mittel",
            "action": "Nächste Batch-Termine aus dem Scanplan gegen Deployment- und Consent-Änderungen abgleichen.",
            "url": "https://saferpage.de/portfolio/schedule-json"
        },
        {
            "owner": "Audit/Compliance",
            "priority": "mittel",
            "action": "Audit-Trail exportieren und Scan-IDs mit internen Freigaben oder Release-Nachweisen verbinden.",
            "url": "https://saferpage.de/portfolio/audit-json"
        }
    ],
    "top_scheduled_scans": [
        {
            "host": "saferpage.de",
            "last_scan_id": "16611e39-87e3-40ae-9513-436eec181008",
            "last_checked_at": "2026-07-15 03:13:10.549919+02",
            "next_scan_at": "2026-08-14T01:13:10+00:00",
            "due_now": true,
            "frequency": "monthly",
            "interval_days": 30,
            "priority": "mittel",
            "owner": "Website-Betrieb",
            "score": 88,
            "status": "new",
            "reason": "neuer Check, älter als 14 Tage, jetzt fällig",
            "report_url": "https://saferpage.de/saferpage.de",
            "audit_url": "https://saferpage.de/portfolio/audit-json",
            "scanops_url": "https://saferpage.de/scanbetrieb/saferpage.de"
        }
    ],
    "top_dispatches": [
        {
            "id": "sp-dispatch-3b6ac7427bb5916db7bfa2ac",
            "host": "saferpage.de",
            "priority": "mittel",
            "owner": "Website-Betrieb",
            "channel_group": "scheduled_privacyops",
            "next_scan_at": "2026-08-14T01:13:10+00:00",
            "due_now": true,
            "reason": "neuer Check, älter als 14 Tage, jetzt fällig",
            "retry_policy": {
                "max_attempts": 3,
                "backoff_seconds": [
                    60,
                    300,
                    900
                ],
                "dead_letter_queue": "privacyops.scan_dispatch.failed"
            },
            "webhook_payload": {
                "event": "saferpage.portfolio.scan_dispatch",
                "idempotency_key": "sp-dispatch-3b6ac7427bb5916db7bfa2ac",
                "host": "saferpage.de",
                "priority": "mittel",
                "owner": "Website-Betrieb",
                "next_scan_at": "2026-08-14T01:13:10+00:00",
                "frequency": "monthly",
                "score": 88,
                "status": "new",
                "reason": "neuer Check, älter als 14 Tage, jetzt fällig",
                "links": {
                    "report": "https://saferpage.de/saferpage.de",
                    "scanops": "https://saferpage.de/scanbetrieb/saferpage.de",
                    "schedule": "https://saferpage.de/portfolio/schedule-json",
                    "audit": "https://saferpage.de/portfolio/audit-json"
                }
            },
            "slack_payload": {
                "text": "SaferPage Scan einplanen: saferpage.de",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*SaferPage Scan einplanen: saferpage.de*\nneuer Check, älter als 14 Tage, jetzt fällig · nächster Scan 2026-08-14T01:13:10+00:00 · Priorität mittel"
                        }
                    },
                    {
                        "type": "actions",
                        "elements": [
                            {
                                "type": "button",
                                "text": {
                                    "type": "plain_text",
                                    "text": "Report"
                                },
                                "url": "https://saferpage.de/saferpage.de"
                            },
                            {
                                "type": "button",
                                "text": {
                                    "type": "plain_text",
                                    "text": "ScanOps"
                                },
                                "url": "https://saferpage.de/scanbetrieb/saferpage.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "title": "SaferPage Scan einplanen: saferpage.de",
                "text": "neuer Check, älter als 14 Tage, jetzt fällig · nächster Scan 2026-08-14T01:13:10+00:00 · Priorität mittel",
                "potentialAction": [
                    {
                        "@type": "OpenUri",
                        "name": "Report öffnen",
                        "targets": [
                            {
                                "os": "default",
                                "uri": "https://saferpage.de/saferpage.de"
                            }
                        ]
                    },
                    {
                        "@type": "OpenUri",
                        "name": "ScanOps öffnen",
                        "targets": [
                            {
                                "os": "default",
                                "uri": "https://saferpage.de/scanbetrieb/saferpage.de"
                            }
                        ]
                    }
                ]
            },
            "jira_issue": {
                "project_key": "PRIV",
                "issue_type": "Task",
                "summary": "SaferPage Scan einplanen: saferpage.de",
                "description": "neuer Check, älter als 14 Tage, jetzt fällig · nächster Scan 2026-08-14T01:13:10+00:00 · Priorität mittel\n\nReport: https://saferpage.de/saferpage.de\nScanOps: https://saferpage.de/scanbetrieb/saferpage.de",
                "labels": [
                    "saferpage",
                    "scheduled-scan",
                    "mittel"
                ],
                "external_id": "sp-dispatch-3b6ac7427bb5916db7bfa2ac"
            }
        }
    ],
    "email": {
        "subject": "SaferPage Portfolio-Digest: 1 Domains, 0 woechentliche Scans, 1 Dispatches",
        "preheader": "Keine kritischen Domains im aktuellen Portfolio-Digest erkannt.",
        "markdown_body": "# SaferPage Portfolio-Digest: 1 Domains, 0 woechentliche Scans, 1 Dispatches\n\nKeine kritischen Domains im aktuellen Portfolio-Digest erkannt.\n\n## Kennzahlen\n- Domains im Scanplan: 1\n- Woechentliche Scans: 0\n- Nächste 7 Tage: 1\n- Kritische Domains: 0\n- Dispatches: 1 (0 dringend)\n\n## Nächste Aktionen\n- **Programm-Verantwortung/Datenschutz** (hoch): Kritische woechentliche Scans prüfen, Verantwortlichkeit bestätigen und Dispatch-Paket in Nachweispositionen übernehmen. https://saferpage.de/portfolio/dispatch-json\n- **Website-Betrieb** (mittel): Nächste Batch-Termine aus dem Scanplan gegen Deployment- und Consent-Änderungen abgleichen. https://saferpage.de/portfolio/schedule-json\n- **Audit/Compliance** (mittel): Audit-Trail exportieren und Scan-IDs mit internen Freigaben oder Release-Nachweisen verbinden. https://saferpage.de/portfolio/audit-json\n\n## Nächste geplante Scans\n- saferpage.de: 2026-08-14T01:13:10+00:00, mittel, neuer Check, älter als 14 Tage, jetzt fällig\n\n## Dispatch-Vorschau\n- saferpage.de: scheduled_privacyops, 2026-08-14T01:13:10+00:00, sp-dispatch-3b6ac7427bb5916db7bfa2ac\n",
        "recommended_recipients": [
            "privacyops@example.invalid",
            "webbetrieb@example.invalid",
            "datenschutz@example.invalid"
        ]
    },
    "links": {
        "portfolio": "https://saferpage.de/portfolio",
        "json": "https://saferpage.de/portfolio/digest-json",
        "markdown": "https://saferpage.de/portfolio/digest-md",
        "schedule_json": "https://saferpage.de/portfolio/schedule-json",
        "dispatch_json": "https://saferpage.de/portfolio/dispatch-json",
        "audit_json": "https://saferpage.de/portfolio/audit-json",
        "html": "https://saferpage.de/portfolio/digest"
    },
    "sources": [
        {
            "title": "Cookiebot Scan Reports",
            "url": "https://support.cookiebot.com/hc/en-us/articles/5007079527580-Understanding-the-scan-report",
            "note": "Orientierung für wiederkehrende Scanreports und Report-Empfänger."
        },
        {
            "title": "Osano Compliance Check",
            "url": "https://www.osano.com/features/compliance-check",
            "note": "Orientierung für kontinuierliche Compliance-Nachweise und klare Audit Trails."
        },
        {
            "title": "OneTrust Cookie Consent",
            "url": "https://www.onetrust.com/products/cookie-consent/",
            "note": "Orientierung für regelmaessige Scans und aktualisierte Cookie-/Policy-Listen."
        }
    ],
    "disclaimer": "Digest basiert auf öffentlichen SaferPage-Signalen. Interne Empfänger, Nachweis-IDs, Freigaben und Rechtsbewertungen müssen Betreiber selbst ergänzen.",
    "cache": {
        "status": "miss",
        "ttl_seconds": 180
    }
}
