{
    "ready": true,
    "site": {
        "id": 0,
        "domain": "brunobernardino.com",
        "display_name": "Bruno Bernardino",
        "primary_country_code": "",
        "category_name": "Developer Tools"
    },
    "metrics": {
        "global_rank": 18232,
        "country_rank": 9564,
        "category_rank": 45,
        "daily_pageviews_per_visitor": 3.82,
        "daily_time_on_site_seconds": 358,
        "bounce_rate": 29.46,
        "search_visits_percent": 38.79,
        "total_sites_linking_in": 4,
        "monthly_unique_visitors": 107,
        "recorded_at": "2026-04-16 18:12:46"
    },
    "audit": {
        "score": 75
    },
    "traffic_sources": {
        "direct_percent": 27.84,
        "search_percent": 34.63,
        "social_percent": 4.8,
        "referral_percent": 18.88,
        "email_percent": 6.78,
        "paid_percent": 7.07
    },
    "seo_profile": {
        "backlinks_total": 4,
        "referring_domains": 4,
        "dofollow_backlinks_percent": 100,
        "organic_keywords": 68,
        "indexed_pages": 7,
        "page_speed_score": 100,
        "mobile_friendliness_score": 74,
        "authority_score": 49,
        "spam_risk_score": 16
    },
    "crawl_report": {
        "robots_status": 0,
        "sitemap_status": 0,
        "sitemap_total_urls": 0,
        "crawl_blocked": false,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": "",
        "notes": [
            "No H1 heading was detected.",
            "robots.txt could not be confirmed.",
            "Sitemap could not be confirmed."
        ],
        "created_at": "2026-04-16 18:12:46"
    },
    "keywords": [
        {
            "keyword": "Bruno Bernardino",
            "position": 19,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 18:13:01",
            "is_estimated": true
        },
        {
            "keyword": "Bruno Bernardino developer tools",
            "position": 21,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 18:13:01",
            "is_estimated": true
        },
        {
            "keyword": "Bruno Bernardino reviews",
            "position": 23,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 18:13:01",
            "is_estimated": true
        },
        {
            "keyword": "bruno",
            "position": 25,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 18:13:01",
            "is_estimated": true
        },
        {
            "keyword": "bernardino",
            "position": 27,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 18:13:01",
            "is_estimated": true
        },
        {
            "keyword": "brunobernardino",
            "position": 29,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 18:13:01",
            "is_estimated": true
        },
        {
            "keyword": "automation",
            "position": 31,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 18:13:01",
            "is_estimated": true
        },
        {
            "keyword": "and",
            "position": 33,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 18:13:01",
            "is_estimated": true
        }
    ],
    "rating": {
        "overall": 64,
        "label": "Healthy",
        "breakdown": [
            {
                "label": "Technical foundation",
                "score": 9,
                "max": 18
            },
            {
                "label": "Authority & trust",
                "score": 15,
                "max": 30
            },
            {
                "label": "Reach & market presence",
                "score": 3,
                "max": 18
            },
            {
                "label": "Search visibility",
                "score": 3,
                "max": 12
            },
            {
                "label": "Engagement & retention",
                "score": 9,
                "max": 10
            },
            {
                "label": "Channels & diversification",
                "score": 4,
                "max": 6
            },
            {
                "label": "Registry stability",
                "score": 6,
                "max": 6
            },
            {
                "label": "Quality system",
                "score": 50,
                "max": 100
            },
            {
                "label": "Reputation system",
                "score": 49,
                "max": 100
            },
            {
                "label": "Safety system",
                "score": 100,
                "max": 100
            },
            {
                "label": "Evidence confidence",
                "score": 38,
                "max": 100
            },
            {
                "label": "External intelligence",
                "score": 52,
                "max": 100
            },
            {
                "label": "API intelligence",
                "score": 54,
                "max": 100
            }
        ],
        "authority_score": 49,
        "quality_score": 50,
        "reputation_score": 49,
        "safety_score": 100,
        "confidence_score": 38,
        "fraud_score": 0,
        "authority_signals": {
            "backlinks": 4,
            "referring_domains": 4,
            "organic_keywords": 68,
            "indexed_pages": 7,
            "monthly_visitors": 107,
            "global_rank": 18232,
            "engagement_score": 81,
            "crawl_quality_score": 81,
            "brand_completeness_score": 59,
            "link_diversity_score": 94,
            "technical_reliability_score": 74,
            "whois_score": 93,
            "whois_age_years": 20,
            "whois_stability_score": 100,
            "spam_penalty": 0
        },
        "whois_signals": {
            "age_years": 20,
            "days_to_expiry": 372,
            "days_since_last_registry_update": 280,
            "stability_score": 100,
            "registrar_changes": 0,
            "ownership_changes": 0,
            "nameserver_changes": 0,
            "status_changes": 0,
            "history_entries": 1,
            "privacy_protected": false,
            "dnssec_enabled": true,
            "has_registrant_country": false,
            "registrant_country": "",
            "nameserver_count": 2,
            "status_count": 2
        }
    },
    "authority_score": 49,
    "trust_score": 71,
    "domain_tags": {
        "primary_tag": "T",
        "primary_tag_score": 81,
        "primary_candidate": "T",
        "primary_candidate_score": 81,
        "tag_codes": "T,Uncertain",
        "tags": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good",
                "description": "Strong trust, stability, and low-risk signals were detected.",
                "reason": "Low spam indicators plus strong trust, quality, registry, and stability signals were detected. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The site shows a reasonably trustworthy and stable profile.",
                "priority": 81,
                "score": 81,
                "match_percent": 81,
                "threshold_band": "strong"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown",
                "description": "External checks stayed inconclusive, so the model avoided a harder verdict.",
                "reason": "The evidence is mixed and external checks stayed inconclusive, so the system kept an uncertainty buffer instead of a harder automated verdict.",
                "message": "The evidence is materially mixed or partially corroborated, so the model is avoiding a harder verdict.",
                "priority": 68,
                "score": 68,
                "match_percent": 68,
                "threshold_band": "strong"
            }
        ],
        "tag_breakdown": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good",
                "description": "Strong trust, stability, and low-risk signals were detected.",
                "reason": "Low spam indicators plus strong trust, quality, registry, and stability signals were detected. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The site shows a reasonably trustworthy and stable profile.",
                "priority": 81,
                "score": 81,
                "match_percent": 81,
                "threshold_band": "strong"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown",
                "description": "External checks stayed inconclusive, so the model avoided a harder verdict.",
                "reason": "The evidence is mixed and external checks stayed inconclusive, so the system kept an uncertainty buffer instead of a harder automated verdict.",
                "message": "The evidence is materially mixed or partially corroborated, so the model is avoiding a harder verdict.",
                "priority": 68,
                "score": 68,
                "match_percent": 68,
                "threshold_band": "strong"
            },
            {
                "code": "C",
                "label": "Caution",
                "tone": "caution",
                "description": "Signals are mixed or weak, so this domain should be treated carefully.",
                "reason": "Review carefully: mixed trust signals. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The current crawl does not show a meaningful caution match.",
                "priority": 0,
                "score": 0,
                "match_percent": 0,
                "threshold_band": "none"
            },
            {
                "code": "Crypto",
                "label": "Crypto drainer risk",
                "tone": "toxic",
                "description": "Wallet-connect or seed-phrase theft patterns were detected.",
                "reason": "Wallet-connect or seed-phrase theft patterns were detected.",
                "message": "No meaningful crypto-drainer signals were detected.",
                "priority": 0,
                "score": 0,
                "match_percent": 0,
                "threshold_band": "none"
            },
            {
                "code": "D",
                "label": "Dangerous",
                "tone": "toxic",
                "description": "Strong signs of phishing, malware, or other harmful behaviour were detected.",
                "reason": "Multiple high-risk signals pushed this domain into the dangerous range. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "No meaningful dangerous-signal match was detected.",
                "priority": 0,
                "score": 0,
                "match_percent": 0,
                "threshold_band": "none"
            }
        ],
        "nsfw_score": 0,
        "trust_score": 75,
        "manual": {
            "has_changes": false,
            "verified_status": "",
            "tag_codes": "",
            "rating_delta": 0,
            "authority_delta": 0,
            "trust_delta": 0,
            "note": "",
            "adjusted_by": 0,
            "adjusted_at": "",
            "lock_scores": false,
            "lock_flags": false
        },
        "summary": "Trusted (81% match) because low spam indicators plus strong trust, quality, registry, and stability signals were detected. showing the stored external intelligence snapshot. new search and review intelligence only runs after a visitor uses refresh data manually.",
        "external_intel": {
            "domain": "brunobernardino.com",
            "candidate_tag": "",
            "checked_at": "2026-03-19T06:22:06+00:00",
            "status": "fresh",
            "snapshot_version": 9,
            "summary": "Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
            "search_intelligence": {
                "queries": [
                    "site:trustpilot.com \"brunobernardino.com\" -site:brunobernardino.com -site:www.brunobernardino.com",
                    "site:bbb.org \"brunobernardino.com\" -site:brunobernardino.com -site:www.brunobernardino.com"
                ],
                "focused_queries": [
                    "site:trustpilot.com \"brunobernardino.com\" -site:brunobernardino.com -site:www.brunobernardino.com",
                    "site:bbb.org \"brunobernardino.com\" -site:brunobernardino.com -site:www.brunobernardino.com"
                ],
                "relaxed_queries": [
                    "site:wikipedia.org \"brunobernardino.com\"",
                    "site:en.wikipedia.org \"brunobernardino.com\"",
                    "site:wikipedia.org \"brunobernardino\"",
                    "site:en.wikipedia.org \"brunobernardino\"",
                    "brunobernardino company profile",
                    "brunobernardino reviews",
                    "brunobernardino wikipedia",
                    "brunobernardino linkedin",
                    "brunobernardino crunchbase"
                ],
                "providers": [
                    "brave"
                ],
                "provider_result_counts": {
                    "brave": 0
                },
                "provider_query_attempts": {
                    "brave": 2
                },
                "provider_error_counts": [],
                "provider_failure_reasons": [],
                "provider_block_signals": [],
                "results_found": 1,
                "external_results_found": 0,
                "used_direct_fallback": true,
                "results": [
                    {
                        "provider": "direct-domain-fallback",
                        "url": "https://brunobernardino.com/",
                        "host": "brunobernardino.com",
                        "title": "brunobernardino.com",
                        "snippet": "First-party fallback captured directly from the domain when public search engines returned no usable results.",
                        "is_direct_fallback": true,
                        "source_meta": {
                            "host": "brunobernardino.com",
                            "source_type": "official_site",
                            "label": "Official site",
                            "trust_weight": 55,
                            "evidence_weight": 26,
                            "noise_penalty": 0,
                            "requires_exact_domain_match": true,
                            "supports_positive_verdicts": false,
                            "supports_negative_verdicts": false,
                            "freshness_ttl_days": 21
                        },
                        "entity": {
                            "score": 100,
                            "exactness": "exact_domain",
                            "reasons": [
                                "The result host matches the exact domain.",
                                "The exact domain is mentioned in the page snippet or document text.",
                                "The result URL contains the exact domain string."
                            ]
                        },
                        "query": "direct-fallback",
                        "rank": 1
                    }
                ],
                "source_mix": {
                    "official_site": 1
                },
                "entity_coverage_score": 100,
                "high_trust_result_count": 0,
                "exact_match_result_count": 1,
                "high_entity_result_count": 1,
                "query_hit_count": 0,
                "query_count": 2,
                "used_failover_provider": false,
                "inferred_candidate_tag": "",
                "used_relaxed_queries": false,
                "search_passes": [
                    {
                        "name": "focused-primary",
                        "queries": 2,
                        "providers": [
                            "brave"
                        ],
                        "results_added": 0,
                        "external_results_added": 0,
                        "deadline_hit": true
                    }
                ],
                "deadline_hit": true
            },
            "review_intelligence": {
                "documents_fetched": 1,
                "external_documents_fetched": 0,
                "documents": [
                    {
                        "provider": "direct-domain-fallback",
                        "url": "https://brunobernardino.com/",
                        "host": "brunobernardino.com",
                        "title": "brunobernardino.com",
                        "snippet": "First-party fallback captured directly from the domain when public search engines returned no usable results.",
                        "is_direct_fallback": true,
                        "source_meta": {
                            "host": "brunobernardino.com",
                            "source_type": "official_site",
                            "label": "Official site",
                            "trust_weight": 55,
                            "evidence_weight": 26,
                            "noise_penalty": 0,
                            "requires_exact_domain_match": true,
                            "supports_positive_verdicts": false,
                            "supports_negative_verdicts": false,
                            "freshness_ttl_days": 21
                        },
                        "entity": {
                            "score": 100,
                            "exactness": "exact_domain",
                            "reasons": [
                                "The result host matches the exact domain.",
                                "The exact domain is mentioned in the page snippet or document text.",
                                "The result URL contains the exact domain string."
                            ]
                        },
                        "query": "direct-fallback",
                        "rank": 1,
                        "body": "Bruno Bernardino - Automation and Solutions Engineer Curiosity first.Helping businesses grow since 2003. In late 2025 I built Uruky with my wife, a EU-based and simpler alternative to Kagi. In late 2023 I created bewCloud, a simpler alternative to Nextcloud and ownCloud. Since 2019 I've been helping Sunsama grow more than 20x, past profitability, while building an amazing remote engineering culture, as their Founding Engineer. Before that, I was Zapier's first Developer Platform Engineer and built their new (and current) CLI Developer Platform, growing from 50 to over 1000 apps, from 30 to over 300 people. Prior to all that, I had founded a couple of businesses, sold them, and worked as a systems administrator, software engineer, CTO and COO in a few different places (as a freelancer and as part of other agencies), hiring and managing remote teams of 100+ engineers. Talk to me GitHub // News // Stories // Music",
                        "html": "<!DOCTYPE html> <html lang=\"en\"><head> <meta charset=\"utf-8\"> <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"> <title>Bruno Bernardino - Automation and Solutions Engineer</title> <meta name=\"description\" content=\"Bruno is a curious and empathetic automation and solutions engineer who helps companies build products and scale them.\"> <meta name=\"keywords\" content=\"automation engineer, solutions engineer, founding engineer, consultant, technical advisor, saas, zapier, software engineer, full-stack engineer, growth engineer, sales engineer, engineering manager, leadership, open source, empathy, curiosity\"> <meta name=\"author\" content=\"Bruno Bernardino\"> <meta property=\"og:title\" content=\"Bruno Bernardino - Automation and Solutions Engineer\"> <link rel=\"alternate\" type=\"application/rss+xml\" href=\"https://news.onbrn.com/rss.xml\"> <link rel=\"alternate\" type=\"application/atom+xml\" href=\"https://news.onbrn.com/atom.xml\"> <link rel=\"alternate\" type=\"application/feed+json\" href=\"https://news.onbrn.com/feed.json\"> <link rel=\"stylesheet\" href=\"/styles.css\"> <link rel=\"icon\" sizes=\"32x32\" href=\"/favicon.ico\"> <link rel=\"apple-touch-icon\" sizes=\"180x180\" href=\"/apple-touch-icon.png\"> <link rel=\"icon\" sizes=\"any\" href=\"/favicon.svg\" type=\"image/svg+xml\"> </head> <body class=\"bg-gradient-to-b from-slate-800 to-slate-900 bg-slate-800 lg:max-w-4xl mx-auto px-2 lg:px-8 py-8 my-4 min-h-screen\"> <header class=\"mx-auto px-2 mb-10 flex items-center justify-center flex-col max-w-md text-center mt-6 md:mt-0\"> <a href=\"/\"><img class=\"hover:opacity-75\" src=\"/favicon.svg\" alt=\"A half-full circle\" width=\"100\" height=\"100\"></a> <h3 class=\"font-bold text-slate-100 mt-2 text-lg\">Curiosity first.<br>Helping businesses grow since 2003.</h3> </header> <article class=\"prose prose-slate prose-invert lg:prose-xl py-2 px-4 mx-auto\"> <section class=\"mx-auto px-2 mt-8 mb-12 flex items-center justify-center flex-col max-w-2xl text-center\"> <p class=\"font-base text-slate-100 !mt-2 text-base\">In late 2025 I built <a href=\"https://uruky.com\" rel=\"noopener noreferrer\" target=\"_blank\">Uruky</a> with my wife, a EU-based and simpler alternative to Kagi.</p> <p class=\"font-base text-slate-100 !mt-2 text-base\">In late 2023 I created <a href=\"https://bewcloud.com\" rel=\"noopener noreferrer\" target=\"_blank\">bewCloud</a>, a simpler alternative to Nextcloud and ownCloud.</p> <p class=\"font-base text-slate-100 !mt-2 text-base\">Since 2019 I've been helping <a href=\"https://sunsama.com\" rel=\"noopener noreferrer\" target=\"_blank\">Sunsama</a> grow more than 20x, past profitability, while building an amazing remote engineering culture, as their Founding Engineer.</p> <p class=\"font-base text-slate-100 !mt-2 text-base\">Before that, I was <a href=\"https://zapier.com\" rel=\"noopener noreferrer\" target=\"_blank\">Zapier</a>'s first Developer Platform Engineer and built their new (and current) CLI Developer Platform, growing from 50 to over 1000 apps, from 30 to over 300 people.</p> <p class=\"font-base text-slate-100 !mt-2 text-base\">Prior to all that, I had founded a couple of businesses, sold them, and worked as a systems administrator, software engineer, CTO and COO in a few different places (as a freelancer and as part of other agencies), hiring and managing remote teams of 100+ engineers.</p> </section> <section class=\"flex justify-center\"> <a href=\"mailto:me@brunobernardino.com\" rel=\"noopener noreferrer\" target=\"_blank\" class=\"py-3 px-4 rounded-md bg-gradient-to-br from-sky-900 to-cyan-700 hover:from-sky-800 hover:to-cyan-500 shadow-sm hover:shadow-md flex items-center gap-3 text-center\"> <img class=\"image-link !my-0\" src=\"/mail.svg\" alt=\"A mail envelope\" width=\"24\" height=\"24\"> <span class=\"text-base font-normal text-white\">Talk to me</span> </a> </section> </article> <footer class=\"border-t border-slate-600 text-center mt-20 px-2 py-6 mx-2 my-2 text-slate-100 flex flex-col md:flex-row justify-center\"> <a href=\"https://github.com/BrunoBernardino\" class=\"mx-2\" rel=\"noopener noreferrer\" target=\"_blank\">GitHub</a> <span class=\"mx-2 text-slate-700\">//</span> <a href=\"https://news.onbrn.com\" class=\"mx-2\" rel=\"noopener noreferrer\" target=\"_blank\">News</a> <span class=\"mx-2 text-slate-700\">//</span> <a href=\"https://ministories.net\" class=\"mx-2\" rel=\"noopener noreferrer\" target=\"_blank\">Stories</a> <span class=\"mx-2 text-slate-700\">//</span> <a href=\"https://snozmusic.com\" class=\"mx-2\" rel=\"noopener noreferrer\" target=\"_blank\">Music</a> </footer> </body></html>",
                        "status_code": 200,
                        "final_url": "https://brunobernardino.com/"
                    }
                ],
                "facts": [],
                "ignored_candidates": [],
                "blocked_candidates": 0,
                "source_diversity": 0,
                "host_coverage": 1,
                "source_type_coverage": 1,
                "exact_match_documents": 1,
                "external_exact_match_documents": 0,
                "elapsed_ms": 78,
                "candidates_considered": 1,
                "fetch_success_rate": 100,
                "avg_source_trust": 55,
                "avg_entity_score": 100
            },
            "provider_enrichment": {
                "providers": {
                    "safebrowsing": {
                        "status": "disabled"
                    },
                    "abuseipdb": {
                        "status": "ok",
                        "confidence": 58,
                        "ip": "162.55.55.87",
                        "abuse_confidence_score": 0,
                        "total_reports": 0,
                        "last_reported_at": "",
                        "country_code": "DE",
                        "usage_type": "Data Center/Web Hosting/Transit",
                        "isp": "Hetzner Online GmbH",
                        "domain": "hetzner.com",
                        "budget": {
                            "provider": "abuseipdb",
                            "window_key": "2026-03-19",
                            "used": 528,
                            "limit": 850,
                            "remaining": 322,
                            "updated_at": "2026-03-19T06:22:05+00:00"
                        },
                        "facts": [],
                        "highlights": [],
                        "citations": [
                            {
                                "title": "AbuseIPDB IP reputation check",
                                "url": "https://docs.abuseipdb.com/",
                                "host": "docs.abuseipdb.com",
                                "snippet": "Primary IP 162.55.55.87 scored 0/100 with 0 report(s).",
                                "source_type": "api_reputation"
                            }
                        ],
                        "cached": true
                    },
                    "ipinfo": {
                        "status": "ok",
                        "confidence": 54,
                        "ip": "162.55.55.87",
                        "asn": "AS24940",
                        "as_name": "Hetzner Online GmbH",
                        "as_domain": "hetzner.de",
                        "country_code": "DE",
                        "country": "Germany",
                        "region": "",
                        "city": "",
                        "flags": [],
                        "highlights": [
                            "IPinfo resolved the primary IP to DE on AS24940."
                        ],
                        "citations": [
                            {
                                "title": "IPinfo IP enrichment",
                                "url": "https://ipinfo.io/developers",
                                "host": "ipinfo.io",
                                "snippet": "Primary IP 162.55.55.87 geolocates to DE.",
                                "source_type": "ip_enrichment"
                            }
                        ]
                    },
                    "censys": {
                        "status": "error",
                        "error": "HTTP 401: {\"code\": 401, \"status\": \"Unauthorized\", \"error\": \"You must authenticate with a valid API ID and secret.\"}",
                        "cached": true
                    },
                    "sslmate": {
                        "status": "error",
                        "error": "HTTP 429: {\"code\":\"rate_limited\",\"message\":\"You have exceeded the domain search rate limit for the SSLMate CT Search API. Please try again later, or upgrade your Cert Spotter plan by visiting .\"}"
                    }
                },
                "facts": [],
                "citations": [
                    {
                        "title": "AbuseIPDB IP reputation check",
                        "url": "https://docs.abuseipdb.com/",
                        "host": "docs.abuseipdb.com",
                        "snippet": "Primary IP 162.55.55.87 scored 0/100 with 0 report(s).",
                        "source_type": "api_reputation"
                    },
                    {
                        "title": "IPinfo IP enrichment",
                        "url": "https://ipinfo.io/developers",
                        "host": "ipinfo.io",
                        "snippet": "Primary IP 162.55.55.87 geolocates to DE.",
                        "source_type": "ip_enrichment"
                    }
                ],
                "highlights": [
                    "IPinfo resolved the primary IP to DE on AS24940."
                ],
                "resolved_ips": [
                    "162.55.55.87"
                ],
                "primary_ip": "162.55.55.87",
                "quality": {
                    "provider_diversity_score": 50,
                    "provider_confidence_score": 56,
                    "provider_fact_count": 0
                }
            },
            "evidence": {
                "scores": {
                    "legit": 0,
                    "safe": 0,
                    "trusted": 0,
                    "caution": 0,
                    "scam": 0,
                    "dangerous": 0,
                    "spam": 0,
                    "nsfw": 0
                },
                "counts": {
                    "official_presence": 0,
                    "business_profiles": 0,
                    "positive_reviews": 0,
                    "negative_reviews": 0,
                    "scam_reports": 0,
                    "dangerous_reports": 0,
                    "spam_reports": 0,
                    "adult_reports": 0
                },
                "tag_support": [],
                "top_supporting_facts": [],
                "top_positive_facts": []
            },
            "quality": {
                "source_diversity_score": 0,
                "entity_coverage_score": 100,
                "freshness_score": 18,
                "confidence": 25,
                "documents_fetched": 1,
                "external_documents_fetched": 0,
                "fact_count": 0,
                "avg_source_trust": 55,
                "avg_entity_score": 100,
                "fetch_success_rate": 100,
                "exact_match_score": 0,
                "query_coverage_score": 20,
                "host_coverage_score": 20,
                "source_type_coverage_score": 25,
                "qualified_evidence_score": 0,
                "exact_match_documents": 0,
                "blocked_candidates": 0,
                "used_direct_fallback": true,
                "external_results_found": 0,
                "provider_diversity_score": 50,
                "provider_confidence_score": 56,
                "provider_fact_count": 0
            },
            "decision": {
                "state": "insufficient",
                "uncertainty": true,
                "candidate_support": 0,
                "candidate_contradiction": 0,
                "supports": {
                    "dangerous": false,
                    "scam": false,
                    "spam": false,
                    "nsfw": false,
                    "trusted": false
                },
                "evidence_quality": "low",
                "state_label": "Inconclusive",
                "state_reason": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
            },
            "signals": {
                "scores": {
                    "legit": 0,
                    "safe": 0,
                    "trusted": 0,
                    "caution": 0,
                    "scam": 0,
                    "dangerous": 0,
                    "spam": 0,
                    "nsfw": 0
                },
                "counts": {
                    "official_presence": 0,
                    "business_profiles": 0,
                    "positive_reviews": 0,
                    "negative_reviews": 0,
                    "scam_reports": 0,
                    "dangerous_reports": 0,
                    "spam_reports": 0,
                    "adult_reports": 0
                },
                "candidate_support": 0,
                "candidate_contradiction": 0,
                "highlights": [
                    "IPinfo resolved the primary IP to DE on AS24940.",
                    "External evidence remained inconclusive because diversity, exact matching, or confidence was still too weak."
                ]
            },
            "citations": [
                {
                    "title": "AbuseIPDB IP reputation check",
                    "url": "https://docs.abuseipdb.com/",
                    "host": "docs.abuseipdb.com",
                    "snippet": "Primary IP 162.55.55.87 scored 0/100 with 0 report(s).",
                    "source_type": "api_reputation"
                },
                {
                    "title": "IPinfo IP enrichment",
                    "url": "https://ipinfo.io/developers",
                    "host": "ipinfo.io",
                    "snippet": "Primary IP 162.55.55.87 geolocates to DE.",
                    "source_type": "ip_enrichment"
                }
            ],
            "urlscan": {
                "domain": "brunobernardino.com",
                "status": "pending",
                "submitted_at": "2026-03-19T06:22:05+00:00",
                "last_checked_at": "2026-03-19T06:22:05+00:00",
                "last_error": "",
                "submitted_url": "https://brunobernardino.com/",
                "summary": "urlscan.io accepted the scan. Waiting for the final report to finish.",
                "uuid": "019d04c2-2553-72d3-9816-9c94bcf77440",
                "result_url": "https://urlscan.io/result/019d04c2-2553-72d3-9816-9c94bcf77440/",
                "api_result_url": "https://urlscan.io/api/v1/result/019d04c2-2553-72d3-9816-9c94bcf77440/",
                "visibility": "public",
                "raw_submit_response": {
                    "message": "Submission successful",
                    "uuid": "019d04c2-2553-72d3-9816-9c94bcf77440",
                    "result": "https://urlscan.io/result/019d04c2-2553-72d3-9816-9c94bcf77440/",
                    "api": "https://urlscan.io/api/v1/result/019d04c2-2553-72d3-9816-9c94bcf77440/",
                    "visibility": "public",
                    "options": [],
                    "url": "https://brunobernardino.com/"
                },
                "report": [],
                "report_summary": [],
                "is_fresh": false,
                "can_retry": false,
                "poll_after_seconds": 20
            },
            "eligibility": {
                "budget_ms": 4200,
                "search_budget_ms": 1600,
                "review_budget_ms": 2600,
                "query_cap": 2,
                "provider_cap": 1,
                "result_cap": 6,
                "review_document_cap": 4,
                "search_connect_timeout": 2,
                "search_timeout": 3,
                "review_connect_timeout": 2,
                "review_timeout": 3,
                "allowed": true,
                "mode": "normal",
                "decision_code": "run_normal",
                "reason": "post-crawl",
                "summary": "Running a standard intelligence pass because the current signals need third-party corroboration.",
                "cooldown": {
                    "active": false,
                    "empty_attempts": 0,
                    "next_allowed_at": "",
                    "reason": "",
                    "provider_retry_at": ""
                },
                "suffix": {
                    "tld": "com",
                    "registered_suffix": "com",
                    "class": "high_confidence",
                    "reserved": false
                },
                "signals": {
                    "trust_score": 0,
                    "quality_score": 0,
                    "safety_score": 0,
                    "fraud_score": 0,
                    "spam_score": 0,
                    "nsfw_score": 0,
                    "score_confidence": 0,
                    "risk_label": "good",
                    "crawl_blocked": false,
                    "last_http_status": 200,
                    "content_word_count": 152,
                    "internal_links_count": 1,
                    "site_name": "",
                    "title": "Bruno Bernardino - Automation and Solutions Engineer",
                    "is_tracked": false
                }
            },
            "cooldown": {
                "empty_attempts": 1,
                "next_allowed_at": "2026-03-26T06:22:06+00:00",
                "reason": "Recent intelligence runs produced no qualified third-party evidence, so retries are cooled down to save budget.",
                "provider_retry_at": "",
                "last_reason": "post-crawl"
            },
            "debug": {
                "top_supporting_facts": [],
                "top_positive_facts": [],
                "ignored_candidates": [],
                "budget_ms": 4200,
                "search_budget_ms": 1600,
                "review_budget_ms": 2600,
                "search_mode": "post-crawl",
                "query_cap": 2,
                "provider_cap": 1,
                "result_cap": 6,
                "review_document_cap": 4,
                "reason": "post-crawl",
                "priority": 92,
                "eligibility_decision": "run_normal",
                "provider_statuses": {
                    "safebrowsing": "disabled",
                    "abuseipdb": "ok",
                    "ipinfo": "ok",
                    "censys": "error",
                    "sslmate": "error"
                }
            },
            "last_good": {
                "checked_at": "2026-03-19T06:22:06+00:00",
                "summary": "External checks ran, but the verified result set was still too sparse to harden the verdict.",
                "decision": {
                    "state": "insufficient",
                    "uncertainty": true,
                    "candidate_support": 0,
                    "candidate_contradiction": 0,
                    "supports": {
                        "dangerous": false,
                        "scam": false,
                        "spam": false,
                        "nsfw": false,
                        "trusted": false
                    },
                    "evidence_quality": "low",
                    "state_label": "Inconclusive",
                    "state_reason": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
                },
                "signals": {
                    "scores": {
                        "legit": 0,
                        "safe": 0,
                        "trusted": 0,
                        "caution": 0,
                        "scam": 0,
                        "dangerous": 0,
                        "spam": 0,
                        "nsfw": 0
                    },
                    "counts": {
                        "official_presence": 0,
                        "business_profiles": 0,
                        "positive_reviews": 0,
                        "negative_reviews": 0,
                        "scam_reports": 0,
                        "dangerous_reports": 0,
                        "spam_reports": 0,
                        "adult_reports": 0
                    },
                    "candidate_support": 0,
                    "candidate_contradiction": 0,
                    "highlights": [
                        "IPinfo resolved the primary IP to DE on AS24940.",
                        "External evidence remained inconclusive because diversity, exact matching, or confidence was still too weak."
                    ]
                },
                "citations": [
                    {
                        "title": "AbuseIPDB IP reputation check",
                        "url": "https://docs.abuseipdb.com/",
                        "host": "docs.abuseipdb.com",
                        "snippet": "Primary IP 162.55.55.87 scored 0/100 with 0 report(s).",
                        "source_type": "api_reputation"
                    },
                    {
                        "title": "IPinfo IP enrichment",
                        "url": "https://ipinfo.io/developers",
                        "host": "ipinfo.io",
                        "snippet": "Primary IP 162.55.55.87 geolocates to DE.",
                        "source_type": "ip_enrichment"
                    }
                ]
            }
        },
        "external_decision": {
            "state": "insufficient",
            "uncertainty": true,
            "candidate_support": 0,
            "candidate_contradiction": 0,
            "supports": {
                "dangerous": false,
                "scam": false,
                "spam": false,
                "nsfw": false,
                "trusted": false
            },
            "evidence_quality": "low",
            "state_label": "Inconclusive",
            "state_reason": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
        },
        "signal_scores": [
            {
                "label": "Strongest tag heuristic",
                "value": "T · 81%",
                "tone": "good",
                "detail": "The highest raw tag match from the heuristic engine before visibility thresholds and manual overrides."
            },
            {
                "label": "Trust score",
                "value": "75/100",
                "tone": "good",
                "detail": "Confidence derived from authority, crawl quality, stability, and risk signals."
            },
            {
                "label": "Authority score",
                "value": "51/100",
                "tone": "caution",
                "detail": "A higher authority score usually means broader reputation and backlink confidence."
            },
            {
                "label": "Spam risk",
                "value": "5/100",
                "tone": "good",
                "detail": "Lower is better. This blends spam indicators with false-positive protections for legitimate sites."
            },
            {
                "label": "Quality score",
                "value": "71/100",
                "tone": "good",
                "detail": "Based on crawl quality, content completeness, and technical evidence."
            },
            {
                "label": "Safety score",
                "value": "100/100",
                "tone": "good",
                "detail": "Higher is safer. Direct fraud signals can heavily cap this even when SEO signals look strong."
            },
            {
                "label": "Fraud score",
                "value": "0/100",
                "tone": "good",
                "detail": "Lower is better. This reflects phishing, drainer, fake-support, fake-shop, and malware signals."
            },
            {
                "label": "Infrastructure risk",
                "value": "0/100",
                "tone": "good",
                "detail": "Lower is better. This reflects the IP, registrar, and nameserver neighbourhood seen by the crawler."
            },
            {
                "label": "Evidence confidence",
                "value": "47/100",
                "tone": "caution",
                "detail": "Higher means the crawler had enough pages and registry evidence to make a stronger call."
            },
            {
                "label": "External evidence",
                "value": "Low",
                "tone": "unknown",
                "detail": "Quality of the structured search and review evidence cluster."
            },
            {
                "label": "External decision",
                "value": "Inconclusive",
                "tone": "unknown",
                "detail": "How third-party evidence compares with the current candidate tag."
            },
            {
                "label": "NSFW score",
                "value": "0/100",
                "tone": "good",
                "detail": "Context-aware adult-content detection with medical / educational false-positive reduction."
            },
            {
                "label": "Registry stability",
                "value": "100/100",
                "tone": "good",
                "detail": "Based on age, expiry runway, and the amount of ownership / registrar churn."
            }
        ],
        "signal_sections": [
            {
                "title": "Registry & ownership",
                "items": [
                    {
                        "label": "Domain age",
                        "value": "20.0 years",
                        "tone": "good",
                        "detail": "Older domains generally carry more historical trust than very new ones."
                    },
                    {
                        "label": "Stability score",
                        "value": "100/100",
                        "tone": "good",
                        "detail": "Penalised by registrar, ownership, and nameserver churn."
                    },
                    {
                        "label": "Days to expiry",
                        "value": "372",
                        "tone": "good",
                        "detail": "Very short renewal windows can be a weak trust signal."
                    },
                    {
                        "label": "Registrar / ownership changes",
                        "value": "0 / 0",
                        "tone": "good",
                        "detail": "Frequent ownership churn can weaken trust."
                    },
                    {
                        "label": "Nameserver changes",
                        "value": "0",
                        "tone": "good",
                        "detail": "Repeated infrastructure changes can indicate instability."
                    },
                    {
                        "label": "DNSSEC / privacy",
                        "value": "DNSSEC on · privacy off",
                        "tone": "good",
                        "detail": "DNSSEC strengthens DNS trust; privacy is neutral on its own."
                    }
                ]
            },
            {
                "title": "Reputation & search evidence",
                "items": [
                    {
                        "label": "Backlinks",
                        "value": "4",
                        "tone": "unknown",
                        "detail": "Broader backlink evidence usually improves confidence."
                    },
                    {
                        "label": "Referring domains",
                        "value": "4",
                        "tone": "unknown",
                        "detail": "Unique linking domains are more useful than raw link volume."
                    },
                    {
                        "label": "Organic keywords",
                        "value": "68",
                        "tone": "caution",
                        "detail": "Search footprint helps distinguish real sites from thin shells."
                    },
                    {
                        "label": "Indexed pages",
                        "value": "7",
                        "tone": "unknown",
                        "detail": "Larger index coverage usually means more evidence to classify from."
                    },
                    {
                        "label": "Brand strength",
                        "value": "59/100",
                        "tone": "good",
                        "detail": "Stronger brand signals reduce false positives for legitimate sites."
                    },
                    {
                        "label": "Risk label",
                        "value": "GOOD",
                        "tone": "unknown",
                        "detail": "This is the raw crawl / heuristic risk label feeding the tag model."
                    }
                ]
            },
            {
                "title": "Crawl, content & technicals",
                "items": [
                    {
                        "label": "HTTP status",
                        "value": "200",
                        "tone": "good",
                        "detail": "Healthy responses make classification more reliable."
                    },
                    {
                        "label": "HTTPS / speed",
                        "value": "HTTPS OK · 104 ms",
                        "tone": "good",
                        "detail": "Slow or broken technical signals weaken confidence."
                    },
                    {
                        "label": "Content words",
                        "value": "152",
                        "tone": "caution",
                        "detail": "Thin pages are harder to trust and easier to manipulate."
                    },
                    {
                        "label": "Schema / structure",
                        "value": "0 schema · meta · no H1",
                        "tone": "caution",
                        "detail": "Structured markup and basic on-page hygiene improve quality confidence."
                    },
                    {
                        "label": "Links on page",
                        "value": "1 internal · 8 external",
                        "tone": "caution",
                        "detail": "Link patterns help detect thin directories and promo pages."
                    },
                    {
                        "label": "Page speed / mobile",
                        "value": "100/100 · 74/100",
                        "tone": "good",
                        "detail": "Better technical quality generally reduces low-effort site patterns."
                    },
                    {
                        "label": "Crawl access",
                        "value": "Open",
                        "tone": "good",
                        "detail": "The crawler reached the site without an anti-bot challenge."
                    }
                ]
            },
            {
                "title": "External evidence & explainability",
                "items": [
                    {
                        "label": "Decision state",
                        "value": "Inconclusive",
                        "tone": "unknown",
                        "detail": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
                    },
                    {
                        "label": "Evidence quality",
                        "value": "Low",
                        "tone": "unknown",
                        "detail": "Blends source trust, domain matching, evidence diversity, and freshness."
                    },
                    {
                        "label": "Support vs contradiction",
                        "value": "0 / 0",
                        "tone": "unknown",
                        "detail": "Compares how much structured external evidence supports the candidate tag against evidence that contradicts it."
                    },
                    {
                        "label": "Qualified risk sources",
                        "value": "No",
                        "tone": "good",
                        "detail": "Risk tags only promote from external evidence when source diversity or source trust thresholds are met."
                    },
                    {
                        "label": "Uncertainty buffer",
                        "value": "Active",
                        "tone": "caution",
                        "detail": "Prevents thin or mixed external evidence from forcing a stronger tag than the evidence can justify."
                    }
                ]
            }
        ],
        "positives": [
            "Established domain age: 20.0 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "DNSSEC is enabled."
        ],
        "risks": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ]
    },
    "traffic_confidence": 47,
    "whois": {
        "current": {
            "id": 32396,
            "domain": "brunobernardino.com",
            "source_type": "rdap",
            "rdap_url": "https://rdap.verisign.com/com/v1/domain/BRUNOBERNARDINO.COM",
            "registrar_name": "OVH sas",
            "registrar_handle": "433",
            "registrant_name": "",
            "registrant_org": "",
            "registrant_country": "",
            "registrant_email": "",
            "abuse_email": "abuse@ovh.net",
            "created_date": "2006-04-24 08:40:51",
            "updated_date": "2025-07-10 12:58:10",
            "expires_date": "2027-04-24 08:40:51",
            "nameservers_json": "[\"dns100.ovh.net\",\"ns100.ovh.net\"]",
            "status_json": "[\"client delete prohibited\",\"client transfer prohibited\"]",
            "dnssec": "signed",
            "privacy_protected": 0,
            "content_hash": "ae30ec096494bc37a9cd3b6a8614482b2b2b3f1f66e05b33034bc0bb466bfda6",
            "history_count": 1,
            "last_checked_at": "2026-04-16 18:12:41",
            "last_changed_at": "2026-03-19 06:22:04",
            "created_at": "2026-03-19 06:22:04",
            "updated_at": "2026-04-16 18:12:41"
        },
        "history": [
            {
                "id": 33177,
                "domain": "brunobernardino.com",
                "source_type": "rdap",
                "registrar_name": "OVH sas",
                "registrar_handle": "433",
                "registrant_name": "",
                "registrant_org": "",
                "registrant_country": "",
                "registrant_email": "",
                "abuse_email": "abuse@ovh.net",
                "created_date": "2006-04-24 08:40:51",
                "updated_date": "2025-07-10 12:58:10",
                "expires_date": "2027-04-24 08:40:51",
                "nameservers_json": "[\"dns100.ovh.net\",\"ns100.ovh.net\"]",
                "status_json": "[\"client delete prohibited\",\"client transfer prohibited\"]",
                "dnssec": "signed",
                "privacy_protected": 0,
                "content_hash": "ae30ec096494bc37a9cd3b6a8614482b2b2b3f1f66e05b33034bc0bb466bfda6",
                "checked_at": "2026-03-19 06:22:04",
                "change_summary": "Initial WHOIS snapshot captured.",
                "created_at": "2026-03-19 06:22:04"
            }
        ],
        "signals": {
            "age_years": 20,
            "days_to_expiry": 372,
            "days_since_last_registry_update": 280,
            "stability_score": 100,
            "registrar_changes": 0,
            "ownership_changes": 0,
            "nameserver_changes": 0,
            "status_changes": 0,
            "history_entries": 1,
            "privacy_protected": false,
            "dnssec_enabled": true,
            "has_registrant_country": false,
            "registrant_country": "",
            "nameserver_count": 2,
            "status_count": 2
        }
    },
    "discovered_domain": {
        "id": 80476,
        "domain": "brunobernardino.com",
        "first_seen_at": "2026-03-15 20:24:34",
        "last_crawled_at": "2026-04-16 18:12:46",
        "last_title": "Bruno Bernardino - Automation and Solutions Engineer",
        "last_http_status": 200,
        "discovered_from_domain": "personalsit.es",
        "depth": 0,
        "backlinks_count": 4,
        "rating_cache": 42,
        "spam_score": 16,
        "risk_label": "good",
        "category_name": "Developer Tools",
        "primary_country_code": "",
        "internal_links_count": 1,
        "external_links_count": 8,
        "social_profiles_count": 1,
        "content_word_count": 152,
        "title_quality_score": 93,
        "has_meta_description": 1,
        "has_h1": 0,
        "language_code": "en",
        "response_time_ms": 104,
        "robots_status": 0,
        "sitemap_status": 0,
        "sitemap_total_urls": 0,
        "quality_score": 71,
        "site_name": "",
        "canonical_domain": "",
        "favicon_present": 1,
        "schema_org_count": 0,
        "noindex_detected": 0,
        "feed_links_count": 2,
        "https_working": 1,
        "estimated_authority_score": 39,
        "trust_score": 69,
        "nsfw_score": 0,
        "overall_rank_estimate": 4693079,
        "primary_tag": "C",
        "tag_codes": "C,Uncertain",
        "manual_verified_status": "",
        "manual_tag_codes": "",
        "manual_rating_delta": 0,
        "manual_authority_delta": 0,
        "manual_trust_delta": 0,
        "manual_note": null,
        "manual_adjusted_by": null,
        "manual_adjusted_at": null,
        "manual_lock_scores": 0,
        "manual_lock_flags": 0,
        "crawl_blocked": 0,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": null,
        "safety_score": 100,
        "fraud_score": 0,
        "legitimacy_score": 46,
        "infrastructure_risk_score": 0,
        "score_confidence": 37,
        "tag_confidence": 26,
        "category_confidence": 12,
        "deep_crawl_pages": 0,
        "resolved_ip": "162.55.55.87",
        "category_candidates_json": "[{\"category\":\"Developer Tools\",\"score\":17}]",
        "page_signals_json": "[]",
        "score_reasons_json": "[\"Category confidence was reduced, so the classifier fell back to the broader parent category.\",\"Category evidence stayed thin, so the output was softened to a broader classification.\",\"Trusted status now requires clean crawl access and stronger confidence, so this result was downgraded to caution.\",\"Overall rating is now capped by evidence confidence to prevent inflated scores from thin signals.\",\"Low evidence confidence now reduces how high the public rating can climb.\"]",
        "route_domain": "brunobernardino.com",
        "display_domain": "brunobernardino.com"
    },
    "explainability": {
        "summary": "brunobernardino.com currently scores 64/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is still limited, so the score can move materially after more evidence is collected. This is an estimated profile rather than a manually tracked one. Crawler access looks clean.",
        "badges": [
            {
                "label": "Profile",
                "value": "Estimated profile",
                "tone": "unknown",
                "detail": null
            },
            {
                "label": "Evidence confidence",
                "value": "Low confidence",
                "tone": "risk",
                "detail": "38/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "47/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "weighted_contributions": [
            {
                "label": "Quality system",
                "points": "+17.0",
                "tone": "caution",
                "detail": "Technical quality, crawl depth, page structure, and implementation hygiene. Current subsystem score: 50/100."
            },
            {
                "label": "Reputation system",
                "points": "+16.7",
                "tone": "caution",
                "detail": "Authority, search visibility, reach, engagement, and registry stability. Current subsystem score: 49/100."
            },
            {
                "label": "Safety system",
                "points": "+32.0",
                "tone": "good",
                "detail": "Fraud, spam, and trust signals from infrastructure, crawl, and registry evidence. Current subsystem score: 100/100."
            },
            {
                "label": "Risk clamp",
                "points": "-2.0",
                "tone": "risk",
                "detail": "Safety thresholds capped the final score until the risk profile improves."
            }
        ],
        "evidence_cards": [
            {
                "label": "Authority and trust",
                "value": "49/100 · trust 71/100",
                "tone": "caution",
                "detail": "107 monthly visitors, 68 organic keywords, brand completeness 59/100, engagement 81/100."
            },
            {
                "label": "Backlink and search evidence",
                "value": "4 referring domains",
                "tone": "good",
                "detail": "4 backlinks across 4 referring domains. Diversity 94/100; spam penalty 0."
            },
            {
                "label": "Registry and domain stability",
                "value": "20.0 years old",
                "tone": "good",
                "detail": "Stability 100/100 · age 20.0 years · registrar OVH sas · expires in 372 days."
            },
            {
                "label": "Safety and fraud posture",
                "value": "Safety 100/100 · fraud 0/100",
                "tone": "good",
                "detail": "Primary tag T · safety 100/100 · fraud 0/100."
            }
        ],
        "positives": [
            "Established domain age: 20.0 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "DNSSEC is enabled.",
            "Registry history looks stable, which supports legitimacy and trust.",
            "The domain has been registered for years, which usually improves trust confidence."
        ],
        "risks": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ],
        "freshness": [
            {
                "label": "Crawl evidence",
                "value": "2026-04-16 18:12:46",
                "tone": "good",
                "detail": "Crawl and page content sample. Age: 15s ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-04-16 18:12:41",
                "tone": "good",
                "detail": "Registry profile and stability signals. Age: 20s ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-16 18:13:01",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-16 18:13:01",
                "tone": "good",
                "detail": "Estimated trend derived from current profile and crawl signals. Age: 0s ago."
            },
            {
                "label": "Audience geography",
                "value": "Not captured yet",
                "tone": "unknown",
                "detail": "Audience mix is estimated from available signals rather than first-party audience logs."
            }
        ],
        "section_notes": {
            "audience": "Audience geography is estimated from category, country, traffic mix, and brand signals until first-party audience data is collected.",
            "keywords": "Top keywords are estimated from crawl language, brand, category, and visibility signals until tracked keyword snapshots are stored.",
            "history": "Rank history is estimated from the current profile because no stored history exists for this domain yet."
        },
        "base_weighted_score": 66,
        "fraud_clamp_penalty": 2,
        "final_score": 64
    },
    "insight_snapshot": {
        "version": 1,
        "generated_at": "2026-04-16T18:13:01+00:00",
        "domain": "brunobernardino.com",
        "display_name": "Bruno Bernardino",
        "is_tracked": false,
        "is_estimated": true,
        "overall_score": 64,
        "authority_score": 49,
        "trust_score": 71,
        "safety_score": 100,
        "fraud_score": 0,
        "confidence_score": 38,
        "traffic_confidence": 47,
        "last_crawled_at": "2026-04-16 18:12:46",
        "crawl_blocked": false,
        "summary": "brunobernardino.com currently scores 64/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is still limited, so the score can move materially after more evidence is collected. This is an estimated profile rather than a manually tracked one. Crawler access looks clean.",
        "badges": [
            {
                "label": "Profile",
                "value": "Estimated profile",
                "tone": "unknown",
                "detail": null
            },
            {
                "label": "Evidence confidence",
                "value": "Low confidence",
                "tone": "risk",
                "detail": "38/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "47/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "top_positive_signals": [
            "Established domain age: 20.0 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "DNSSEC is enabled.",
            "Registry history looks stable, which supports legitimacy and trust."
        ],
        "top_risk_signals": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ],
        "freshness": [
            {
                "label": "Crawl evidence",
                "value": "2026-04-16 18:12:46",
                "tone": "good",
                "detail": "Crawl and page content sample. Age: 15s ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-04-16 18:12:41",
                "tone": "good",
                "detail": "Registry profile and stability signals. Age: 20s ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-16 18:13:01",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-16 18:13:01",
                "tone": "good",
                "detail": "Estimated trend derived from current profile and crawl signals. Age: 0s ago."
            },
            {
                "label": "Audience geography",
                "value": "Not captured yet",
                "tone": "unknown",
                "detail": "Audience mix is estimated from available signals rather than first-party audience logs."
            }
        ],
        "top_tags": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown"
            }
        ]
    },
    "is_tracked": false,
    "is_estimated": true,
    "live_state": {
        "status": "processing",
        "status_label": "Cache build running",
        "message": "The refreshed page cache is still being built for this domain.",
        "updated_at": "2026-04-18T21:39:08+00:00"
    },
    "refresh_state": {
        "canRequest": false,
        "queued": true,
        "processing": true,
        "stageKey": "cache-queued",
        "stageLabel": "Cache build running",
        "cooldownUntil": null,
        "message": "The refreshed page cache is still being built for this domain.",
        "action": "/domain/brunobernardino.com/refresh",
        "isGuestCooldown": false,
        "cooldownSeconds": 0
    },
    "urlscan_report": {
        "domain": "brunobernardino.com",
        "status": "complete",
        "submitted_at": "2026-03-19T06:22:05+00:00",
        "last_checked_at": "2026-03-23T15:37:12+00:00",
        "last_error": "",
        "submitted_url": "https://brunobernardino.com/",
        "summary": "urlscan.io report is ready.",
        "uuid": "019d04c2-2553-72d3-9816-9c94bcf77440",
        "result_url": "https://urlscan.io/result/019d04c2-2553-72d3-9816-9c94bcf77440/",
        "api_result_url": "https://urlscan.io/api/v1/result/019d04c2-2553-72d3-9816-9c94bcf77440/",
        "visibility": "public",
        "raw_submit_response": {
            "message": "Submission successful",
            "uuid": "019d04c2-2553-72d3-9816-9c94bcf77440",
            "result": "https://urlscan.io/result/019d04c2-2553-72d3-9816-9c94bcf77440/",
            "api": "https://urlscan.io/api/v1/result/019d04c2-2553-72d3-9816-9c94bcf77440/",
            "visibility": "public",
            "options": [],
            "url": "https://brunobernardino.com/"
        },
        "report": {
            "data": {
                "requests": [
                    {
                        "request": {
                            "requestId": "40AE6D6E6749CE0755B89EC9EC78F29F",
                            "loaderId": "40AE6D6E6749CE0755B89EC9EC78F29F",
                            "documentURL": "https://brunobernardino.com/",
                            "request": {
                                "url": "https://brunobernardino.com/",
                                "method": "GET",
                                "headers": {
                                    "Upgrade-Insecure-Requests": "1",
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "VeryHigh",
                                "referrerPolicy": "strict-origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 4292409.882498,
                            "wallTime": 1773901325.714139,
                            "initiator": {
                                "type": "other"
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Document",
                            "frameId": "EA2901ECC8522F7E898A473992D8DC17",
                            "hasUserGesture": false,
                            "primaryRequest": true
                        },
                        "response": {
                            "encodedDataLength": 1886,
                            "dataLength": 4598,
                            "requestId": "40AE6D6E6749CE0755B89EC9EC78F29F",
                            "type": "Document",
                            "response": {
                                "url": "https://brunobernardino.com/",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "alt-svc": "h3=\":443\"; ma=2592000",
                                    "content-encoding": "gzip",
                                    "content-length": "1722",
                                    "content-type": "text/html; charset=utf-8",
                                    "date": "Thu, 19 Mar 2026 06:22:05 GMT",
                                    "etag": "\"dgfiwo4jtopp3jq-gzip\"",
                                    "last-modified": "Sun, 15 Feb 2026 12:10:24 GMT",
                                    "server": "Caddy",
                                    "vary": "Accept-Encoding"
                                },
                                "mimeType": "text/html",
                                "charset": "utf-8",
                                "remoteIPAddress": "2a01:4f8:c2c:bdae::1",
                                "remotePort": 443,
                                "encodedDataLength": 1886,
                                "timing": {
                                    "requestTime": 4292409.882999,
                                    "proxyStart": -1,
                                    "proxyEnd": -1,
                                    "dnsStart": 0,
                                    "dnsEnd": 36.958,
                                    "connectStart": 36.994,
                                    "connectEnd": 104.179,
                                    "sslStart": 68.267,
                                    "sslEnd": 104.173,
                                    "workerStart": -1,
                                    "workerReady": -1,
                                    "workerFetchStart": -1,
                                    "workerRespondWithSettled": -1,
                                    "sendStart": 104.283,
                                    "sendEnd": 104.356,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 138.954,
                                    "receiveHeadersEnd": 139.516
                                },
                                "responseTime": 1773901325853.596,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "brunobernardino.com",
                                    "sanList": [
                                        "brunobernardino.com"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1768989903,
                                    "validTo": 1776765902,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Cloudflare 'Nimbus2026'",
                                            "logId": "CB38F715897C84A1445F5BC1DDFBC96EF29A59CD470A690585B0CB14C31458E7",
                                            "timestamp": 1768993414027,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "304502204E70290FB14FE486BDDABE5231EA948704143CCB57962D01798650CE65048CDF022100934C3206694B3D2A781C352C80E2217E5CAF7BBC5FF140607B9D1DDBA0B5B799"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Google 'Xenon2026h1' log",
                                            "logId": "969764BF555897ADF743876837084277E9F03AD5F6A4F3366E46A43F0FCAA9C6",
                                            "timestamp": 1768993414079,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "30440220172D308BA19DA0D5B2C1F7C3C69D1C91E0E5E704ED63211D21BDB427CA231B0002200C6887B3B31D4511EE307B2BE2EBFAE82EF52E4BA3E85842DEFE874543C6F5B2"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                }
                            },
                            "hasExtraInfo": true,
                            "hash": "1325170df2933c0a286277dbe12c81bda7ac2a5a24179e3cf60a116974340a32",
                            "size": 4598,
                            "asn": {
                                "ip": "2a01:4f8:c2c:bdae::1",
                                "asn": "24940",
                                "country": "DE",
                                "description": "HETZNER-AS Hetzner Online GmbH, DE",
                                "name": "HETZNER-AS Hetzner Online GmbH",
                                "route": "::/31"
                            },
                            "geoip": {
                                "country": "DE",
                                "region": "",
                                "timezone": "Europe/Berlin",
                                "city": "",
                                "ll": [
                                    51.2993,
                                    9.491
                                ],
                                "country_name": "Germany",
                                "metro": 0
                            }
                        }
                    },
                    {
                        "request": {
                            "requestId": "1837490.2",
                            "loaderId": "40AE6D6E6749CE0755B89EC9EC78F29F",
                            "documentURL": "https://brunobernardino.com/",
                            "request": {
                                "url": "https://brunobernardino.com/styles.css",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://brunobernardino.com/"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "VeryHigh",
                                "referrerPolicy": "strict-origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 4292410.027039,
                            "wallTime": 1773901325.858713,
                            "initiator": {
                                "type": "parser",
                                "url": "https://brunobernardino.com/",
                                "lineNumber": 14,
                                "columnNumber": 44
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Stylesheet",
                            "frameId": "EA2901ECC8522F7E898A473992D8DC17",
                            "hasUserGesture": false,
                            "renderBlockingBehavior": "Blocking"
                        },
                        "response": {
                            "encodedDataLength": 6364,
                            "dataLength": 41237,
                            "requestId": "1837490.2",
                            "type": "Stylesheet",
                            "response": {
                                "url": "https://brunobernardino.com/styles.css",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "content-encoding": "gzip",
                                    "etag": "\"dgfiwo4jtoppvth-gzip\"",
                                    "alt-svc": "h3=\":443\"; ma=2592000",
                                    "date": "Thu, 19 Mar 2026 06:22:05 GMT",
                                    "content-type": "text/css; charset=utf-8",
                                    "last-modified": "Sun, 15 Feb 2026 12:10:24 GMT",
                                    "server": "Caddy",
                                    "vary": "Accept-Encoding"
                                },
                                "mimeType": "text/css",
                                "charset": "utf-8",
                                "remoteIPAddress": "2a01:4f8:c2c:bdae::1",
                                "remotePort": 443,
                                "encodedDataLength": 4160,
                                "timing": {
                                    "requestTime": 4292410.027508,
                                    "proxyStart": -1,
                                    "proxyEnd": -1,
                                    "dnsStart": -1,
                                    "dnsEnd": -1,
                                    "connectStart": -1,
                                    "connectEnd": -1,
                                    "sslStart": -1,
                                    "sslEnd": -1,
                                    "workerStart": -1,
                                    "workerReady": -1,
                                    "workerFetchStart": -1,
                                    "workerRespondWithSettled": -1,
                                    "sendStart": 0.527,
                                    "sendEnd": 1.404,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 37.299,
                                    "receiveHeadersEnd": 37.717
                                },
                                "responseTime": 1773901325896.448,
                                "protocol": "h2",
                                "alternateProtocolUsage": "mainJobWonRace",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "brunobernardino.com",
                                    "sanList": [
                                        "brunobernardino.com"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1768989903,
                                    "validTo": 1776765902,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Cloudflare 'Nimbus2026'",
                                            "logId": "CB38F715897C84A1445F5BC1DDFBC96EF29A59CD470A690585B0CB14C31458E7",
                                            "timestamp": 1768993414027,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "304502204E70290FB14FE486BDDABE5231EA948704143CCB57962D01798650CE65048CDF022100934C3206694B3D2A781C352C80E2217E5CAF7BBC5FF140607B9D1DDBA0B5B799"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Google 'Xenon2026h1' log",
                                            "logId": "969764BF555897ADF743876837084277E9F03AD5F6A4F3366E46A43F0FCAA9C6",
                                            "timestamp": 1768993414079,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "30440220172D308BA19DA0D5B2C1F7C3C69D1C91E0E5E704ED63211D21BDB427CA231B0002200C6887B3B31D4511EE307B2BE2EBFAE82EF52E4BA3E85842DEFE874543C6F5B2"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                }
                            },
                            "hasExtraInfo": true,
                            "hash": "bcd39ef02fbf3d18be97f0b0b848f2e213709cb101c45cf13368612a26c37149",
                            "size": 41237,
                            "asn": {
                                "ip": "2a01:4f8:c2c:bdae::1",
                                "asn": "24940",
                                "country": "DE",
                                "description": "HETZNER-AS Hetzner Online GmbH, DE",
                                "name": "HETZNER-AS Hetzner Online GmbH",
                                "route": "::/31"
                            },
                            "geoip": {
                                "country": "DE",
                                "region": "",
                                "timezone": "Europe/Berlin",
                                "city": "",
                                "ll": [
                                    51.2993,
                                    9.491
                                ],
                                "country_name": "Germany",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://brunobernardino.com/",
                            "host": "brunobernardino.com",
                            "type": "parser"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1837490.3",
                            "loaderId": "40AE6D6E6749CE0755B89EC9EC78F29F",
                            "documentURL": "https://brunobernardino.com/",
                            "request": {
                                "url": "https://brunobernardino.com/favicon.svg",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://brunobernardino.com/"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "strict-origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 4292410.027231,
                            "wallTime": 1773901325.858877,
                            "initiator": {
                                "type": "parser",
                                "url": "https://brunobernardino.com/",
                                "lineNumber": 22,
                                "columnNumber": 115
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Image",
                            "frameId": "EA2901ECC8522F7E898A473992D8DC17",
                            "hasUserGesture": false
                        },
                        "response": {
                            "encodedDataLength": 893,
                            "dataLength": 1950,
                            "requestId": "1837490.3",
                            "type": "Image",
                            "response": {
                                "url": "https://brunobernardino.com/favicon.svg",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "content-encoding": "gzip",
                                    "etag": "\"dc2spi4zetl91i6-gzip\"",
                                    "alt-svc": "h3=\":443\"; ma=2592000",
                                    "content-length": "808",
                                    "date": "Thu, 19 Mar 2026 06:22:05 GMT",
                                    "content-type": "image/svg+xml",
                                    "last-modified": "Fri, 15 Aug 2025 06:42:40 GMT",
                                    "server": "Caddy",
                                    "vary": "Accept-Encoding"
                                },
                                "mimeType": "image/svg+xml",
                                "charset": "",
                                "remoteIPAddress": "2a01:4f8:c2c:bdae::1",
                                "remotePort": 443,
                                "encodedDataLength": 893,
                                "timing": {
                                    "requestTime": 4292410.028227,
                                    "proxyStart": -1,
                                    "proxyEnd": -1,
                                    "dnsStart": -1,
                                    "dnsEnd": -1,
                                    "connectStart": -1,
                                    "connectEnd": -1,
                                    "sslStart": -1,
                                    "sslEnd": -1,
                                    "workerStart": -1,
                                    "workerReady": -1,
                                    "workerFetchStart": -1,
                                    "workerRespondWithSettled": -1,
                                    "sendStart": 0.58,
                                    "sendEnd": 0.736,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 35.834,
                                    "receiveHeadersEnd": 36.625
                                },
                                "responseTime": 1773901325895.71,
                                "protocol": "h2",
                                "alternateProtocolUsage": "mainJobWonRace",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "brunobernardino.com",
                                    "sanList": [
                                        "brunobernardino.com"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1768989903,
                                    "validTo": 1776765902,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Cloudflare 'Nimbus2026'",
                                            "logId": "CB38F715897C84A1445F5BC1DDFBC96EF29A59CD470A690585B0CB14C31458E7",
                                            "timestamp": 1768993414027,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "304502204E70290FB14FE486BDDABE5231EA948704143CCB57962D01798650CE65048CDF022100934C3206694B3D2A781C352C80E2217E5CAF7BBC5FF140607B9D1DDBA0B5B799"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Google 'Xenon2026h1' log",
                                            "logId": "969764BF555897ADF743876837084277E9F03AD5F6A4F3366E46A43F0FCAA9C6",
                                            "timestamp": 1768993414079,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "30440220172D308BA19DA0D5B2C1F7C3C69D1C91E0E5E704ED63211D21BDB427CA231B0002200C6887B3B31D4511EE307B2BE2EBFAE82EF52E4BA3E85842DEFE874543C6F5B2"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                }
                            },
                            "hasExtraInfo": true,
                            "hash": "4fc7ecc6e7b9a373e5a62cccad4205414ab83f7a160877fad4d2289e35c29bd5",
                            "size": 2600,
                            "asn": {
                                "ip": "2a01:4f8:c2c:bdae::1",
                                "asn": "24940",
                                "country": "DE",
                                "description": "HETZNER-AS Hetzner Online GmbH, DE",
                                "name": "HETZNER-AS Hetzner Online GmbH",
                                "route": "::/31"
                            },
                            "geoip": {
                                "country": "DE",
                                "region": "",
                                "timezone": "Europe/Berlin",
                                "city": "",
                                "ll": [
                                    51.2993,
                                    9.491
                                ],
                                "country_name": "Germany",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://brunobernardino.com/",
                            "host": "brunobernardino.com",
                            "type": "parser"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1837490.4",
                            "loaderId": "40AE6D6E6749CE0755B89EC9EC78F29F",
                            "documentURL": "https://brunobernardino.com/",
                            "request": {
                                "url": "https://brunobernardino.com/mail.svg",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://brunobernardino.com/"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "Low",
                                "referrerPolicy": "strict-origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 4292410.027269,
                            "wallTime": 1773901325.858917,
                            "initiator": {
                                "type": "parser",
                                "url": "https://brunobernardino.com/",
                                "lineNumber": 37,
                                "columnNumber": 95
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Image",
                            "frameId": "EA2901ECC8522F7E898A473992D8DC17",
                            "hasUserGesture": false
                        },
                        "response": {
                            "encodedDataLength": 554,
                            "dataLength": 480,
                            "requestId": "1837490.4",
                            "type": "Image",
                            "response": {
                                "url": "https://brunobernardino.com/mail.svg",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "etag": "\"dfyola6hu7mndc\"",
                                    "accept-ranges": "bytes",
                                    "alt-svc": "h3=\":443\"; ma=2592000",
                                    "content-length": "480",
                                    "date": "Thu, 19 Mar 2026 06:22:05 GMT",
                                    "content-type": "image/svg+xml",
                                    "last-modified": "Mon, 26 Jan 2026 17:02:19 GMT",
                                    "server": "Caddy",
                                    "vary": "Accept-Encoding"
                                },
                                "mimeType": "image/svg+xml",
                                "charset": "",
                                "remoteIPAddress": "2a01:4f8:c2c:bdae::1",
                                "remotePort": 443,
                                "encodedDataLength": 65,
                                "timing": {
                                    "requestTime": 4292410.038551,
                                    "proxyStart": -1,
                                    "proxyEnd": -1,
                                    "dnsStart": -1,
                                    "dnsEnd": -1,
                                    "connectStart": -1,
                                    "connectEnd": -1,
                                    "sslStart": -1,
                                    "sslEnd": -1,
                                    "workerStart": -1,
                                    "workerReady": -1,
                                    "workerFetchStart": -1,
                                    "workerRespondWithSettled": -1,
                                    "sendStart": 0.192,
                                    "sendEnd": 0.267,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 32.124,
                                    "receiveHeadersEnd": 33.276
                                },
                                "responseTime": 1773901325902.327,
                                "protocol": "h2",
                                "alternateProtocolUsage": "mainJobWonRace",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "brunobernardino.com",
                                    "sanList": [
                                        "brunobernardino.com"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1768989903,
                                    "validTo": 1776765902,
                                    "signedCertificateTimestampList": [
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Cloudflare 'Nimbus2026'",
                                            "logId": "CB38F715897C84A1445F5BC1DDFBC96EF29A59CD470A690585B0CB14C31458E7",
                                            "timestamp": 1768993414027,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "304502204E70290FB14FE486BDDABE5231EA948704143CCB57962D01798650CE65048CDF022100934C3206694B3D2A781C352C80E2217E5CAF7BBC5FF140607B9D1DDBA0B5B799"
                                        },
                                        {
                                            "status": "Verified",
                                            "origin": "Embedded in certificate",
                                            "logDescription": "Google 'Xenon2026h1' log",
                                            "logId": "969764BF555897ADF743876837084277E9F03AD5F6A4F3366E46A43F0FCAA9C6",
                                            "timestamp": 1768993414079,
                                            "hashAlgorithm": "SHA-256",
                                            "signatureAlgorithm": "ECDSA",
                                            "signatureData": "30440220172D308BA19DA0D5B2C1F7C3C69D1C91E0E5E704ED63211D21BDB427CA231B0002200C6887B3B31D4511EE307B2BE2EBFAE82EF52E4BA3E85842DEFE874543C6F5B2"
                                        }
                                    ],
                                    "certificateTransparencyCompliance": "compliant",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                }
                            },
                            "hasExtraInfo": true,
                            "hash": "8c9bc97125e657a09deec016d16936052f2bfab3a97f1a96aa2d7ab48a7233f7",
                            "size": 640,
                            "asn": {
                                "ip": "2a01:4f8:c2c:bdae::1",
                                "asn": "24940",
                                "country": "DE",
                                "description": "HETZNER-AS Hetzner Online GmbH, DE",
                                "name": "HETZNER-AS Hetzner Online GmbH",
                                "route": "::/31"
                            },
                            "geoip": {
                                "country": "DE",
                                "region": "",
                                "timezone": "Europe/Berlin",
                                "city": "",
                                "ll": [
                                    51.2993,
                                    9.491
                                ],
                                "country_name": "Germany",
                                "metro": 0
                            }
                        },
                        "initiatorInfo": {
                            "url": "https://brunobernardino.com/",
                            "host": "brunobernardino.com",
                            "type": "parser"
                        }
                    },
                    {
                        "request": {
                            "requestId": "1837490.8",
                            "loaderId": "40AE6D6E6749CE0755B89EC9EC78F29F",
                            "documentURL": "https://brunobernardino.com/",
                            "request": {
                                "url": "https://brunobernardino.com/favicon.svg",
                                "method": "GET",
                                "headers": {
                                    "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",
                                    "Referer": "https://brunobernardino.com/"
                                },
                                "mixedContentType": "none",
                                "initialPriority": "High",
                                "referrerPolicy": "strict-origin-when-cross-origin",
                                "isSameSite": true
                            },
                            "timestamp": 4292410.096863,
                            "wallTime": 1773901325.928521,
                            "initiator": {
                                "type": "other"
                            },
                            "redirectHasExtraInfo": false,
                            "type": "Other",
                            "frameId": "EA2901ECC8522F7E898A473992D8DC17",
                            "hasUserGesture": false
                        },
                        "response": {
                            "encodedDataLength": 0,
                            "dataLength": 1950,
                            "requestId": "1837490.8",
                            "type": "Other",
                            "response": {
                                "url": "https://brunobernardino.com/favicon.svg",
                                "status": 200,
                                "statusText": "",
                                "headers": {
                                    "content-encoding": "gzip",
                                    "etag": "\"dc2spi4zetl91i6-gzip\"",
                                    "alt-svc": "h3=\":443\"; ma=2592000",
                                    "content-length": "808",
                                    "date": "Thu, 19 Mar 2026 06:22:05 GMT",
                                    "content-type": "image/svg+xml",
                                    "last-modified": "Fri, 15 Aug 2025 06:42:40 GMT",
                                    "server": "Caddy",
                                    "vary": "Accept-Encoding"
                                },
                                "mimeType": "image/svg+xml",
                                "charset": "",
                                "remoteIPAddress": "2a01:4f8:c2c:bdae::1",
                                "remotePort": 443,
                                "encodedDataLength": 0,
                                "timing": {
                                    "requestTime": 4292410.097153,
                                    "proxyStart": -1,
                                    "proxyEnd": -1,
                                    "dnsStart": -1,
                                    "dnsEnd": -1,
                                    "connectStart": -1,
                                    "connectEnd": -1,
                                    "sslStart": -1,
                                    "sslEnd": -1,
                                    "workerStart": -1,
                                    "workerReady": -1,
                                    "workerFetchStart": -1,
                                    "workerRespondWithSettled": -1,
                                    "sendStart": 0.061,
                                    "sendEnd": 0.061,
                                    "pushStart": 0,
                                    "pushEnd": 0,
                                    "receiveHeadersStart": 0.076,
                                    "receiveHeadersEnd": 0.111
                                },
                                "responseTime": 1773901325895.71,
                                "protocol": "h2",
                                "alternateProtocolUsage": "unspecifiedReason",
                                "securityState": "secure",
                                "securityDetails": {
                                    "protocol": "TLS 1.3",
                                    "keyExchange": "",
                                    "keyExchangeGroup": "X25519MLKEM768",
                                    "cipher": "AES_128_GCM",
                                    "certificateId": 0,
                                    "subjectName": "brunobernardino.com",
                                    "sanList": [
                                        "brunobernardino.com"
                                    ],
                                    "issuer": "E8",
                                    "validFrom": 1768989903,
                                    "validTo": 1776765902,
                                    "signedCertificateTimestampList": [],
                                    "certificateTransparencyCompliance": "unknown",
                                    "serverSignatureAlgorithm": 1027,
                                    "encryptedClientHello": false
                                }
                            },
                            "hasExtraInfo": false,
                            "hash": "4fc7ecc6e7b9a373e5a62cccad4205414ab83f7a160877fad4d2289e35c29bd5",
                            "size": 1950,
                            "asn": {
                                "ip": "2a01:4f8:c2c:bdae::1",
                                "asn": "24940",
                                "country": "DE",
                                "description": "HETZNER-AS Hetzner Online GmbH, DE",
                                "name": "HETZNER-AS Hetzner Online GmbH",
                                "route": "::/31"
                            },
                            "geoip": {
                                "country": "DE",
                                "region": "",
                                "timezone": "Europe/Berlin",
                                "city": "",
                                "ll": [
                                    51.2993,
                                    9.491
                                ],
                                "country_name": "Germany",
                                "metro": 0
                            }
                        }
                    }
                ],
                "cookies": [],
                "console": [],
                "links": [
                    {
                        "href": "https://uruky.com/",
                        "text": "Uruky",
                        "frameId": "EA2901ECC8522F7E898A473992D8DC17"
                    },
                    {
                        "href": "https://bewcloud.com/",
                        "text": "bewCloud",
                        "frameId": "EA2901ECC8522F7E898A473992D8DC17"
                    },
                    {
                        "href": "https://sunsama.com/",
                        "text": "Sunsama",
                        "frameId": "EA2901ECC8522F7E898A473992D8DC17"
                    },
                    {
                        "href": "https://zapier.com/",
                        "text": "Zapier",
                        "frameId": "EA2901ECC8522F7E898A473992D8DC17"
                    },
                    {
                        "href": "https://github.com/BrunoBernardino",
                        "text": "GitHub",
                        "frameId": "EA2901ECC8522F7E898A473992D8DC17"
                    },
                    {
                        "href": "https://news.onbrn.com/",
                        "text": "News",
                        "frameId": "EA2901ECC8522F7E898A473992D8DC17"
                    },
                    {
                        "href": "https://ministories.net/",
                        "text": "Stories",
                        "frameId": "EA2901ECC8522F7E898A473992D8DC17"
                    },
                    {
                        "href": "https://snozmusic.com/",
                        "text": "Music",
                        "frameId": "EA2901ECC8522F7E898A473992D8DC17"
                    }
                ],
                "timing": {
                    "beginNavigation": "2026-03-19T06:22:05.711Z",
                    "frameStartedLoading": "2026-03-19T06:22:05.713Z",
                    "frameNavigated": "2026-03-19T06:22:05.857Z",
                    "domContentEventFired": "2026-03-19T06:22:05.870Z",
                    "frameStoppedLoading": "2026-03-19T06:22:05.929Z"
                },
                "globals": [],
                "storages": []
            },
            "lists": {
                "ips": [
                    "2a01:4f8:c2c:bdae::1"
                ],
                "countries": [
                    "DE"
                ],
                "asns": [
                    "24940"
                ],
                "domains": [
                    "brunobernardino.com"
                ],
                "servers": [
                    "Caddy"
                ],
                "urls": [
                    "https://brunobernardino.com/",
                    "https://brunobernardino.com/styles.css",
                    "https://brunobernardino.com/favicon.svg",
                    "https://brunobernardino.com/mail.svg"
                ],
                "linkDomains": [
                    "uruky.com",
                    "bewcloud.com",
                    "sunsama.com",
                    "zapier.com",
                    "github.com",
                    "news.onbrn.com",
                    "ministories.net",
                    "snozmusic.com"
                ],
                "certificates": [
                    {
                        "subjectName": "brunobernardino.com",
                        "issuer": "E8",
                        "validFrom": 1768989903,
                        "validTo": 1776765902
                    }
                ],
                "hashes": [
                    "1325170df2933c0a286277dbe12c81bda7ac2a5a24179e3cf60a116974340a32",
                    "bcd39ef02fbf3d18be97f0b0b848f2e213709cb101c45cf13368612a26c37149",
                    "4fc7ecc6e7b9a373e5a62cccad4205414ab83f7a160877fad4d2289e35c29bd5",
                    "8c9bc97125e657a09deec016d16936052f2bfab3a97f1a96aa2d7ab48a7233f7"
                ]
            },
            "meta": {
                "processors": {
                    "umbrella": {
                        "data": []
                    },
                    "geoip": {
                        "data": [
                            {
                                "ip": "2a01:4f8:c2c:bdae::1",
                                "geoip": {
                                    "country": "DE",
                                    "region": "",
                                    "timezone": "Europe/Berlin",
                                    "city": "",
                                    "ll": [
                                        51.2993,
                                        9.491
                                    ],
                                    "country_name": "Germany",
                                    "metro": 0
                                }
                            }
                        ]
                    },
                    "asn": {
                        "data": [
                            {
                                "ip": "2a01:4f8:c2c:bdae::1",
                                "asn": "24940",
                                "country": "DE",
                                "description": "HETZNER-AS Hetzner Online GmbH, DE",
                                "name": "HETZNER-AS Hetzner Online GmbH",
                                "route": "::/31"
                            }
                        ]
                    },
                    "rdns": {
                        "data": []
                    },
                    "wappa": {
                        "data": []
                    }
                }
            },
            "page": {
                "asn": "AS24940",
                "asnname": "HETZNER-AS Hetzner Online GmbH, DE",
                "city": "",
                "country": "DE",
                "domain": "brunobernardino.com",
                "ip": "2a01:4f8:c2c:bdae::1",
                "server": "Caddy",
                "url": "https://brunobernardino.com/",
                "apexDomainAgeDays": 3328,
                "language": "en",
                "mimeType": "text/html",
                "title": "Bruno Bernardino - Automation and Solutions Engineer",
                "tlsValidDays": 89,
                "tlsAgeDays": 56,
                "domainAgeDays": 3328,
                "tlsValidFrom": "2026-01-21T10:05:03.000Z",
                "apexDomain": "brunobernardino.com",
                "tlsIssuer": "E8",
                "status": "200"
            },
            "scanner": {
                "country": "at"
            },
            "stats": {
                "IPv6Percentage": 100,
                "adBlocked": 0,
                "domainStats": [
                    {
                        "count": 5,
                        "ips": [
                            "2a01:4f8:c2c:bdae::1"
                        ],
                        "domain": "brunobernardino.com",
                        "size": 50215,
                        "encodedSize": 9697,
                        "countries": [
                            "DE"
                        ],
                        "index": 0,
                        "initiators": [
                            "brunobernardino.com"
                        ],
                        "redirects": 0
                    }
                ],
                "ipStats": [
                    {
                        "requests": 5,
                        "domains": [
                            "brunobernardino.com"
                        ],
                        "ip": "2a01:4f8:c2c:bdae::1",
                        "asn": {
                            "ip": "2a01:4f8:c2c:bdae::1",
                            "asn": "24940",
                            "country": "DE",
                            "description": "HETZNER-AS Hetzner Online GmbH, DE",
                            "name": "HETZNER-AS Hetzner Online GmbH",
                            "route": "::/31"
                        },
                        "dns": [],
                        "geoip": {
                            "country": "DE",
                            "region": "",
                            "timezone": "Europe/Berlin",
                            "city": "",
                            "ll": [
                                51.2993,
                                9.491
                            ],
                            "country_name": "Germany",
                            "metro": 0
                        },
                        "size": 50215,
                        "encodedSize": 9697,
                        "countries": [
                            "DE"
                        ],
                        "index": 0,
                        "ipv6": true,
                        "redirects": 0,
                        "count": null
                    }
                ],
                "malicious": 0,
                "protocolStats": [
                    {
                        "count": 5,
                        "size": 50215,
                        "encodedSize": 9697,
                        "ips": [
                            "2a01:4f8:c2c:bdae::1"
                        ],
                        "countries": [
                            "DE"
                        ],
                        "securityState": [],
                        "protocol": "h2"
                    }
                ],
                "regDomainStats": [
                    {
                        "count": 5,
                        "ips": [
                            "2a01:4f8:c2c:bdae::1"
                        ],
                        "regDomain": "brunobernardino.com",
                        "size": 50215,
                        "encodedSize": 9697,
                        "countries": [],
                        "index": 0,
                        "subDomains": [
                            {
                                "domain": "",
                                "country": "DE"
                            }
                        ],
                        "redirects": 0
                    }
                ],
                "resourceStats": [
                    {
                        "count": 2,
                        "size": 2430,
                        "encodedSize": 1447,
                        "latency": 0,
                        "countries": [
                            "DE"
                        ],
                        "ips": [
                            "2a01:4f8:c2c:bdae::1"
                        ],
                        "type": "Image",
                        "compression": "1.7",
                        "percentage": 40
                    },
                    {
                        "count": 1,
                        "size": 1950,
                        "encodedSize": 0,
                        "latency": 0,
                        "countries": [
                            "DE"
                        ],
                        "ips": [
                            "2a01:4f8:c2c:bdae::1"
                        ],
                        "type": "Other",
                        "compression": "Infinity",
                        "percentage": 20
                    },
                    {
                        "count": 1,
                        "size": 41237,
                        "encodedSize": 6364,
                        "latency": 0,
                        "countries": [
                            "DE"
                        ],
                        "ips": [
                            "2a01:4f8:c2c:bdae::1"
                        ],
                        "type": "Stylesheet",
                        "compression": "6.5",
                        "percentage": 20
                    },
                    {
                        "count": 1,
                        "size": 4598,
                        "encodedSize": 1886,
                        "latency": 0,
                        "countries": [
                            "DE"
                        ],
                        "ips": [
                            "2a01:4f8:c2c:bdae::1"
                        ],
                        "type": "Document",
                        "compression": "2.4",
                        "percentage": 20
                    }
                ],
                "securePercentage": 100,
                "secureRequests": 5,
                "serverStats": [
                    {
                        "count": 5,
                        "size": 50215,
                        "encodedSize": 9697,
                        "ips": [
                            "2a01:4f8:c2c:bdae::1"
                        ],
                        "countries": [
                            "DE"
                        ],
                        "server": "Caddy"
                    }
                ],
                "tlsStats": [
                    {
                        "count": 5,
                        "size": 50215,
                        "encodedSize": 9697,
                        "ips": [
                            "2a01:4f8:c2c:bdae::1"
                        ],
                        "countries": [
                            "DE"
                        ],
                        "protocols": {
                            "TLS 1.3 /  / AES_128_GCM": 5
                        },
                        "securityState": "secure"
                    }
                ],
                "totalLinks": 8,
                "uniqCountries": 1
            },
            "submitter": {
                "country": "GB"
            },
            "task": {
                "method": "api",
                "source": "fb1d0777",
                "tags": [
                    "website-rank",
                    "brunobernardino.com"
                ],
                "time": "2026-03-19T06:22:12.588Z",
                "url": "https://brunobernardino.com/",
                "uuid": "019d04c2-2553-72d3-9816-9c94bcf77440",
                "visibility": "public",
                "reportURL": "https://urlscan.io/result/019d04c2-2553-72d3-9816-9c94bcf77440/",
                "screenshotURL": "https://urlscan.io/screenshots/019d04c2-2553-72d3-9816-9c94bcf77440.png",
                "domURL": "https://urlscan.io/dom/019d04c2-2553-72d3-9816-9c94bcf77440/",
                "domain": "brunobernardino.com",
                "apexDomain": "brunobernardino.com"
            },
            "verdicts": {
                "overall": {
                    "score": 0,
                    "categories": [],
                    "brands": [],
                    "tags": [],
                    "malicious": false,
                    "hasVerdicts": true
                },
                "urlscan": {
                    "score": 0,
                    "categories": [],
                    "brands": [],
                    "tags": [],
                    "malicious": false,
                    "hasVerdicts": false
                },
                "engines": {
                    "score": -12,
                    "malicious": false,
                    "categories": [],
                    "enginesTotal": 0,
                    "maliciousTotal": 0,
                    "benignTotal": 0,
                    "maliciousVerdicts": [],
                    "benignVerdicts": [],
                    "hasVerdicts": true,
                    "tags": [
                        "urlscan-ml",
                        "urlscan-ml-60c5e22"
                    ]
                },
                "community": {
                    "score": 0,
                    "categories": [],
                    "brands": [],
                    "votesTotal": 0,
                    "votesMalicious": 0,
                    "votesBenign": 0,
                    "malicious": false,
                    "hasVerdicts": false
                }
            }
        },
        "report_summary": {
            "page_url": "https://brunobernardino.com/",
            "page_domain": "brunobernardino.com",
            "ip": "2a01:4f8:c2c:bdae::1",
            "country": "DE",
            "server": "Caddy",
            "asn": "AS24940",
            "status_code": 200,
            "screenshot_url": "https://urlscan.io/screenshots/019d04c2-2553-72d3-9816-9c94bcf77440.png",
            "report_url": "https://urlscan.io/result/019d04c2-2553-72d3-9816-9c94bcf77440/",
            "requests": 0,
            "unique_countries": 1,
            "domains": 0,
            "malicious": false,
            "classification": "",
            "verdict_text": "No clear malicious classification",
            "brands": [],
            "labels": [],
            "lists": {
                "ips": [
                    "2a01:4f8:c2c:bdae::1"
                ],
                "countries": [
                    "DE"
                ],
                "asns": [
                    "24940"
                ],
                "domains": [
                    "brunobernardino.com"
                ],
                "servers": [
                    "Caddy"
                ],
                "urls": [
                    "https://brunobernardino.com/",
                    "https://brunobernardino.com/styles.css",
                    "https://brunobernardino.com/favicon.svg",
                    "https://brunobernardino.com/mail.svg"
                ],
                "linkDomains": [
                    "uruky.com",
                    "bewcloud.com",
                    "sunsama.com",
                    "zapier.com",
                    "github.com",
                    "news.onbrn.com",
                    "ministories.net",
                    "snozmusic.com"
                ],
                "certificates": [
                    {
                        "subjectName": "brunobernardino.com",
                        "issuer": "E8",
                        "validFrom": 1768989903,
                        "validTo": 1776765902
                    }
                ],
                "hashes": [
                    "1325170df2933c0a286277dbe12c81bda7ac2a5a24179e3cf60a116974340a32",
                    "bcd39ef02fbf3d18be97f0b0b848f2e213709cb101c45cf13368612a26c37149",
                    "4fc7ecc6e7b9a373e5a62cccad4205414ab83f7a160877fad4d2289e35c29bd5",
                    "8c9bc97125e657a09deec016d16936052f2bfab3a97f1a96aa2d7ab48a7233f7"
                ]
            }
        },
        "completed_at": "2026-03-23T15:37:13+00:00",
        "is_fresh": false,
        "can_retry": true,
        "poll_after_seconds": 20
    }
}