{
    "schema": "websitevirusscanner.evidence.v1",
    "domain": "throughtheroof.org",
    "archived": false,
    "archive_reason": null,
    "next_scan_due_at": "2026-11-24T06:27:41.000000Z",
    "scan": {
        "id": 508066,
        "last_scanned_at": "2026-10-25T06:27:41.000000Z",
        "score": {
            "id": 475215,
            "domain_scan_id": 508066,
            "score_rule_set_id": 5,
            "safety_score": 69,
            "evidence_confidence": 75,
            "uncapped_score": 69,
            "cap_code": null,
            "created_at": "2026-10-25 06:27:41",
            "updated_at": "2026-10-25 06:27:41"
        },
        "http": {
            "id": 475343,
            "domain_scan_id": 508066,
            "final_url": "https://throughtheroof.org/",
            "status_code": 200,
            "content_type": "text/html",
            "response_bytes": 12060,
            "duration_ms": 1000,
            "redirect_chain": "[]",
            "observed_at": "2026-10-25 06:27:38",
            "created_at": "2026-10-25 06:27:40",
            "updated_at": "2026-10-25 06:27:40"
        },
        "tls": {
            "id": 457952,
            "domain_scan_id": 508066,
            "valid": 1,
            "protocol": "TLSv1.3",
            "issuer": "countryName=US, organizationName=Let's Encrypt, commonName=YR1",
            "valid_from": "2026-10-02 11:47:06",
            "valid_until": "2026-12-31 11:47:05",
            "san_names": "[\"roof.abdwebsites.uk\", \"throughtheroof.org\", \"www.throughtheroof.org\"]",
            "observed_at": "2026-10-25 06:27:35",
            "created_at": "2026-10-25 06:27:40",
            "updated_at": "2026-10-25 06:27:40"
        },
        "dns": {
            "id": 503983,
            "domain_scan_id": 508066,
            "resolver": null,
            "dnssec": null,
            "observed_at": "2026-10-25 06:27:35",
            "created_at": "2026-10-25 06:27:40",
            "updated_at": "2026-10-25 06:27:40"
        },
        "infrastructure_summary": {
            "ip_address": "81.31.75.149",
            "asn": null,
            "organization": null,
            "country_code": null,
            "cdn": null,
            "waf": null,
            "http_status": 200,
            "final_url": "https://throughtheroof.org/",
            "dnssec_observed": null,
            "dns_record_count": 8,
            "nameserver_count": 2,
            "mail_exchanger_count": 1,
            "tls_valid": true,
            "tls_valid_until": "2026-12-31 11:47:05",
            "security_header_count": 0,
            "technology_count": 0,
            "screenshot_available": true
        },
        "page_stats": {
            "response_bytes": 12060,
            "duration_ms": 1000,
            "cookies_observed": null,
            "script_resources": 0,
            "external_script_hosts": 0,
            "frame_resources": 0,
            "resource_checks": 2
        },
        "security_headers": [],
        "signals": [
            {
                "id": 33357436,
                "domain_scan_id": 508066,
                "code": "local_security.analyzed",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "local-security-v2",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357461,
                "domain_scan_id": 508066,
                "code": "local_resources.item0.host",
                "value": "throughtheroof.org",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357460,
                "domain_scan_id": 508066,
                "code": "local_resources.item0.kind",
                "value": "page",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357462,
                "domain_scan_id": 508066,
                "code": "local_resources.item0.sha256",
                "value": "ec95898bdf2ae8549ac6ed9852f3637d464ba1450e82f75916cd379db821f04d",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357464,
                "domain_scan_id": 508066,
                "code": "local_resources.item0.signature",
                "value": null,
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357463,
                "domain_scan_id": 508066,
                "code": "local_resources.item0.status",
                "value": "no_match",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357466,
                "domain_scan_id": 508066,
                "code": "local_resources.item1.host",
                "value": "throughtheroof.org",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357465,
                "domain_scan_id": 508066,
                "code": "local_resources.item1.kind",
                "value": "page",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357467,
                "domain_scan_id": 508066,
                "code": "local_resources.item1.sha256",
                "value": "7f51617584b1fd3b2ed44481ae8141651f21684a468add5cea3b289f04008f3b",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357469,
                "domain_scan_id": 508066,
                "code": "local_resources.item1.signature",
                "value": null,
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357468,
                "domain_scan_id": 508066,
                "code": "local_resources.item1.status",
                "value": "no_match",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357458,
                "domain_scan_id": 508066,
                "code": "local_resources.partial",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357455,
                "domain_scan_id": 508066,
                "code": "local_resources.status",
                "value": "partial",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357456,
                "domain_scan_id": 508066,
                "code": "local_resources.discovered_scripts",
                "value": "0",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357437,
                "domain_scan_id": 508066,
                "code": "local_security.bytes_analyzed",
                "value": "12060",
                "confidence": "1.0000",
                "source_rule": "local-security-v2",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357439,
                "domain_scan_id": 508066,
                "code": "local_security.inline_scripts",
                "value": "2",
                "confidence": "1.0000",
                "source_rule": "local-security-v2",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357438,
                "domain_scan_id": 508066,
                "code": "local_security.truncated",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "local-security-v2",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357429,
                "domain_scan_id": 508066,
                "code": "mail_security.dmarc.percentage",
                "value": "100",
                "confidence": "1.0000",
                "source_rule": "mail-security-v1",
                "evidence_keys": "[\"dns.mail_txt\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357428,
                "domain_scan_id": 508066,
                "code": "mail_security.dmarc.policy",
                "value": "quarantine",
                "confidence": "1.0000",
                "source_rule": "mail-security-v1",
                "evidence_keys": "[\"dns.mail_txt\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357427,
                "domain_scan_id": 508066,
                "code": "mail_security.dmarc.status",
                "value": "policy_observed",
                "confidence": "1.0000",
                "source_rule": "mail-security-v1",
                "evidence_keys": "[\"dns.mail_txt\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357425,
                "domain_scan_id": 508066,
                "code": "mail_security.spf.all",
                "value": "-all",
                "confidence": "1.0000",
                "source_rule": "mail-security-v1",
                "evidence_keys": "[\"dns.mail_txt\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357426,
                "domain_scan_id": 508066,
                "code": "mail_security.spf.direct_dns_terms",
                "value": "4",
                "confidence": "1.0000",
                "source_rule": "mail-security-v1",
                "evidence_keys": "[\"dns.mail_txt\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357424,
                "domain_scan_id": 508066,
                "code": "mail_security.spf.status",
                "value": "policy_observed",
                "confidence": "1.0000",
                "source_rule": "mail-security-v1",
                "evidence_keys": "[\"dns.mail_txt\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357423,
                "domain_scan_id": 508066,
                "code": "page.language",
                "value": "en",
                "confidence": "1.0000",
                "source_rule": "html-lang-signals-v1",
                "evidence_keys": "[\"content.language\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357472,
                "domain_scan_id": 508066,
                "code": "security_txt.status",
                "value": "missing",
                "confidence": "1.0000",
                "source_rule": "security-txt-v1",
                "evidence_keys": "[\"security_txt\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357444,
                "domain_scan_id": 508066,
                "code": "local_headers.cors_credentials_with_wildcard",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357434,
                "domain_scan_id": 508066,
                "code": "dns_consistency.cname_present",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "dns-consistency-v1",
                "evidence_keys": "[\"dns.records\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357435,
                "domain_scan_id": 508066,
                "code": "dns_consistency.dnssec_state",
                "value": "unavailable",
                "confidence": "1.0000",
                "source_rule": "dns-consistency-v1",
                "evidence_keys": "[\"dns.records\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357433,
                "domain_scan_id": 508066,
                "code": "dns_consistency.mail_route_count",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "dns-consistency-v1",
                "evidence_keys": "[\"dns.records\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357432,
                "domain_scan_id": 508066,
                "code": "dns_consistency.nameserver_count",
                "value": "2",
                "confidence": "1.0000",
                "source_rule": "dns-consistency-v1",
                "evidence_keys": "[\"dns.records\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357430,
                "domain_scan_id": 508066,
                "code": "dns_consistency.record_count",
                "value": "8",
                "confidence": "1.0000",
                "source_rule": "dns-consistency-v1",
                "evidence_keys": "[\"dns.records\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357471,
                "domain_scan_id": 508066,
                "code": "javascript_advisories.checked",
                "value": "0",
                "confidence": "1.0000",
                "source_rule": "retirejs-local-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357470,
                "domain_scan_id": 508066,
                "code": "javascript_advisories.status",
                "value": "not_sampled",
                "confidence": "1.0000",
                "source_rule": "retirejs-local-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357447,
                "domain_scan_id": 508066,
                "code": "local_antivirus.bytes_scanned",
                "value": "12060",
                "confidence": "1.0000",
                "source_rule": "clamav-local-v1",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357450,
                "domain_scan_id": 508066,
                "code": "local_antivirus.database_date",
                "value": "2026-10-23T06:24:08+00:00",
                "confidence": "1.0000",
                "source_rule": "clamav-local-v1",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357449,
                "domain_scan_id": 508066,
                "code": "local_antivirus.database_version",
                "value": "28162",
                "confidence": "1.0000",
                "source_rule": "clamav-local-v1",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357448,
                "domain_scan_id": 508066,
                "code": "local_antivirus.engine_version",
                "value": "1.5.4",
                "confidence": "1.0000",
                "source_rule": "clamav-local-v1",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357446,
                "domain_scan_id": 508066,
                "code": "local_antivirus.status",
                "value": "no_match",
                "confidence": "1.0000",
                "source_rule": "clamav-local-v1",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357431,
                "domain_scan_id": 508066,
                "code": "dns_consistency.address_count",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "dns-consistency-v1",
                "evidence_keys": "[\"dns.records\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357442,
                "domain_scan_id": 508066,
                "code": "local_headers.cors_present",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357443,
                "domain_scan_id": 508066,
                "code": "local_headers.cors_wildcard_origin",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357440,
                "domain_scan_id": 508066,
                "code": "local_headers.csp_present",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357441,
                "domain_scan_id": 508066,
                "code": "local_headers.hsts_present",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357445,
                "domain_scan_id": 508066,
                "code": "local_headers.permissions_policy_present",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357453,
                "domain_scan_id": 508066,
                "code": "local_reputation.entry_count",
                "value": "386082",
                "confidence": "1.0000",
                "source_rule": "phishing-db-v1",
                "evidence_keys": "[\"domain.ascii\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357452,
                "domain_scan_id": 508066,
                "code": "local_reputation.fetched_at",
                "value": "2026-10-25T06:00:09+00:00",
                "confidence": "1.0000",
                "source_rule": "phishing-db-v1",
                "evidence_keys": "[\"domain.ascii\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357454,
                "domain_scan_id": 508066,
                "code": "local_reputation.sha256",
                "value": "70c6c2e24e6b3484e7ace27b079723e55937bc1f4cbd98bea38a472ec8e37326",
                "confidence": "1.0000",
                "source_rule": "phishing-db-v1",
                "evidence_keys": "[\"domain.ascii\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357451,
                "domain_scan_id": 508066,
                "code": "local_reputation.status",
                "value": "not_listed",
                "confidence": "1.0000",
                "source_rule": "phishing-db-v1",
                "evidence_keys": "[\"domain.ascii\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357459,
                "domain_scan_id": 508066,
                "code": "local_resources.bytes_scanned",
                "value": "24138",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            },
            {
                "id": 33357457,
                "domain_scan_id": 508066,
                "code": "local_resources.checked",
                "value": "2",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-25 06:27:40",
                "updated_at": "2026-10-25 06:27:40"
            }
        ],
        "technologies": [],
        "availability_history": [
            {
                "id": 508066,
                "status": "completed",
                "finished_at": "2026-10-25 06:27:41",
                "error_code": null,
                "status_code": 200,
                "final_url": "https://throughtheroof.org/",
                "duration_ms": 1000
            }
        ],
        "comparison": {
            "previous": null,
            "current": {
                "id": 508066,
                "finished_at": "2026-10-25 06:27:41",
                "status_code": 200,
                "final_url": "https://throughtheroof.org/",
                "safety_score": 69
            },
            "score_delta": null,
            "added_technologies": [],
            "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."
    ]
}