{
    "schema": "websitevirusscanner.evidence.v1",
    "domain": "nationalrail.co.uk",
    "archived": false,
    "archive_reason": null,
    "next_scan_due_at": "2026-10-26T15:47:30.000000Z",
    "scan": {
        "id": 1328,
        "last_scanned_at": "2026-09-26T15:47:30.000000Z",
        "score": {
            "id": 1006,
            "domain_scan_id": 1328,
            "score_rule_set_id": 5,
            "safety_score": 79,
            "evidence_confidence": 70,
            "uncapped_score": 79,
            "cap_code": null,
            "created_at": "2026-09-26 15:47:30",
            "updated_at": "2026-09-28 14:28:06"
        },
        "http": {
            "id": 1004,
            "domain_scan_id": 1328,
            "final_url": "https://www.nationalrail.co.uk:443/",
            "status_code": 200,
            "content_type": "text/html; charset=utf-8",
            "response_bytes": 256649,
            "duration_ms": 0,
            "redirect_chain": "[\"https://www.nationalrail.co.uk:443/\"]",
            "observed_at": "2026-09-26 15:47:24",
            "created_at": "2026-09-26 15:47:29",
            "updated_at": "2026-09-26 15:47:29"
        },
        "tls": {
            "id": 1197,
            "domain_scan_id": 1328,
            "valid": 1,
            "protocol": "TLSv1.3",
            "issuer": "countryName=US, organizationName=Amazon, commonName=Amazon RSA 2048 M04",
            "valid_from": "2026-09-25 21:00:00",
            "valid_until": "2027-04-11 20:59:59",
            "san_names": "[\"nationalrail.co.uk\", \"www.nationalrail.co.uk\"]",
            "observed_at": "2026-09-26 15:47:24",
            "created_at": "2026-09-26 15:47:29",
            "updated_at": "2026-09-26 15:47:29"
        },
        "dns": {
            "id": 1326,
            "domain_scan_id": 1328,
            "resolver": null,
            "dnssec": null,
            "observed_at": "2026-09-26 15:47:23",
            "created_at": "2026-09-26 15:47:28",
            "updated_at": "2026-09-26 15:47:28"
        },
        "infrastructure_summary": {
            "ip_address": "75.2.32.6",
            "asn": null,
            "organization": null,
            "country_code": null,
            "cdn": "Cloudflare",
            "waf": null,
            "http_status": 200,
            "final_url": "https://www.nationalrail.co.uk:443/",
            "dnssec_observed": null,
            "dns_record_count": 31,
            "nameserver_count": 6,
            "mail_exchanger_count": 1,
            "tls_valid": true,
            "tls_valid_until": "2027-04-11 20:59:59",
            "security_header_count": 7,
            "technology_count": 3,
            "screenshot_available": true
        },
        "page_stats": {
            "response_bytes": 256649,
            "duration_ms": 0,
            "cookies_observed": null,
            "script_resources": null,
            "external_script_hosts": null,
            "frame_resources": null,
            "resource_checks": null
        },
        "security_headers": [
            {
                "id": 2741,
                "domain_scan_id": 1328,
                "name": "content-security-policy",
                "value": "default-src https: 'unsafe-inline' 'unsafe-eval'; img-src 'self' https: data: blob:; worker-src 'self' blob:;media-src 'self' https: data: blob:;connect-src 'self' https: data:;",
                "assessment": "present",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            },
            {
                "id": 2742,
                "domain_scan_id": 1328,
                "name": "cross-origin-opener-policy",
                "value": "same-site; report-to=\"default\";",
                "assessment": "present",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            },
            {
                "id": 2743,
                "domain_scan_id": 1328,
                "name": "permissions-policy",
                "value": "camera=(), geolocation=(self), microphone=()",
                "assessment": "present",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            },
            {
                "id": 2744,
                "domain_scan_id": 1328,
                "name": "referrer-policy",
                "value": "strict-origin-when-cross-origin",
                "assessment": "present",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            },
            {
                "id": 2745,
                "domain_scan_id": 1328,
                "name": "strict-transport-security",
                "value": "max-age=31536000",
                "assessment": "present",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            },
            {
                "id": 2746,
                "domain_scan_id": 1328,
                "name": "x-content-type-options",
                "value": "nosniff",
                "assessment": "present",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            },
            {
                "id": 2747,
                "domain_scan_id": 1328,
                "name": "x-frame-options",
                "value": "SAMEORIGIN",
                "assessment": "present",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            }
        ],
        "signals": [
            {
                "id": 2890,
                "domain_scan_id": 1328,
                "code": "local_security.analyzed",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "local-security-v1",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            },
            {
                "id": 2891,
                "domain_scan_id": 1328,
                "code": "local_security.bytes_analyzed",
                "value": "256649",
                "confidence": "1.0000",
                "source_rule": "local-security-v1",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            },
            {
                "id": 2892,
                "domain_scan_id": 1328,
                "code": "local_security.truncated",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "local-security-v1",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            },
            {
                "id": 2886,
                "domain_scan_id": 1328,
                "code": "page.about",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "informational-page-signals-v1",
                "evidence_keys": "[\"content.informational_pages.about\"]",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            },
            {
                "id": 2889,
                "domain_scan_id": 1328,
                "code": "page.language",
                "value": "en-GB",
                "confidence": "1.0000",
                "source_rule": "html-lang-signals-v1",
                "evidence_keys": "[\"content.language\"]",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            },
            {
                "id": 2887,
                "domain_scan_id": 1328,
                "code": "page.page",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "informational-page-signals-v1",
                "evidence_keys": "[\"content.informational_pages.page\"]",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            },
            {
                "id": 2888,
                "domain_scan_id": 1328,
                "code": "page.support",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "informational-page-signals-v1",
                "evidence_keys": "[\"content.informational_pages.support\"]",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            }
        ],
        "technologies": [
            {
                "id": 866,
                "domain_scan_id": 1328,
                "code": "cloudflare",
                "name": "Cloudflare",
                "version": null,
                "confidence": "0.9800",
                "source_rule": "cloudflare-v1",
                "evidence_keys": "[\"page.headers\"]",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            },
            {
                "id": 867,
                "domain_scan_id": 1328,
                "code": "google-tag-manager",
                "name": "Google Tag Manager",
                "version": null,
                "confidence": "0.9600",
                "source_rule": "google-tag-manager-v1",
                "evidence_keys": "[\"page.html\"]",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            },
            {
                "id": 868,
                "domain_scan_id": 1328,
                "code": "nextjs",
                "name": "Next.js",
                "version": null,
                "confidence": "0.9600",
                "source_rule": "nextjs-v1",
                "evidence_keys": "[\"page.html\"]",
                "created_at": "2026-09-26 15:47:29",
                "updated_at": "2026-09-26 15:47:29"
            }
        ],
        "availability_history": [
            {
                "id": 1328,
                "status": "completed",
                "finished_at": "2026-09-26 15:47:30",
                "error_code": null,
                "status_code": 200,
                "final_url": "https://www.nationalrail.co.uk:443/",
                "duration_ms": 0
            },
            {
                "id": 911,
                "status": "completed",
                "finished_at": "2026-09-25 06:30:27",
                "error_code": null,
                "status_code": null,
                "final_url": null,
                "duration_ms": null
            },
            {
                "id": 416,
                "status": "completed",
                "finished_at": "2026-09-24 09:37:38",
                "error_code": null,
                "status_code": null,
                "final_url": null,
                "duration_ms": null
            },
            {
                "id": 216,
                "status": "completed",
                "finished_at": "2026-09-24 09:10:48",
                "error_code": null,
                "status_code": null,
                "final_url": null,
                "duration_ms": null
            }
        ],
        "comparison": {
            "previous": {
                "id": 911,
                "finished_at": "2026-09-25 06:30:27",
                "status_code": null,
                "final_url": null,
                "safety_score": null
            },
            "current": {
                "id": 1328,
                "finished_at": "2026-09-26 15:47:30",
                "status_code": 200,
                "final_url": "https://www.nationalrail.co.uk:443/",
                "safety_score": 79
            },
            "score_delta": null,
            "added_technologies": [
                "cloudflare",
                "google-tag-manager",
                "nextjs"
            ],
            "removed_technologies": []
        }
    },
    "limitations": [
        "This is a point-in-time technical evidence export.",
        "Unavailable checks are not clean results.",
        "The export is not a malware-removal guarantee or uptime SLA."
    ]
}