{
    "ok": true,
    "domain": "balsamiq.com",
    "generated_at": "2026-08-10T23:21:28-05:00",
    "cache": {
        "hit": true,
        "ttl": 0
    },
    "score": {
        "total": 81,
        "label": "Good",
        "categories": {
            "dns": 65,
            "mail": 90,
            "security": 81,
            "network": 65,
            "availability": 100
        },
        "category_weights": {
            "dns": 25,
            "mail": 20,
            "security": 25,
            "network": 10,
            "availability": 20
        },
        "items": [
            {
                "category": "dns",
                "title": "IPv4 (A)",
                "max_points": 30,
                "earned_points": 30,
                "lost_points": 0,
                "detail": "4 IPv4 address(es) detected."
            },
            {
                "category": "dns",
                "title": "IPv6 (AAAA)",
                "max_points": 10,
                "earned_points": 0,
                "lost_points": 10,
                "detail": "0 IPv6 address(es) detected."
            },
            {
                "category": "dns",
                "title": "Name server redundancy",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0,
                "detail": "4 NS record(s); 2 or more required."
            },
            {
                "category": "dns",
                "title": "SOA record",
                "max_points": 10,
                "earned_points": 10,
                "lost_points": 0,
                "detail": "Authoritative zone record."
            },
            {
                "category": "dns",
                "title": "DNSSEC chain",
                "max_points": 15,
                "earned_points": 0,
                "lost_points": 15,
                "detail": "Both DS and DNSKEY are required."
            },
            {
                "category": "dns",
                "title": "CAA policy",
                "max_points": 5,
                "earned_points": 5,
                "lost_points": 0,
                "detail": "Certificate authority restriction."
            },
            {
                "category": "dns",
                "title": "DNS propagation",
                "max_points": 10,
                "earned_points": 0,
                "lost_points": 10,
                "detail": "Agreement between public resolvers."
            },
            {
                "category": "mail",
                "title": "MX records",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0,
                "detail": "7 MX record(s)."
            },
            {
                "category": "mail",
                "title": "SPF",
                "max_points": 25,
                "earned_points": 25,
                "lost_points": 0,
                "detail": "SPF policy published."
            },
            {
                "category": "mail",
                "title": "DMARC",
                "max_points": 25,
                "earned_points": 25,
                "lost_points": 0,
                "detail": "DMARC policy published."
            },
            {
                "category": "mail",
                "title": "DKIM",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0,
                "detail": "A DKIM selector was verified."
            },
            {
                "category": "mail",
                "title": "MTA-STS",
                "max_points": 5,
                "earned_points": 0,
                "lost_points": 5,
                "detail": "Mail transport policy."
            },
            {
                "category": "mail",
                "title": "TLS-RPT",
                "max_points": 5,
                "earned_points": 0,
                "lost_points": 5,
                "detail": "TLS reporting policy."
            },
            {
                "category": "security",
                "title": "Valid TLS certificate",
                "max_points": 55,
                "earned_points": 55,
                "lost_points": 0,
                "detail": "50 day(s) remaining."
            },
            {
                "category": "security",
                "title": "Certificate lifetime",
                "max_points": 10,
                "earned_points": 10,
                "lost_points": 0,
                "detail": "Full points require at least 30 days remaining."
            },
            {
                "category": "security",
                "title": "HTTP security headers",
                "max_points": 35,
                "earned_points": 16,
                "lost_points": 19,
                "detail": "4 of 9 evaluated headers detected."
            },
            {
                "category": "network",
                "title": "PTR reverse DNS",
                "max_points": 30,
                "earned_points": 30,
                "lost_points": 0,
                "detail": "PTR: server-13-227-87-5.ord58.r.cloudfront.net"
            },
            {
                "category": "network",
                "title": "IPv4 diversity",
                "max_points": 35,
                "earned_points": 35,
                "lost_points": 0,
                "detail": "Two or more IPv4 addresses receive full points."
            },
            {
                "category": "network",
                "title": "IPv6 connectivity",
                "max_points": 35,
                "earned_points": 0,
                "lost_points": 35,
                "detail": "AAAA availability."
            },
            {
                "category": "availability",
                "title": "DNS resolution",
                "max_points": 40,
                "earned_points": 40,
                "lost_points": 0,
                "detail": "At least one address family must resolve."
            },
            {
                "category": "availability",
                "title": "HTTP response",
                "max_points": 40,
                "earned_points": 40,
                "lost_points": 0,
                "detail": "HTTP/2 200 "
            },
            {
                "category": "availability",
                "title": "HTTPS final URL",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0,
                "detail": "Final URL uses HTTPS."
            }
        ],
        "methodology": "Each category is normalized to 100. The total is the weighted sum: DNS 25%, Email 20%, Security 25%, Network 10%, Availability 20%.",
        "diagnostics": [
            {
                "level": "ok",
                "title": "IPv4 (A)",
                "detail": "4 IPv4 address(es) detected.",
                "category": "dns",
                "max_points": 30,
                "earned_points": 30,
                "lost_points": 0
            },
            {
                "level": "error",
                "title": "IPv6 (AAAA)",
                "detail": "0 IPv6 address(es) detected.",
                "category": "dns",
                "max_points": 10,
                "earned_points": 0,
                "lost_points": 10
            },
            {
                "level": "ok",
                "title": "Name server redundancy",
                "detail": "4 NS record(s); 2 or more required.",
                "category": "dns",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "SOA record",
                "detail": "Authoritative zone record.",
                "category": "dns",
                "max_points": 10,
                "earned_points": 10,
                "lost_points": 0
            },
            {
                "level": "error",
                "title": "DNSSEC chain",
                "detail": "Both DS and DNSKEY are required.",
                "category": "dns",
                "max_points": 15,
                "earned_points": 0,
                "lost_points": 15
            },
            {
                "level": "ok",
                "title": "CAA policy",
                "detail": "Certificate authority restriction.",
                "category": "dns",
                "max_points": 5,
                "earned_points": 5,
                "lost_points": 0
            },
            {
                "level": "error",
                "title": "DNS propagation",
                "detail": "Agreement between public resolvers.",
                "category": "dns",
                "max_points": 10,
                "earned_points": 0,
                "lost_points": 10
            },
            {
                "level": "ok",
                "title": "MX records",
                "detail": "7 MX record(s).",
                "category": "mail",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "SPF",
                "detail": "SPF policy published.",
                "category": "mail",
                "max_points": 25,
                "earned_points": 25,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "DMARC",
                "detail": "DMARC policy published.",
                "category": "mail",
                "max_points": 25,
                "earned_points": 25,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "DKIM",
                "detail": "A DKIM selector was verified.",
                "category": "mail",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0
            },
            {
                "level": "error",
                "title": "MTA-STS",
                "detail": "Mail transport policy.",
                "category": "mail",
                "max_points": 5,
                "earned_points": 0,
                "lost_points": 5
            },
            {
                "level": "error",
                "title": "TLS-RPT",
                "detail": "TLS reporting policy.",
                "category": "mail",
                "max_points": 5,
                "earned_points": 0,
                "lost_points": 5
            },
            {
                "level": "ok",
                "title": "Valid TLS certificate",
                "detail": "50 day(s) remaining.",
                "category": "security",
                "max_points": 55,
                "earned_points": 55,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "Certificate lifetime",
                "detail": "Full points require at least 30 days remaining.",
                "category": "security",
                "max_points": 10,
                "earned_points": 10,
                "lost_points": 0
            },
            {
                "level": "warning",
                "title": "HTTP security headers",
                "detail": "4 of 9 evaluated headers detected.",
                "category": "security",
                "max_points": 35,
                "earned_points": 16,
                "lost_points": 19
            },
            {
                "level": "ok",
                "title": "PTR reverse DNS",
                "detail": "PTR: server-13-227-87-5.ord58.r.cloudfront.net",
                "category": "network",
                "max_points": 30,
                "earned_points": 30,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "IPv4 diversity",
                "detail": "Two or more IPv4 addresses receive full points.",
                "category": "network",
                "max_points": 35,
                "earned_points": 35,
                "lost_points": 0
            },
            {
                "level": "error",
                "title": "IPv6 connectivity",
                "detail": "AAAA availability.",
                "category": "network",
                "max_points": 35,
                "earned_points": 0,
                "lost_points": 35
            },
            {
                "level": "ok",
                "title": "DNS resolution",
                "detail": "At least one address family must resolve.",
                "category": "availability",
                "max_points": 40,
                "earned_points": 40,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "HTTP response",
                "detail": "HTTP/2 200 ",
                "category": "availability",
                "max_points": 40,
                "earned_points": 40,
                "lost_points": 0
            },
            {
                "level": "ok",
                "title": "HTTPS final URL",
                "detail": "Final URL uses HTTPS.",
                "category": "availability",
                "max_points": 20,
                "earned_points": 20,
                "lost_points": 0
            }
        ]
    },
    "dns": {
        "records": {
            "A": [
                "13.227.87.5",
                "13.227.87.81",
                "13.227.87.102",
                "13.227.87.92"
            ],
            "AAAA": [],
            "CNAME": [],
            "MX": [
                "20 alt2.aspmx.l.google.com.",
                "30 aspmx4.googlemail.com.",
                "30 aspmx3.googlemail.com.",
                "30 aspmx5.googlemail.com.",
                "30 aspmx2.googlemail.com.",
                "20 alt1.aspmx.l.google.com.",
                "10 aspmx.l.google.com."
            ],
            "TXT": [
                "\"klaviyo-site-verification=SVGqgn\"",
                "\"google-site-verification=wnA88ngoBu0_8CKox2fY7RQDmFVxWlrzqUEQShZ2gJY\"",
                "\"v=spf1 ip4:216.70.64.169 include:_spf.google.com  include:spf.mtasv.net include:spf.discoursehosting.com include:servers.mcsv.net include:spf.mandrillapp.com -all\"",
                "\"atlassian-domain-verification=gzKvh3uC1t71TyhcchgNOkT48hhMM5Wfks9lpD14VQGQbunIgqZ4bdGo9wREsAEY\""
            ],
            "NS": [
                "ns-1861.awsdns-40.co.uk.",
                "ns-506.awsdns-63.com.",
                "ns-737.awsdns-28.net.",
                "ns-1087.awsdns-07.org."
            ],
            "SOA": [
                "ns-1861.awsdns-40.co.uk. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400"
            ],
            "CAA": [
                "0 issue \"letsencrypt.org\"",
                "0 issue \"amazontrust.com\"",
                "0 issuewild \"amazontrust.com\"",
                "0 issuewild \"letsencrypt.org\"",
                "0 issue \"awstrust.com\"",
                "0 issuewild \"comodoca.com\"",
                "0 issuewild \"amazon.com\"",
                "0 issuewild \"amazonaws.com\"",
                "0 issuewild \"awstrust.com\"",
                "0 issue \"digicert.com\"",
                "0 issue \"comodoca.com\"",
                "0 issue \"amazon.com\"",
                "0 issue \"amazonaws.com\"",
                "0 issuewild \"digicert.com\""
            ],
            "DS": [],
            "DNSKEY": [
                "257 3 13 Ylnm9Z6MeYD9Ga/b66RoOylZJStctlSIb6k5D1ucNtrNWkXqa0iVEo9U /cweY52MgtxDZaSCQxnFxvl9Yx+tTQ==",
                "256 3 13 E/Hak53+AHhVr91u+S5HlvD57n12e3btwW0qbZ1OTRlhTPbQ4BQHUm4q VFYGNJWersrWgUVGseknzrpr/uAPTA==",
                "256 3 13 h7d+BJXHnKnOL5YNo/qcgiLZNKUIUo/TcuXVorU5R41f0ly4kkpc2EgQ k6V7NtYBj8jMBrPnSSwztFXzv5yQSg=="
            ],
            "RRSIG": [
                "DNSKEY 13 2 3600 20260811100000 20260810230000 31603 balsamiq.com. 9OHeQg5UovplBhK98jfWZ7pj+m8/8qWhjPK/R8UbsJGMz+LpZPfdb8Xh bfDQN1lJdCzj6vhmkpN0lydIvYpoNQ==",
                "SOA 13 2 900 20260811053618 20260811032118 45770 balsamiq.com. WaMQTsWJEgiIsr2fqEDYpG0XoPhAWW4SerLgm3qdfaiISsJTu9/BD9cW a4yRS6bSH6PEe1o0hv0aD8raLgEuow==",
                "TXT 13 2 3600 20260811062118 20260811032118 45770 balsamiq.com. YqFq8qLqHSx90x+2IAxWbNE0903uuj63nPiWuVZ97xpRlqQqGu82866y qL90EB6wjr15kbTSLDSdGljaJk4kKw==",
                "A 13 2 60 20260811052218 20260811032118 45770 balsamiq.com. 9BoB8chTs9Nb6rPumdrXux5EL27YvvWm4bnW7TTAbtj0PPpFY6hr96TJ Mq3e+WJtPAjFPHmIzHd6ncuFbbBO+Q==",
                "NS 13 2 172800 20260813040828 20260811020828 45770 balsamiq.com. xXAitnUEYC7IXpxQ3ff8rqKByC3+DoAo7VLG1a9/AtwFy5eNDCgcSjqa dzznmNu5x6m2YNrh1b4ZK90V+Hs2/g=="
            ],
            "NSEC": [],
            "NSEC3": [],
            "SRV": [],
            "NAPTR": [],
            "TLSA": [],
            "SSHFP": []
        },
        "ipv4": [
            "13.227.87.5",
            "13.227.87.81",
            "13.227.87.102",
            "13.227.87.92"
        ],
        "ipv6": []
    },
    "mail": {
        "spf": "v=spf1 ip4:216.70.64.169 include:_spf.google.com  include:spf.mtasv.net include:spf.discoursehosting.com include:servers.mcsv.net include:spf.mandrillapp.com -all",
        "dmarc": "v=DMARC1; p=quarantine; pct=100; rua=mailto:re+va9tsd52wpn@dmarc.postmarkapp.com; sp=reject; aspf=r;",
        "dkim_selector": "google",
        "dkim_host": "google._domainkey.balsamiq.com",
        "dkim": "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDBWs4iKJ3zmUdF1bR3W4xOtqjBBLqM8qIbSqR3joHj6SNvxh4YjBJGNchzLqAQ8PZV8HoFRMRCvPgA+wUK710BMgdrJKBTxiq+gMtXhcdGpDlHM0Fs4Hb5bmUDCM78vRXgJsP0g8LoHSjiLKEhlE2UkpE4JwJ+JM9vIo3Jy+JDWQIDAQAB",
        "spf_analysis": {
            "valid": true,
            "lookups": 5,
            "final": "-all",
            "message": "Within the estimated limit"
        },
        "dmarc_analysis": {
            "valid": true,
            "policy": "quarantine"
        },
        "bimi": "v=BIMI1; l=https://balsamiq.com/assets/favicon/bimi-logo.svg",
        "mta_sts": "",
        "tls_rpt": ""
    },
    "advanced": {
        "ptr": "server-13-227-87-5.ord58.r.cloudfront.net",
        "propagation": {
            "consistent": false,
            "results": [
                {
                    "provider": "Google",
                    "server": "8.8.8.8",
                    "result": [
                        "108.157.150.14",
                        "108.157.150.39",
                        "108.157.150.45",
                        "108.157.150.72"
                    ],
                    "time_ms": 77.55
                },
                {
                    "provider": "Cloudflare",
                    "server": "1.1.1.1",
                    "result": [
                        "13.227.87.102",
                        "13.227.87.5",
                        "13.227.87.81",
                        "13.227.87.92"
                    ],
                    "time_ms": 54.59
                },
                {
                    "provider": "Quad9",
                    "server": "9.9.9.9",
                    "result": [
                        "13.227.87.102",
                        "13.227.87.5",
                        "13.227.87.81",
                        "13.227.87.92"
                    ],
                    "time_ms": 77.89
                },
                {
                    "provider": "OpenDNS",
                    "server": "208.67.222.222",
                    "result": [
                        "108.157.150.14",
                        "108.157.150.39",
                        "108.157.150.45",
                        "108.157.150.72"
                    ],
                    "time_ms": 102.67
                },
                {
                    "provider": "AdGuard",
                    "server": "94.140.14.14",
                    "result": [
                        "108.157.150.14",
                        "108.157.150.39",
                        "108.157.150.45",
                        "108.157.150.72"
                    ],
                    "time_ms": 151.75
                }
            ]
        }
    },
    "ssl": {
        "available": true,
        "issuer": "Amazon",
        "subject": "balsamiq.com",
        "valid_from": "2026-03-16T19:00:00-05:00",
        "valid_to": "2026-09-30T18:59:59-05:00",
        "days_remaining": 50,
        "san": [
            "balsamiq.com",
            "*.balsamiq.com"
        ],
        "protocol": "TLSv1.3",
        "cipher": "TLS_AES_128_GCM_SHA256"
    },
    "http": {
        "url": "https://balsamiq.com/",
        "status": "HTTP/2 200 ",
        "http_version": "3",
        "headers": {
            "content-type": "text/html",
            "content-length": "132849",
            "server": "AmazonS3",
            "last-modified": "Fri, 07 Aug 2026 13:28:29 GMT",
            "date": "Tue, 11 Aug 2026 04:21:21 GMT",
            "etag": "\"5d290ea57eda9554cf4b0dbffefbcca8\"",
            "vary": "Accept-Encoding",
            "via": "1.1 6718f6a936d89967e07ddd4e6d2bf424.cloudfront.net (CloudFront)",
            "strict-transport-security": "max-age=31536000",
            "x-frame-options": "sameorigin",
            "x-xss-protection": "1; mode=block",
            "x-content-type-options": "nosniff",
            "x-permitted-cross-domain-policies": "none",
            "content-security-policy": "frame-ancestors 'self'; report-uri https://balsamiq.report-uri.com/r/d/csp/reportOnly; report-to https://balsamiq.report-uri.com/r/d/csp/reportOnly",
            "x-cache": "RefreshHit from cloudfront",
            "x-amz-cf-pop": "ORD58-P16",
            "x-amz-cf-id": "7F-GlJdXSw6MHsP-peAUrgsySmzxtB66Q1YcboWyLfr1OB0vOj9TyA=="
        },
        "security_checks": {
            "strict-transport-security": true,
            "content-security-policy": true,
            "x-content-type-options": true,
            "x-frame-options": true,
            "referrer-policy": false,
            "permissions-policy": false,
            "cross-origin-opener-policy": false,
            "cross-origin-embedder-policy": false,
            "cross-origin-resource-policy": false
        },
        "server": "AmazonS3",
        "powered_by": ""
    },
    "webpage": {
        "url": "https://balsamiq.com/",
        "title": "Balsamiq: Fast, focused wireframing and prototyping tools",
        "description": "Wireframes and prototypes without the friction. Balsamiq is the fast wireframing and prototyping tool for product, tech, and business minds. Sketch, test, refine your UI—fast.",
        "success": true,
        "error": "",
        "status": 200
    },
    "network": {
        "13.227.87.5": {
            "success": false,
            "country": "",
            "region": "",
            "city": "",
            "asn": "",
            "organization": "",
            "isp": ""
        },
        "13.227.87.81": {
            "success": false,
            "country": "",
            "region": "",
            "city": "",
            "asn": "",
            "organization": "",
            "isp": ""
        },
        "13.227.87.102": {
            "success": false,
            "country": "",
            "region": "",
            "city": "",
            "asn": "",
            "organization": "",
            "isp": ""
        },
        "13.227.87.92": {
            "success": false,
            "country": "",
            "region": "",
            "city": "",
            "asn": "",
            "organization": "",
            "isp": ""
        }
    },
    "smtp": {
        "host": "alt2.aspmx.l.google.com",
        "ports": [
            {
                "port": 25,
                "open": false,
                "time_ms": 3.7,
                "banner": "",
                "error": "Network is unreachable"
            },
            {
                "port": 465,
                "open": false,
                "time_ms": 4017.3,
                "banner": "",
                "error": "Connection timed out"
            },
            {
                "port": 587,
                "open": false,
                "time_ms": 4020.7,
                "banner": "",
                "error": "Connection timed out"
            }
        ]
    },
    "visitor": {
        "ip": "216.73.217.62",
        "reverse": "",
        "country": "",
        "country_code": "",
        "region": "",
        "city": "",
        "latitude": null,
        "longitude": null,
        "isp": "",
        "organization": "",
        "asn": "",
        "timezone": "",
        "browser": "Other",
        "os": "Other",
        "language": "",
        "user_agent": "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)",
        "is_bot": true,
        "cloudflare": false
    },
    "analysis_time_ms": 100.26
}