{
    "schema": "websitevirusscanner.evidence.v1",
    "domain": "ecotel-rouen.fr",
    "archived": false,
    "archive_reason": null,
    "next_scan_due_at": "2026-11-10T07:29:32.000000Z",
    "scan": {
        "id": 301591,
        "last_scanned_at": "2026-10-11T07:29:32.000000Z",
        "score": {
            "id": 283558,
            "domain_scan_id": 301591,
            "score_rule_set_id": 5,
            "safety_score": 60,
            "evidence_confidence": 70,
            "uncapped_score": 60,
            "cap_code": null,
            "created_at": "2026-10-11 07:29:32",
            "updated_at": "2026-10-11 07:29:32"
        },
        "http": {
            "id": 283651,
            "domain_scan_id": 301591,
            "final_url": "https://www.ecotel-rouen.fr/",
            "status_code": 200,
            "content_type": "text/html; charset=utf-8",
            "response_bytes": 159089,
            "duration_ms": 2000,
            "redirect_chain": "[\"http://www.ecotel-rouen.fr/\", \"https://www.ecotel-rouen.fr/\"]",
            "observed_at": "2026-10-11 07:29:22",
            "created_at": "2026-10-11 07:29:31",
            "updated_at": "2026-10-11 07:29:31"
        },
        "tls": null,
        "dns": {
            "id": 297142,
            "domain_scan_id": 301591,
            "resolver": null,
            "dnssec": null,
            "observed_at": "2026-10-11 07:29:19",
            "created_at": "2026-10-11 07:29:31",
            "updated_at": "2026-10-11 07:29:31"
        },
        "infrastructure_summary": {
            "ip_address": "80.93.81.40",
            "asn": null,
            "organization": null,
            "country_code": null,
            "cdn": null,
            "waf": null,
            "http_status": 200,
            "final_url": "https://www.ecotel-rouen.fr/",
            "dnssec_observed": null,
            "dns_record_count": 7,
            "nameserver_count": 3,
            "mail_exchanger_count": 2,
            "tls_valid": null,
            "tls_valid_until": null,
            "security_header_count": 4,
            "technology_count": 3,
            "screenshot_available": true
        },
        "page_stats": {
            "response_bytes": 159089,
            "duration_ms": 2000,
            "cookies_observed": 1,
            "script_resources": 10,
            "external_script_hosts": 1,
            "frame_resources": 0,
            "resource_checks": 6
        },
        "security_headers": [
            {
                "id": 464786,
                "domain_scan_id": 301591,
                "name": "content-security-policy",
                "value": "default-src 'self';script-src 'self' 'unsafe-inline' 'unsafe-eval' *.youtube.com *.youtube-nocookie.com youtu.be *.youtu.be *.vimeo.com *.dailymotion.com *.googleapis.com ajax.aspnetcdn.com *.google.com *.googleadservices.com *.google-analytics.com *.googletagmanager.com *.google.fr *.gstatic.com *.doubleclick.net *.avis-verifies.com caast.tv *.caast.tv *.scripts.tools plugins.flockler.com *.flockler.com *.cdn.flockler.com *.kx1.co kx1.co *.facebook.net *.facebook.com *.matterport.com;style-src 'self' 'unsafe-inline' data: blob: *.youtube.com *.youtube-nocookie.com youtu.be *.youtu.be *.vimeo.com *.dailymotion.com *.googleapis.com ajax.aspnetcdn.com *.google.com *.googleadservices.com *.google-analytics.com *.googletagmanager.com *.google.fr *.gstatic.com *.doubleclick.net *.avis-verifies.com *.scripts.tools plugins.flockler.com *.flockler.com *.cdn.flockler.com;img-src 'self' *.facebook.net *.facebook.com http://lorempixel.com data: blob: *.youtube.com *.youtube-nocookie.com youtu.be *.youtu.be *.vimeo.com *.googleapis.com ajax.aspnetcdn.com *.google.com *.googleadservices.com *.google-analytics.com *.google.fr *.gstatic.com *.doubleclick.net *.avis-verifies.com *.scripts.tools *.ecotel.fr *.ggpht.com *.ecf-info.net caast.tv *.caast.tv i.vimeocdn.com *.vimeocdn.com i.ytimg.com plugins.flockler.com *.flockler.com *.cdn.flockler.com *.fbcdn.net *.cdninstagram.com *.raxcdn.com *.twimg.com *.staticflickr.com *.matterport.com *.googletagmanager.com;media-src 'self' cdn.wannaspeak.com data: blob: *.mux.com mux.com;frame-src 'self' *.youtube-nocookie.com data: blob: *.youtube.com youtu.be *.youtu.be *.vimeo.com *.dailymotion.com *.googleapis.com ajax.aspnetcdn.com *.google.com *.googleadservices.com *.google-analytics.com *.googletagmanager.com *.google.fr *.gstatic.com *.doubleclick.net *.avis-verifies.com *.scripts.tools newsletter.ecotel.fr caast.tv *.caast.tv vimeo.com vimeocdn.com *.vimeocdn.com *.kx1.co kx1.co *.ecotel.fr ecotel.fr *.ecotel-aix.fr *.ecotel-anglet.fr *.ecotel-aubenas.fr *.ecotel-aurillac.fr *.ecotel-blois.fr *.ecotel-bordeaux.fr *.ecotel-caen.fr *.ecotel-clermont.fr *.ecotel-coutances.fr *.ecotel-dijon.fr *.ecotel-frejus.fr *.ecotel-grenoble.fr *.ecotel-la-rochelle.fr *.ecotel-le-puy.fr *.ecotel-lille.fr *.ecotel-limoges.fr *.ecotel-lorient.fr *.ecotel-lyon.fr *.ecotel-meaux.fr *.ecotel-montelimar.fr *.ecotel-montpellier.fr *.ecotel-mulhouse.fr *.ecotel-nantes.fr *.ecotel-nice.fr *.ecotel-orleans.fr *.ecotel-pau.fr *.ecotel-perpignan.fr *.ecotel-quimper.fr *.ecotel-rennes.fr *.ecotel-rodez.fr *.ecotel-rouen.fr *.ecotel-saint-brieuc.fr *.ecotel-saint-etienne.fr *.ecotel-sens.fr *.ecotel-strasbourg.fr *.ecotel-toulouse.fr *.ecotel-tours.fr *.ecotel-troyes.fr *.ecotel-valence.fr *.ecotel-vannes.fr *.ecotel-vichy.fr *.ecotelannecy.fr www.ecotel-aix.fr www.ecotel-anglet.fr www.ecotel-aubenas.fr www.ecotel-aurillac.fr www.ecotel-blois.fr www.ecotel-bordeaux.fr www.ecotel-caen.fr www.ecotel-clermont.fr www.ecotel-coutances.fr www.ecotel-dijon.fr www.ecotel-frejus.fr www.ecotel-grenoble.fr www.ecotel-la-rochelle.fr www.ecotel-le-puy.fr www.ecotel-lille.fr www.ecotel-limoges.fr www.ecotel-lorient.fr www.ecotel-lyon.fr www.ecotel-meaux.fr www.ecotel-montelimar.fr www.ecotel-montpellier.fr www.ecotel-mulhouse.fr www.ecotel-nantes.fr www.ecotel-nice.fr www.ecotel-orleans.fr www.ecotel-pau.fr www.ecotel-perpignan.fr www.ecotel-quimper.fr www.ecotel-rennes.fr www.ecotel-rodez.fr www.ecotel-rouen.fr www.ecotel-saint-brieuc.fr www.ecotel-saint-etienne.fr www.ecotel-sens.fr www.ecotel-strasbourg.fr www.ecotel-toulouse.fr www.ecotel-tours.fr www.ecotel-troyes.fr www.ecotel-valence.fr www.ecotel-vannes.fr www.ecotel-vichy.fr www.ecotelannecy.fr *.matterport.com *.facebook.com;font-src 'self' data: *.youtube.com youtu.be *.youtu.be *.vimeo.com *.googleapis.com ajax.aspnetcdn.com *.google.com *.googleadservices.com *.google-analytics.com *.google.fr *.gstatic.com *.doubleclick.net *.avis-verifies.com *.scripts.tools caast.tv *.caast.tv *.mux.com mux.com;connect-src 'self' *.youtube.com youtu.be *.youtu.be *.vimeo.com *.google",
                "assessment": "present",
                "created_at": "2026-10-11 07:29:31",
                "updated_at": "2026-10-11 07:29:31"
            },
            {
                "id": 464787,
                "domain_scan_id": 301591,
                "name": "referrer-policy",
                "value": "no-referrer-when-downgrade",
                "assessment": "present",
                "created_at": "2026-10-11 07:29:31",
                "updated_at": "2026-10-11 07:29:31"
            },
            {
                "id": 464788,
                "domain_scan_id": 301591,
                "name": "strict-transport-security",
                "value": "max-age=31536000; includeSubDomains; preload",
                "assessment": "present",
                "created_at": "2026-10-11 07:29:31",
                "updated_at": "2026-10-11 07:29:31"
            },
            {
                "id": 464789,
                "domain_scan_id": 301591,
                "name": "x-content-type-options",
                "value": "nosniff",
                "assessment": "present",
                "created_at": "2026-10-11 07:29:31",
                "updated_at": "2026-10-11 07:29:31"
            }
        ],
        "signals": [
            {
                "id": 18456365,
                "domain_scan_id": 301591,
                "code": "local_resources.item2.kind",
                "value": "script",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456377,
                "domain_scan_id": 301591,
                "code": "local_resources.item4.sha256",
                "value": "313dfc106c71466915b07801f5fafef17a6391fcba77f83af7fa6a1dfd768c33",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456375,
                "domain_scan_id": 301591,
                "code": "local_resources.item4.kind",
                "value": "page",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456376,
                "domain_scan_id": 301591,
                "code": "local_resources.item4.host",
                "value": "www.ecotel-rouen.fr",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456373,
                "domain_scan_id": 301591,
                "code": "local_resources.item3.status",
                "value": "no_match",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456374,
                "domain_scan_id": 301591,
                "code": "local_resources.item3.signature",
                "value": null,
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456372,
                "domain_scan_id": 301591,
                "code": "local_resources.item3.sha256",
                "value": "3206d6423089c5e21b8ca089f39fe85e6da77921ac08d9ca5a03e800b8be0cfb",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456370,
                "domain_scan_id": 301591,
                "code": "local_resources.item3.kind",
                "value": "script",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456371,
                "domain_scan_id": 301591,
                "code": "local_resources.item3.host",
                "value": "www.ecotel-rouen.fr",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456368,
                "domain_scan_id": 301591,
                "code": "local_resources.item2.status",
                "value": "no_match",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456369,
                "domain_scan_id": 301591,
                "code": "local_resources.item2.signature",
                "value": null,
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456367,
                "domain_scan_id": 301591,
                "code": "local_resources.item2.sha256",
                "value": "5a65b0ca177f1c0433c0ead611692521c23e6668846a2861fedc09ae11416ffc",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456379,
                "domain_scan_id": 301591,
                "code": "local_resources.item4.signature",
                "value": null,
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456366,
                "domain_scan_id": 301591,
                "code": "local_resources.item2.host",
                "value": "www.ecotel-rouen.fr",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456363,
                "domain_scan_id": 301591,
                "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-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456364,
                "domain_scan_id": 301591,
                "code": "local_resources.item1.signature",
                "value": null,
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456362,
                "domain_scan_id": 301591,
                "code": "local_resources.item1.sha256",
                "value": "3c7b3ed32991df7fecd94925de903446f7c1257bfeb042cb0b798749e242c559",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456360,
                "domain_scan_id": 301591,
                "code": "local_resources.item1.kind",
                "value": "script",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456361,
                "domain_scan_id": 301591,
                "code": "local_resources.item1.host",
                "value": "www.ecotel-rouen.fr",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456358,
                "domain_scan_id": 301591,
                "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-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456359,
                "domain_scan_id": 301591,
                "code": "local_resources.item0.signature",
                "value": null,
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456357,
                "domain_scan_id": 301591,
                "code": "local_resources.item0.sha256",
                "value": "412b8ff9c5ab32b9019fcd84bcd4a54c0e265a14528474f4ee45b27a20abeaeb",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456355,
                "domain_scan_id": 301591,
                "code": "local_resources.item0.kind",
                "value": "script",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456356,
                "domain_scan_id": 301591,
                "code": "local_resources.item0.host",
                "value": "www.ecotel-rouen.fr",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456322,
                "domain_scan_id": 301591,
                "code": "local_security.external_script_hosts",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "local-security-v2",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456396,
                "domain_scan_id": 301591,
                "code": "security_txt.status",
                "value": "missing",
                "confidence": "1.0000",
                "source_rule": "security-txt-v1",
                "evidence_keys": "[\"security_txt\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456305,
                "domain_scan_id": 301591,
                "code": "page.page",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "informational-page-signals-v1",
                "evidence_keys": "[\"content.informational_pages.page\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456306,
                "domain_scan_id": 301591,
                "code": "page.language",
                "value": "fr",
                "confidence": "1.0000",
                "source_rule": "html-lang-signals-v1",
                "evidence_keys": "[\"content.language\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456304,
                "domain_scan_id": 301591,
                "code": "page.contact",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "informational-page-signals-v1",
                "evidence_keys": "[\"content.informational_pages.contact\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456307,
                "domain_scan_id": 301591,
                "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-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456309,
                "domain_scan_id": 301591,
                "code": "mail_security.spf.direct_dns_terms",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "mail-security-v1",
                "evidence_keys": "[\"dns.mail_txt\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456308,
                "domain_scan_id": 301591,
                "code": "mail_security.spf.all",
                "value": "?all",
                "confidence": "1.0000",
                "source_rule": "mail-security-v1",
                "evidence_keys": "[\"dns.mail_txt\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456310,
                "domain_scan_id": 301591,
                "code": "mail_security.dmarc.status",
                "value": "not_observed",
                "confidence": "1.0000",
                "source_rule": "mail-security-v1",
                "evidence_keys": "[\"dns.mail_txt\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456319,
                "domain_scan_id": 301591,
                "code": "local_security.truncated",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "local-security-v2",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456320,
                "domain_scan_id": 301591,
                "code": "local_security.script_resources",
                "value": "10",
                "confidence": "1.0000",
                "source_rule": "local-security-v2",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456321,
                "domain_scan_id": 301591,
                "code": "local_security.inline_scripts",
                "value": "4",
                "confidence": "1.0000",
                "source_rule": "local-security-v2",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456351,
                "domain_scan_id": 301591,
                "code": "local_resources.discovered_scripts",
                "value": "9",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456318,
                "domain_scan_id": 301591,
                "code": "local_security.bytes_analyzed",
                "value": "159089",
                "confidence": "1.0000",
                "source_rule": "local-security-v2",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456317,
                "domain_scan_id": 301591,
                "code": "local_security.analyzed",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "local-security-v2",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456350,
                "domain_scan_id": 301591,
                "code": "local_resources.status",
                "value": "partial",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456353,
                "domain_scan_id": 301591,
                "code": "local_resources.partial",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456383,
                "domain_scan_id": 301591,
                "code": "local_resources.item5.status",
                "value": "no_match",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456384,
                "domain_scan_id": 301591,
                "code": "local_resources.item5.signature",
                "value": null,
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456382,
                "domain_scan_id": 301591,
                "code": "local_resources.item5.sha256",
                "value": "4a4bdef23184274604c49242b8bdefe31791f75b531be3938b4f92871aa178ae",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456380,
                "domain_scan_id": 301591,
                "code": "local_resources.item5.kind",
                "value": "page",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456381,
                "domain_scan_id": 301591,
                "code": "local_resources.item5.host",
                "value": "www.ecotel-rouen.fr",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456378,
                "domain_scan_id": 301591,
                "code": "local_resources.item4.status",
                "value": "no_match",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456393,
                "domain_scan_id": 301591,
                "code": "javascript_advisories.item0.advisory_count",
                "value": "2",
                "confidence": "1.0000",
                "source_rule": "retirejs-local-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456325,
                "domain_scan_id": 301591,
                "code": "local_cookies.cookies_missing_httponly",
                "value": "0",
                "confidence": "1.0000",
                "source_rule": "local-cookies-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456341,
                "domain_scan_id": 301591,
                "code": "local_antivirus.status",
                "value": "no_match",
                "confidence": "1.0000",
                "source_rule": "clamav-local-v1",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456343,
                "domain_scan_id": 301591,
                "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-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456344,
                "domain_scan_id": 301591,
                "code": "local_antivirus.database_version",
                "value": "28149",
                "confidence": "1.0000",
                "source_rule": "clamav-local-v1",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456345,
                "domain_scan_id": 301591,
                "code": "local_antivirus.database_date",
                "value": "2026-10-10T06:24:04+00:00",
                "confidence": "1.0000",
                "source_rule": "clamav-local-v1",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456342,
                "domain_scan_id": 301591,
                "code": "local_antivirus.bytes_scanned",
                "value": "159089",
                "confidence": "1.0000",
                "source_rule": "clamav-local-v1",
                "evidence_keys": "[\"http.homepage_html\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456385,
                "domain_scan_id": 301591,
                "code": "javascript_advisories.status",
                "value": "advisories_found",
                "confidence": "1.0000",
                "source_rule": "retirejs-local-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456387,
                "domain_scan_id": 301591,
                "code": "javascript_advisories.limited",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "retirejs-local-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456392,
                "domain_scan_id": 301591,
                "code": "javascript_advisories.item0.version",
                "value": "3.4.1",
                "confidence": "1.0000",
                "source_rule": "retirejs-local-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456395,
                "domain_scan_id": 301591,
                "code": "javascript_advisories.item0.sha256",
                "value": "412b8ff9c5ab32b9019fcd84bcd4a54c0e265a14528474f4ee45b27a20abeaeb",
                "confidence": "1.0000",
                "source_rule": "retirejs-local-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456391,
                "domain_scan_id": 301591,
                "code": "javascript_advisories.item0.component",
                "value": "jquery",
                "confidence": "1.0000",
                "source_rule": "retirejs-local-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456326,
                "domain_scan_id": 301591,
                "code": "local_cookies.cookies_missing_samesite",
                "value": "0",
                "confidence": "1.0000",
                "source_rule": "local-cookies-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456394,
                "domain_scan_id": 301591,
                "code": "javascript_advisories.item0.advisories",
                "value": "CVE-2020-11023, CVE-2020-11022",
                "confidence": "1.0000",
                "source_rule": "retirejs-local-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456388,
                "domain_scan_id": 301591,
                "code": "javascript_advisories.engine_version",
                "value": "5.7.0",
                "confidence": "1.0000",
                "source_rule": "retirejs-local-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456390,
                "domain_scan_id": 301591,
                "code": "javascript_advisories.database_sha256",
                "value": "f9c4a988373285558f51b0368fafa49d9342fd30238b63f8d7385b0e1f3e16c1",
                "confidence": "1.0000",
                "source_rule": "retirejs-local-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456389,
                "domain_scan_id": 301591,
                "code": "javascript_advisories.database_date",
                "value": "2026-10-11T02:40:11.666Z",
                "confidence": "1.0000",
                "source_rule": "retirejs-local-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456386,
                "domain_scan_id": 301591,
                "code": "javascript_advisories.checked",
                "value": "4",
                "confidence": "1.0000",
                "source_rule": "retirejs-local-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456311,
                "domain_scan_id": 301591,
                "code": "dns_consistency.record_count",
                "value": "7",
                "confidence": "1.0000",
                "source_rule": "dns-consistency-v1",
                "evidence_keys": "[\"dns.records\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456313,
                "domain_scan_id": 301591,
                "code": "dns_consistency.nameserver_count",
                "value": "3",
                "confidence": "1.0000",
                "source_rule": "dns-consistency-v1",
                "evidence_keys": "[\"dns.records\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456314,
                "domain_scan_id": 301591,
                "code": "dns_consistency.mail_route_count",
                "value": "2",
                "confidence": "1.0000",
                "source_rule": "dns-consistency-v1",
                "evidence_keys": "[\"dns.records\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456316,
                "domain_scan_id": 301591,
                "code": "dns_consistency.dnssec_state",
                "value": "unavailable",
                "confidence": "1.0000",
                "source_rule": "dns-consistency-v1",
                "evidence_keys": "[\"dns.records\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456315,
                "domain_scan_id": 301591,
                "code": "dns_consistency.cname_present",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "dns-consistency-v1",
                "evidence_keys": "[\"dns.records\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456332,
                "domain_scan_id": 301591,
                "code": "local_headers.csp_wildcard_sources",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456352,
                "domain_scan_id": 301591,
                "code": "local_resources.checked",
                "value": "6",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456354,
                "domain_scan_id": 301591,
                "code": "local_resources.bytes_scanned",
                "value": "343809",
                "confidence": "1.0000",
                "source_rule": "clamav-resources-v1",
                "evidence_keys": "[\"http.sampled_resources\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456346,
                "domain_scan_id": 301591,
                "code": "local_reputation.status",
                "value": "not_listed",
                "confidence": "1.0000",
                "source_rule": "phishing-db-v1",
                "evidence_keys": "[\"domain.ascii\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456349,
                "domain_scan_id": 301591,
                "code": "local_reputation.sha256",
                "value": "70c6c2e24e6b3484e7ace27b079723e55937bc1f4cbd98bea38a472ec8e37326",
                "confidence": "1.0000",
                "source_rule": "phishing-db-v1",
                "evidence_keys": "[\"domain.ascii\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456347,
                "domain_scan_id": 301591,
                "code": "local_reputation.fetched_at",
                "value": "2026-10-11T06:00:17+00:00",
                "confidence": "1.0000",
                "source_rule": "phishing-db-v1",
                "evidence_keys": "[\"domain.ascii\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456348,
                "domain_scan_id": 301591,
                "code": "local_reputation.entry_count",
                "value": "386082",
                "confidence": "1.0000",
                "source_rule": "phishing-db-v1",
                "evidence_keys": "[\"domain.ascii\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456340,
                "domain_scan_id": 301591,
                "code": "local_headers.permissions_policy_present",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456333,
                "domain_scan_id": 301591,
                "code": "local_headers.hsts_present",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456336,
                "domain_scan_id": 301591,
                "code": "local_headers.hsts_preload",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456334,
                "domain_scan_id": 301591,
                "code": "local_headers.hsts_max_age",
                "value": "31536000",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456335,
                "domain_scan_id": 301591,
                "code": "local_headers.hsts_include_subdomains",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456312,
                "domain_scan_id": 301591,
                "code": "dns_consistency.address_count",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "dns-consistency-v1",
                "evidence_keys": "[\"dns.records\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456330,
                "domain_scan_id": 301591,
                "code": "local_headers.csp_unsafe_inline",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456331,
                "domain_scan_id": 301591,
                "code": "local_headers.csp_unsafe_eval",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456327,
                "domain_scan_id": 301591,
                "code": "local_headers.csp_present",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456329,
                "domain_scan_id": 301591,
                "code": "local_headers.csp_has_object_src",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456328,
                "domain_scan_id": 301591,
                "code": "local_headers.csp_has_default_src",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456338,
                "domain_scan_id": 301591,
                "code": "local_headers.cors_wildcard_origin",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456337,
                "domain_scan_id": 301591,
                "code": "local_headers.cors_present",
                "value": "",
                "confidence": "1.0000",
                "source_rule": "local-headers-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456339,
                "domain_scan_id": 301591,
                "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-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456323,
                "domain_scan_id": 301591,
                "code": "local_cookies.cookies_observed",
                "value": "1",
                "confidence": "1.0000",
                "source_rule": "local-cookies-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            },
            {
                "id": 18456324,
                "domain_scan_id": 301591,
                "code": "local_cookies.cookies_missing_secure",
                "value": "0",
                "confidence": "1.0000",
                "source_rule": "local-cookies-v1",
                "evidence_keys": "[\"http.response_headers\"]",
                "created_at": "2026-10-11 07:29:32",
                "updated_at": "2026-10-11 07:29:32"
            }
        ],
        "technologies": [
            {
                "id": 852341,
                "domain_scan_id": 301591,
                "code": "bootstrap",
                "name": "Bootstrap",
                "version": null,
                "confidence": "0.8000",
                "source_rule": "bootstrap-v1",
                "evidence_keys": "[\"page.html\"]",
                "created_at": "2026-10-11 07:29:31",
                "updated_at": "2026-10-11 07:29:31"
            },
            {
                "id": 852340,
                "domain_scan_id": 301591,
                "code": "jquery",
                "name": "jQuery",
                "version": "3.4.1",
                "confidence": "0.8200",
                "source_rule": "jquery-v1",
                "evidence_keys": "[\"page.html\"]",
                "created_at": "2026-10-11 07:29:31",
                "updated_at": "2026-10-11 07:29:31"
            },
            {
                "id": 852342,
                "domain_scan_id": 301591,
                "code": "tailwind",
                "name": "Tailwind CSS",
                "version": null,
                "confidence": "0.7200",
                "source_rule": "tailwind-v1",
                "evidence_keys": "[\"page.html\"]",
                "created_at": "2026-10-11 07:29:31",
                "updated_at": "2026-10-11 07:29:31"
            }
        ],
        "availability_history": [
            {
                "id": 301591,
                "status": "completed",
                "finished_at": "2026-10-11 07:29:32",
                "error_code": null,
                "status_code": 200,
                "final_url": "https://www.ecotel-rouen.fr/",
                "duration_ms": 2000
            }
        ],
        "comparison": {
            "previous": null,
            "current": {
                "id": 301591,
                "finished_at": "2026-10-11 07:29:32",
                "status_code": 200,
                "final_url": "https://www.ecotel-rouen.fr/",
                "safety_score": 60
            },
            "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."
    ]
}