{
    "domain": "example.io",
    "whois": {
        "error": null,
        "domain": "example.io",
        "checks": [
            {
                "key": "whois",
                "label": "WHOIS",
                "status": "neutral",
                "statusLabel": "Veri yok",
                "detail": "Bu alan adı uzantısı için RDAP kaydı yayımlanmıyor",
                "findings": [],
                "data": {
                    "found": false,
                    "reason": "Bu alan adı uzantısı için RDAP kaydı yayımlanmıyor",
                    "name": null,
                    "registrar": null,
                    "status": [],
                    "registered": null,
                    "expires": null,
                    "changed": null,
                    "nameservers": [],
                    "dnssec": null
                }
            }
        ],
        "findings": [],
        "found": false,
        "registrar": null,
        "registered": null,
        "expires": null,
        "changed": null,
        "days": null,
        "domainStatus": [],
        "nameservers": [],
        "dnssecSigned": null,
        "status": "neutral",
        "statusLabel": "Veri yok",
        "detail": "Bu alan adı uzantısı için RDAP kaydı yayımlanmıyor",
        "ms": 133
    },
    "records": {
        "error": null,
        "rows": [
            {
                "type": "NS",
                "name": "@",
                "value": "ns1.digitalocean.com.",
                "ttl": 1800
            },
            {
                "type": "NS",
                "name": "@",
                "value": "ns2.digitalocean.com.",
                "ttl": 1800
            },
            {
                "type": "NS",
                "name": "@",
                "value": "ns3.digitalocean.com.",
                "ttl": 1800
            },
            {
                "type": "SOA",
                "name": "@",
                "value": "ns1.digitalocean.com. hostmaster.example.io. 0 10800 3600 604800 1800",
                "ttl": 1800
            }
        ],
        "server": "172.64.52.210",
        "partial": false,
        "ms": 264
    },
    "mail": {
        "error": null,
        "checks": [
            {
                "key": "spf",
                "label": "SPF",
                "status": "err",
                "statusLabel": "Yok",
                "detail": "SPF kaydı bulunamadı",
                "findings": [
                    {
                        "level": "err",
                        "code": "spf-missing",
                        "title": "SPF kaydı yok",
                        "text": "Alan adınız adına kimin e-posta gönderebileceği tanımlı değil; sahte e-postalar kolayca gönderilebilir.",
                        "fix": "v=spf1 mx ~all"
                    }
                ],
                "data": []
            },
            {
                "key": "dkim",
                "label": "DKIM",
                "status": "warn",
                "statusLabel": "Bulunamadı",
                "detail": "12 yaygın selector denendi",
                "findings": [
                    {
                        "level": "warn",
                        "code": "dkim-missing",
                        "title": "Yaygın selector'larda DKIM kaydı bulunamadı",
                        "text": "E-posta sağlayıcınız farklı bir selector kullanıyor olabilir. DKIM yoksa gönderdiğiniz e-postalar imzasız gider ve DMARC daha kolay başarısız olur.",
                        "fix": null
                    }
                ],
                "data": {
                    "selectors": [
                        "default",
                        "google",
                        "selector1",
                        "selector2",
                        "k1",
                        "k2",
                        "mail",
                        "dkim",
                        "s1",
                        "s2",
                        "smtp",
                        "mx"
                    ]
                }
            },
            {
                "key": "dmarc",
                "label": "DMARC",
                "status": "err",
                "statusLabel": "Yok",
                "detail": "DMARC kaydı bulunamadı",
                "findings": [
                    {
                        "level": "err",
                        "code": "dmarc-missing",
                        "title": "DMARC kaydı yok",
                        "text": "SPF/DKIM başarısız olan sahte e-postalar için alıcılara ne yapacakları söylenmiyor. _dmarc TXT kaydı ekleyin.",
                        "fix": "_dmarc.example.io TXT \"v=DMARC1; p=quarantine; rua=mailto:dmarc@example.io\""
                    }
                ],
                "data": []
            },
            {
                "key": "mta-sts",
                "label": "MTA-STS",
                "status": "neutral",
                "statusLabel": "Yok",
                "detail": "Kayıt yok (isteğe bağlı; SMTP şifrelemesini zorunlu kılar)",
                "findings": [
                    {
                        "level": "info",
                        "code": "mtasts-missing",
                        "title": "MTA-STS yok",
                        "text": "Gelen e-postalarda TLS zorunlu değil; ortadaki adam saldırısına açık. İsteğe bağlı ama önerilir.",
                        "fix": "_mta-sts.example.io TXT \"v=STSv1; id=202610191246\""
                    }
                ],
                "data": []
            },
            {
                "key": "bimi",
                "label": "BIMI",
                "status": "neutral",
                "statusLabel": "Yok",
                "detail": "Kayıt yok (isteğe bağlı; gelen kutusunda logo gösterir)",
                "findings": [],
                "data": []
            }
        ],
        "findings": [
            {
                "level": "err",
                "code": "spf-missing",
                "title": "SPF kaydı yok",
                "text": "Alan adınız adına kimin e-posta gönderebileceği tanımlı değil; sahte e-postalar kolayca gönderilebilir.",
                "fix": "v=spf1 mx ~all"
            },
            {
                "level": "warn",
                "code": "dkim-missing",
                "title": "Yaygın selector'larda DKIM kaydı bulunamadı",
                "text": "E-posta sağlayıcınız farklı bir selector kullanıyor olabilir. DKIM yoksa gönderdiğiniz e-postalar imzasız gider ve DMARC daha kolay başarısız olur.",
                "fix": null
            },
            {
                "level": "err",
                "code": "dmarc-missing",
                "title": "DMARC kaydı yok",
                "text": "SPF/DKIM başarısız olan sahte e-postalar için alıcılara ne yapacakları söylenmiyor. _dmarc TXT kaydı ekleyin.",
                "fix": "_dmarc.example.io TXT \"v=DMARC1; p=quarantine; rua=mailto:dmarc@example.io\""
            },
            {
                "level": "info",
                "code": "mtasts-missing",
                "title": "MTA-STS yok",
                "text": "Gelen e-postalarda TLS zorunlu değil; ortadaki adam saldırısına açık. İsteğe bağlı ama önerilir.",
                "fix": "_mta-sts.example.io TXT \"v=STSv1; id=202610191246\""
            }
        ],
        "ms": 189
    },
    "dnssec": {
        "error": null,
        "checks": [
            {
                "key": "dnssec",
                "label": "DNSSEC",
                "status": "warn",
                "statusLabel": "İmzasız",
                "detail": "DS kaydı yok · bölge imzalanmamış",
                "findings": [
                    {
                        "level": "warn",
                        "code": "dnssec-unsigned",
                        "title": "DNSSEC etkin değil",
                        "text": "Kayıtlar imzalı değil; sahte DNS yanıtları (önbellek zehirleme) tespit edilemez. DNS sağlayıcınızda DNSSEC'i açıp DS kaydını alan adı kayıt firmanıza girin.",
                        "fix": null
                    }
                ],
                "data": {
                    "steps": [
                        {
                            "zone": ". (kök)",
                            "keys": "KSK 20326, 38696 · imzalar geçerli",
                            "status": "ok",
                            "label": "Güven kökü"
                        },
                        {
                            "zone": "io",
                            "keys": "DS → DNSKEY 57355 · imzalar geçerli",
                            "status": "ok",
                            "label": "Doğrulandı"
                        },
                        {
                            "zone": "example.io",
                            "keys": "DS yok",
                            "status": "unsigned",
                            "label": "İmzasız"
                        }
                    ],
                    "algorithm": null,
                    "expires": null,
                    "secure": false
                }
            }
        ],
        "findings": [
            {
                "level": "warn",
                "code": "dnssec-unsigned",
                "title": "DNSSEC etkin değil",
                "text": "Kayıtlar imzalı değil; sahte DNS yanıtları (önbellek zehirleme) tespit edilemez. DNS sağlayıcınızda DNSSEC'i açıp DS kaydını alan adı kayıt firmanıza girin.",
                "fix": null
            }
        ],
        "ms": 300,
        "steps": [
            {
                "zone": ". (kök)",
                "keys": "KSK 20326, 38696 · imzalar geçerli",
                "status": "ok",
                "label": "Güven kökü"
            },
            {
                "zone": "io",
                "keys": "DS → DNSKEY 57355 · imzalar geçerli",
                "status": "ok",
                "label": "Doğrulandı"
            },
            {
                "zone": "example.io",
                "keys": "DS yok",
                "status": "unsigned",
                "label": "İmzasız"
            }
        ],
        "algorithm": null,
        "expires": null,
        "secure": false,
        "status": "warn",
        "statusLabel": "İmzasız",
        "detail": "DS kaydı yok · bölge imzalanmamış"
    },
    "nameservers": {
        "error": null,
        "zone": "example.io",
        "check": {
            "key": "ns",
            "label": "Nameserver",
            "status": "warn",
            "statusLabel": "Tek ağ",
            "detail": "3 sunucu · 1 farklı ağ (ASN) · seri numaraları eşleşiyor",
            "findings": [
                {
                    "level": "warn",
                    "code": "ns-single-asn",
                    "title": "Tüm nameserver'lar aynı ağda (AS13335)",
                    "text": "O ağda kesinti olursa alan adı erişilemez. Farklı bir sağlayıcıda ikincil nameserver ekleyin.",
                    "fix": null
                }
            ],
            "data": {
                "servers": [
                    {
                        "host": "ns1.digitalocean.com",
                        "ip": "172.64.52.210",
                        "asn": 13335,
                        "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                        "loc": null,
                        "ms": 38.2,
                        "serial": 0,
                        "status": "ok",
                        "statusLabel": "Yetkili",
                        "w": 100
                    },
                    {
                        "host": "ns2.digitalocean.com",
                        "ip": "172.64.53.21",
                        "asn": 13335,
                        "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                        "loc": null,
                        "ms": 38,
                        "serial": 0,
                        "status": "ok",
                        "statusLabel": "Yetkili",
                        "w": 99
                    },
                    {
                        "host": "ns3.digitalocean.com",
                        "ip": "172.64.49.209",
                        "asn": 13335,
                        "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                        "loc": null,
                        "ms": 38,
                        "serial": 0,
                        "status": "ok",
                        "statusLabel": "Yetkili",
                        "w": 99
                    }
                ],
                "asns": [
                    13335
                ]
            }
        },
        "servers": [
            {
                "host": "ns1.digitalocean.com",
                "ip": "172.64.52.210",
                "asn": 13335,
                "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                "loc": null,
                "ms": 38.2,
                "serial": 0,
                "status": "ok",
                "statusLabel": "Yetkili",
                "w": 100
            },
            {
                "host": "ns2.digitalocean.com",
                "ip": "172.64.53.21",
                "asn": 13335,
                "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                "loc": null,
                "ms": 38,
                "serial": 0,
                "status": "ok",
                "statusLabel": "Yetkili",
                "w": 99
            },
            {
                "host": "ns3.digitalocean.com",
                "ip": "172.64.49.209",
                "asn": 13335,
                "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                "loc": null,
                "ms": 38,
                "serial": 0,
                "status": "ok",
                "statusLabel": "Yetkili",
                "w": 99
            }
        ],
        "findings": [
            {
                "level": "warn",
                "code": "ns-single-asn",
                "title": "Tüm nameserver'lar aynı ağda (AS13335)",
                "text": "O ağda kesinti olursa alan adı erişilemez. Farklı bir sağlayıcıda ikincil nameserver ekleyin.",
                "fix": null
            }
        ],
        "ms": 325
    },
    "extra": {
        "error": null,
        "checks": [
            {
                "key": "mx",
                "label": "MX",
                "status": "info",
                "statusLabel": "Yok",
                "detail": "MX kaydı yok; e-posta A kaydına düşer ya da alınmaz",
                "findings": [
                    {
                        "level": "info",
                        "code": "mx-missing",
                        "title": "MX kaydı yok",
                        "text": "Bu alan adına e-posta gönderilirse alıcılar A kaydını dener. E-posta kullanmıyorsanız \"0 .\" (null MX) ekleyin.",
                        "fix": "example.io MX 0 ."
                    }
                ],
                "data": []
            },
            {
                "key": "caa",
                "label": "CAA",
                "status": "warn",
                "statusLabel": "Yok",
                "detail": "Her sertifika otoritesi bu alan adı için sertifika verebilir",
                "findings": [
                    {
                        "level": "warn",
                        "code": "caa-missing",
                        "title": "CAA kaydı yok",
                        "text": "Her sertifika otoritesi bu alan adı için SSL sertifikası verebilir. Kullandığınız CA'yı belirtin.",
                        "fix": "example.io CAA 0 issue \"letsencrypt.org\""
                    }
                ],
                "data": []
            },
            {
                "key": "soa",
                "label": "SOA",
                "status": "ok",
                "statusLabel": "Geçerli",
                "detail": "seri 0 · refresh 10800 · retry 3600 · expire 604800 · minimum 1800",
                "findings": [],
                "data": {
                    "mname": "ns1.digitalocean.com",
                    "rname": "hostmaster.example.io",
                    "serial": 0,
                    "refresh": 10800,
                    "retry": 3600,
                    "expire": 604800,
                    "minimum": 1800
                }
            }
        ],
        "findings": [
            {
                "level": "info",
                "code": "mx-missing",
                "title": "MX kaydı yok",
                "text": "Bu alan adına e-posta gönderilirse alıcılar A kaydını dener. E-posta kullanmıyorsanız \"0 .\" (null MX) ekleyin.",
                "fix": "example.io MX 0 ."
            },
            {
                "level": "warn",
                "code": "caa-missing",
                "title": "CAA kaydı yok",
                "text": "Her sertifika otoritesi bu alan adı için SSL sertifikası verebilir. Kullandığınız CA'yı belirtin.",
                "fix": "example.io CAA 0 issue \"letsencrypt.org\""
            }
        ],
        "ms": 92
    },
    "ssl": {
        "error": null,
        "checks": [
            {
                "key": "ssl",
                "label": "SSL/HTTP",
                "status": "neutral",
                "statusLabel": "Web yok",
                "detail": "Alan adının A/AAAA kaydı yok; web sitesi kontrol edilmedi",
                "findings": [],
                "data": {
                    "ip": null
                }
            }
        ],
        "findings": [],
        "ms": 78,
        "ip": null,
        "status": "neutral",
        "statusLabel": "Web yok",
        "detail": "Alan adının A/AAAA kaydı yok; web sitesi kontrol edilmedi"
    },
    "propagation": {
        "error": null,
        "ttl": 1800,
        "type": "NS",
        "expected": [
            "ns1.digitalocean.com.",
            "ns2.digitalocean.com.",
            "ns3.digitalocean.com."
        ],
        "rows": [
            {
                "name": "Google",
                "ip": "8.8.8.8",
                "loc": "Global",
                "ms": 81,
                "status": "fresh",
                "label": "Güncel",
                "answer": "ns1.digitalocean.com., ns3.digitalocean.com., ns2.digitalocean.com."
            },
            {
                "name": "Cloudflare",
                "ip": "1.1.1.1",
                "loc": "Global",
                "ms": 2.6,
                "status": "fresh",
                "label": "Güncel",
                "answer": "ns2.digitalocean.com., ns3.digitalocean.com., ns1.digitalocean.com."
            },
            {
                "name": "Quad9",
                "ip": "9.9.9.9",
                "loc": "Global",
                "ms": 65.9,
                "status": "fresh",
                "label": "Güncel",
                "answer": "ns2.digitalocean.com., ns1.digitalocean.com., ns3.digitalocean.com."
            },
            {
                "name": "OpenDNS",
                "ip": "208.67.222.222",
                "loc": "Global",
                "ms": 78.5,
                "status": "fresh",
                "label": "Güncel",
                "answer": "ns1.digitalocean.com., ns2.digitalocean.com., ns3.digitalocean.com."
            },
            {
                "name": "Türk Telekom",
                "ip": "195.175.39.39",
                "loc": "Türkiye",
                "ms": 238.6,
                "status": "fresh",
                "label": "Güncel",
                "answer": "ns2.digitalocean.com., ns1.digitalocean.com., ns3.digitalocean.com."
            },
            {
                "name": "AdGuard",
                "ip": "94.140.14.14",
                "loc": "Global",
                "ms": 82.5,
                "status": "fresh",
                "label": "Güncel",
                "answer": "ns2.digitalocean.com., ns3.digitalocean.com., ns1.digitalocean.com."
            },
            {
                "name": "Control D",
                "ip": "76.76.2.0",
                "loc": "Global",
                "ms": 80.3,
                "status": "fresh",
                "label": "Güncel",
                "answer": "ns2.digitalocean.com., ns3.digitalocean.com., ns1.digitalocean.com."
            },
            {
                "name": "Hurricane Electric",
                "ip": "74.82.42.42",
                "loc": "ABD",
                "ms": 51.9,
                "status": "fresh",
                "label": "Güncel",
                "answer": "ns3.digitalocean.com., ns2.digitalocean.com., ns1.digitalocean.com."
            },
            {
                "name": "CleanBrowsing",
                "ip": "185.228.168.9",
                "loc": "Global",
                "ms": 218.3,
                "status": "fresh",
                "label": "Güncel",
                "answer": "ns3.digitalocean.com., ns2.digitalocean.com., ns1.digitalocean.com."
            },
            {
                "name": "Yandex",
                "ip": "77.88.8.8",
                "loc": "Rusya",
                "ms": 176.4,
                "status": "fresh",
                "label": "Güncel",
                "answer": "ns1.digitalocean.com., ns2.digitalocean.com., ns3.digitalocean.com."
            },
            {
                "name": "Level3",
                "ip": "4.2.2.1",
                "loc": "ABD",
                "ms": 50.7,
                "status": "fresh",
                "label": "Güncel",
                "answer": "ns1.digitalocean.com., ns3.digitalocean.com., ns2.digitalocean.com."
            },
            {
                "name": "Neustar UltraDNS",
                "ip": "64.6.64.6",
                "loc": "ABD",
                "ms": 48.5,
                "status": "fresh",
                "label": "Güncel",
                "answer": "ns3.digitalocean.com., ns2.digitalocean.com., ns1.digitalocean.com."
            }
        ],
        "counts": {
            "fresh": 12,
            "stale": 0,
            "empty": 0,
            "timeout": 0
        },
        "responding": 12,
        "pct": 100,
        "ms": 240
    },
    "summary": {
        "error": null,
        "checks": [
            {
                "key": "whois",
                "label": "WHOIS",
                "status": "neutral",
                "statusLabel": "Veri yok",
                "detail": "Bu alan adı uzantısı için RDAP kaydı yayımlanmıyor",
                "findings": [],
                "data": {
                    "found": false,
                    "reason": "Bu alan adı uzantısı için RDAP kaydı yayımlanmıyor",
                    "name": null,
                    "registrar": null,
                    "status": [],
                    "registered": null,
                    "expires": null,
                    "changed": null,
                    "nameservers": [],
                    "dnssec": null
                }
            },
            {
                "key": "spf",
                "label": "SPF",
                "status": "err",
                "statusLabel": "Yok",
                "detail": "SPF kaydı bulunamadı",
                "findings": [
                    {
                        "level": "err",
                        "code": "spf-missing",
                        "title": "SPF kaydı yok",
                        "text": "Alan adınız adına kimin e-posta gönderebileceği tanımlı değil; sahte e-postalar kolayca gönderilebilir.",
                        "fix": "v=spf1 mx ~all"
                    }
                ],
                "data": []
            },
            {
                "key": "dkim",
                "label": "DKIM",
                "status": "warn",
                "statusLabel": "Bulunamadı",
                "detail": "12 yaygın selector denendi",
                "findings": [
                    {
                        "level": "warn",
                        "code": "dkim-missing",
                        "title": "Yaygın selector'larda DKIM kaydı bulunamadı",
                        "text": "E-posta sağlayıcınız farklı bir selector kullanıyor olabilir. DKIM yoksa gönderdiğiniz e-postalar imzasız gider ve DMARC daha kolay başarısız olur.",
                        "fix": null
                    }
                ],
                "data": {
                    "selectors": [
                        "default",
                        "google",
                        "selector1",
                        "selector2",
                        "k1",
                        "k2",
                        "mail",
                        "dkim",
                        "s1",
                        "s2",
                        "smtp",
                        "mx"
                    ]
                }
            },
            {
                "key": "dmarc",
                "label": "DMARC",
                "status": "err",
                "statusLabel": "Yok",
                "detail": "DMARC kaydı bulunamadı",
                "findings": [
                    {
                        "level": "err",
                        "code": "dmarc-missing",
                        "title": "DMARC kaydı yok",
                        "text": "SPF/DKIM başarısız olan sahte e-postalar için alıcılara ne yapacakları söylenmiyor. _dmarc TXT kaydı ekleyin.",
                        "fix": "_dmarc.example.io TXT \"v=DMARC1; p=quarantine; rua=mailto:dmarc@example.io\""
                    }
                ],
                "data": []
            },
            {
                "key": "mta-sts",
                "label": "MTA-STS",
                "status": "neutral",
                "statusLabel": "Yok",
                "detail": "Kayıt yok (isteğe bağlı; SMTP şifrelemesini zorunlu kılar)",
                "findings": [
                    {
                        "level": "info",
                        "code": "mtasts-missing",
                        "title": "MTA-STS yok",
                        "text": "Gelen e-postalarda TLS zorunlu değil; ortadaki adam saldırısına açık. İsteğe bağlı ama önerilir.",
                        "fix": "_mta-sts.example.io TXT \"v=STSv1; id=202610191246\""
                    }
                ],
                "data": []
            },
            {
                "key": "bimi",
                "label": "BIMI",
                "status": "neutral",
                "statusLabel": "Yok",
                "detail": "Kayıt yok (isteğe bağlı; gelen kutusunda logo gösterir)",
                "findings": [],
                "data": []
            },
            {
                "key": "dnssec",
                "label": "DNSSEC",
                "status": "warn",
                "statusLabel": "İmzasız",
                "detail": "DS kaydı yok · bölge imzalanmamış",
                "findings": [
                    {
                        "level": "warn",
                        "code": "dnssec-unsigned",
                        "title": "DNSSEC etkin değil",
                        "text": "Kayıtlar imzalı değil; sahte DNS yanıtları (önbellek zehirleme) tespit edilemez. DNS sağlayıcınızda DNSSEC'i açıp DS kaydını alan adı kayıt firmanıza girin.",
                        "fix": null
                    }
                ],
                "data": {
                    "steps": [
                        {
                            "zone": ". (kök)",
                            "keys": "KSK 20326, 38696 · imzalar geçerli",
                            "status": "ok",
                            "label": "Güven kökü"
                        },
                        {
                            "zone": "io",
                            "keys": "DS → DNSKEY 57355 · imzalar geçerli",
                            "status": "ok",
                            "label": "Doğrulandı"
                        },
                        {
                            "zone": "example.io",
                            "keys": "DS yok",
                            "status": "unsigned",
                            "label": "İmzasız"
                        }
                    ],
                    "algorithm": null,
                    "expires": null,
                    "secure": false
                }
            },
            {
                "key": "ns",
                "label": "Nameserver",
                "status": "warn",
                "statusLabel": "Tek ağ",
                "detail": "3 sunucu · 1 farklı ağ (ASN) · seri numaraları eşleşiyor",
                "findings": [
                    {
                        "level": "warn",
                        "code": "ns-single-asn",
                        "title": "Tüm nameserver'lar aynı ağda (AS13335)",
                        "text": "O ağda kesinti olursa alan adı erişilemez. Farklı bir sağlayıcıda ikincil nameserver ekleyin.",
                        "fix": null
                    }
                ],
                "data": {
                    "servers": [
                        {
                            "host": "ns1.digitalocean.com",
                            "ip": "172.64.52.210",
                            "asn": 13335,
                            "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                            "loc": null,
                            "ms": 38.2,
                            "serial": 0,
                            "status": "ok",
                            "statusLabel": "Yetkili",
                            "w": 100
                        },
                        {
                            "host": "ns2.digitalocean.com",
                            "ip": "172.64.53.21",
                            "asn": 13335,
                            "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                            "loc": null,
                            "ms": 38,
                            "serial": 0,
                            "status": "ok",
                            "statusLabel": "Yetkili",
                            "w": 99
                        },
                        {
                            "host": "ns3.digitalocean.com",
                            "ip": "172.64.49.209",
                            "asn": 13335,
                            "holder": "CLOUDFLARENET - Cloudflare, Inc.",
                            "loc": null,
                            "ms": 38,
                            "serial": 0,
                            "status": "ok",
                            "statusLabel": "Yetkili",
                            "w": 99
                        }
                    ],
                    "asns": [
                        13335
                    ]
                }
            },
            {
                "key": "mx",
                "label": "MX",
                "status": "info",
                "statusLabel": "Yok",
                "detail": "MX kaydı yok; e-posta A kaydına düşer ya da alınmaz",
                "findings": [
                    {
                        "level": "info",
                        "code": "mx-missing",
                        "title": "MX kaydı yok",
                        "text": "Bu alan adına e-posta gönderilirse alıcılar A kaydını dener. E-posta kullanmıyorsanız \"0 .\" (null MX) ekleyin.",
                        "fix": "example.io MX 0 ."
                    }
                ],
                "data": []
            },
            {
                "key": "caa",
                "label": "CAA",
                "status": "warn",
                "statusLabel": "Yok",
                "detail": "Her sertifika otoritesi bu alan adı için sertifika verebilir",
                "findings": [
                    {
                        "level": "warn",
                        "code": "caa-missing",
                        "title": "CAA kaydı yok",
                        "text": "Her sertifika otoritesi bu alan adı için SSL sertifikası verebilir. Kullandığınız CA'yı belirtin.",
                        "fix": "example.io CAA 0 issue \"letsencrypt.org\""
                    }
                ],
                "data": []
            },
            {
                "key": "soa",
                "label": "SOA",
                "status": "ok",
                "statusLabel": "Geçerli",
                "detail": "seri 0 · refresh 10800 · retry 3600 · expire 604800 · minimum 1800",
                "findings": [],
                "data": {
                    "mname": "ns1.digitalocean.com",
                    "rname": "hostmaster.example.io",
                    "serial": 0,
                    "refresh": 10800,
                    "retry": 3600,
                    "expire": 604800,
                    "minimum": 1800
                }
            },
            {
                "key": "ssl",
                "label": "SSL/HTTP",
                "status": "neutral",
                "statusLabel": "Web yok",
                "detail": "Alan adının A/AAAA kaydı yok; web sitesi kontrol edilmedi",
                "findings": [],
                "data": {
                    "ip": null
                }
            }
        ],
        "findings": [
            {
                "level": "err",
                "code": "spf-missing",
                "title": "SPF kaydı yok",
                "text": "Alan adınız adına kimin e-posta gönderebileceği tanımlı değil; sahte e-postalar kolayca gönderilebilir.",
                "fix": "v=spf1 mx ~all"
            },
            {
                "level": "err",
                "code": "dmarc-missing",
                "title": "DMARC kaydı yok",
                "text": "SPF/DKIM başarısız olan sahte e-postalar için alıcılara ne yapacakları söylenmiyor. _dmarc TXT kaydı ekleyin.",
                "fix": "_dmarc.example.io TXT \"v=DMARC1; p=quarantine; rua=mailto:dmarc@example.io\""
            },
            {
                "level": "warn",
                "code": "dkim-missing",
                "title": "Yaygın selector'larda DKIM kaydı bulunamadı",
                "text": "E-posta sağlayıcınız farklı bir selector kullanıyor olabilir. DKIM yoksa gönderdiğiniz e-postalar imzasız gider ve DMARC daha kolay başarısız olur.",
                "fix": null
            },
            {
                "level": "warn",
                "code": "dnssec-unsigned",
                "title": "DNSSEC etkin değil",
                "text": "Kayıtlar imzalı değil; sahte DNS yanıtları (önbellek zehirleme) tespit edilemez. DNS sağlayıcınızda DNSSEC'i açıp DS kaydını alan adı kayıt firmanıza girin.",
                "fix": null
            },
            {
                "level": "warn",
                "code": "ns-single-asn",
                "title": "Tüm nameserver'lar aynı ağda (AS13335)",
                "text": "O ağda kesinti olursa alan adı erişilemez. Farklı bir sağlayıcıda ikincil nameserver ekleyin.",
                "fix": null
            },
            {
                "level": "warn",
                "code": "caa-missing",
                "title": "CAA kaydı yok",
                "text": "Her sertifika otoritesi bu alan adı için SSL sertifikası verebilir. Kullandığınız CA'yı belirtin.",
                "fix": "example.io CAA 0 issue \"letsencrypt.org\""
            },
            {
                "level": "info",
                "code": "mtasts-missing",
                "title": "MTA-STS yok",
                "text": "Gelen e-postalarda TLS zorunlu değil; ortadaki adam saldırısına açık. İsteğe bağlı ama önerilir.",
                "fix": "_mta-sts.example.io TXT \"v=STSv1; id=202610191246\""
            },
            {
                "level": "info",
                "code": "mx-missing",
                "title": "MX kaydı yok",
                "text": "Bu alan adına e-posta gönderilirse alıcılar A kaydını dener. E-posta kullanmıyorsanız \"0 .\" (null MX) ekleyin.",
                "fix": "example.io MX 0 ."
            }
        ],
        "counts": {
            "ok": 6,
            "warn": 4,
            "err": 2,
            "fail": 0
        },
        "score": {
            "score": 49,
            "grade": "D",
            "word": "Zayıf",
            "tone": "err",
            "unchecked": []
        },
        "providers": {
            "web": null,
            "mail": null,
            "dns": "digitalocean.com"
        },
        "totalMs": 1381,
        "at": "19.10.2026 12:46",
        "ms": 0
    }
}
