Säkerhet och tillit 2 Slutpunkter 8 Nyckelfunktioner

API för E-postautentisering

Validera DMARC-, SPF- och DKIM-konfigurationer för alla domäner. Väsentligt för e-postleverans, säkerhetsgranskning och skydd mot e-postförfalskning och nätfiskeattacker.

Category Säkerhet och tillit
Slutpunkter 2
Nyckelfunktioner 8
Vanliga frågor 4

Används av människor på fantastiska företag

VercelLLM PulseOLXCasa ModernaPipeCal.comBeehiivSnykTogglRemoteSprigDeel

Förtroendesignaler före integration

Transparent dokumentation, autentiserade anrop och synliga tillförlitlighetsdetaljer gör DomScan lättare att utvärdera före lansering.

I drift Tjänstestatus

Kontrollera tjänstens aktuella status och dokumenterade felsvar innan du integrerar.

OpenAPI API-material

OpenAPI, Swagger, Postman, CLI, SDK och MCP-länkar finns ett klick bort.

API-nycklar Skyddad åtkomst

Autentiserade endpoints använder API-nycklar med tydliga kreditkostnader före anrop.

10,000 Gratis kvot

Börja med 10 000 krediter per månad och uppgradera först när användningen växer.

Vad detta API hjälper dig att leverera

Använd sidan som en produktionsbrief: endpoints, exempel, responsform och workflow-delar som krävs för att koppla DomScan till din produkt.

Produktworkflows

Bädda in domänkontroller, DNS-intelligence, risksignaler eller berikning i onboarding, sök och interna verktyg.

Analystautomatisering

Ersätt upprepade manuella lookups med schemalagda jobb, alerts och reproducerbara utredningssteg.

Ren JSON-data

Använd förutsägbara fält, dokumenterade statuskoder och kreditkostnader istället för att skrapa leverantörssidor.

AI- och ops-verktyg

Mata agenter, dashboards, SOAR-playbooks och CRM:er via OpenAPI, SDK, Postman eller MCP.

Integrationsworkflow

En enkel väg från första request till repeterbar produktion.

1
Autentisera en gång

Skicka din API-nyckel med dokumenterad header och håll requests konsekventa mellan tjänster.

2
Fråga med exempel

Börja med curl- och HTTP-exempel och mappa sedan parametrarna till din applikationskod.

3
Drifta och övervaka

Använd statuskoder, kreditkostnader och responsfält för retries, loggar och alerts.

Utvecklarkit

Gå från sidan till maskinläsbara docs, request-samlingar, SDK:er eller agentverktyg.

Parameter- och responskarta

Granska inputs, outputfält och statuskoder innan endpointen kopplas in i din klient.

Requestparametrar

Parameter

domaindomainsselectors
Responsfält

Exempelsvar

domainspfspf.recordspf.lookup_estimatespf.includesspf.redirectspf.macros_presentspf.macro_referencesspf.lookup_walk_countspf.lookup_limit_exceededspf.walkspf.walk_errors
Statustäckning

HTTP-statuskoder

200400401402429

Slutpunkter

GET /v1/email-auth
Krediter: 3Autentisering: Autentisering krävs
domain
POST /v1/email-auth/bulk
Krediter: 3/itemAutentisering: Autentisering krävs
domainsselectors

Förtroendesignaler före integration

Transparent dokumentation, autentiserade anrop och synliga tillförlitlighetsdetaljer gör DomScan lättare att utvärdera före lansering.

Tjänstestatus API-material

OpenAPI, Swagger, Postman, CLI, SDK och MCP-länkar finns ett klick bort.

API-nycklar Skyddad åtkomst

Autentiserade endpoints använder API-nycklar med tydliga kreditkostnader före anrop.

Gratis kvot Registrera dig Gratis

Börja med 10 000 krediter per månad och uppgradera först när användningen växer.

Aktiv Exempelbegäran

Börja med curl- och HTTP-exempel och mappa sedan parametrarna till din applikationskod.

Nyckelfunktioner

SPF-validering

Parsa och validera Sender Policy Framework-poster.

DMARC-analys

Kontrollera DMARC-politikkonfiguration och rapportering.

DKIM-verifiering

Validera DomainKeys Identified Mail-signaturer.

Säkerhetsklass

Få en övergripande A-F-klass för e-postsäkerhetsposition.

Handlingsbara rekommendationer

Få specifika korrigeringar för felkonfigurationer.

Stöd för flera väljare

Kontrollera vanliga DKIM-väljare automatiskt.

Politikförklaring

Förstå vad varje policy innebär på vanlig engelska.

Förfalskningsriskbedömning

Utvärdera sårbarhet för e-postförfalskningsattacker.

Exempelbegäran

GET /v1/email-auth bash
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/email-auth?domain=google.com"

Exempelsvar

200 OK json
{
  "domain": "google.com",
  "spf": {
    "record": "v=spf1 include:_spf.google.com ~all",
    "lookup_estimate": 1,
    "includes": [
      "_spf.google.com"
    ],
    "redirect": null,
    "macros_present": false,
    "macro_references": [],
    "lookup_walk_count": 1,
    "lookup_limit_exceeded": false,
    "walk": [
      {
        "domain": "google.com",
        "depth": 0,
        "record": "v=spf1 include:_spf.google.com ~all",
        "mechanisms": [
          "include:_spf.google.com",
          "~all"
        ],
        "includes": [
          "_spf.google.com"
        ],
        "redirect": null,
        "direct_lookup_count": 1,
        "total_lookup_count": 1,
        "macros_present": false,
        "macro_references": [],
        "multiple_records": 1
      }
    ],
    "walk_errors": [],
    "lookup_tree": {
      "root_domain": "google.com",
      "node_count": 1,
      "max_depth": 0,
      "cycles_detected": [],
      "nodes": [
        {
          "domain": "google.com",
          "depth": 0,
          "status": "present",
          "direct_lookup_count": 1,
          "total_lookup_count": 1,
          "includes": [
            "_spf.google.com"
          ],
          "redirect": null,
          "mechanisms": [
            "include:_spf.google.com",
            "~all"
          ],
          "errors": []
        }
      ],
      "edges": [
        {
          "from": "google.com",
          "to": "_spf.google.com",
          "type": "include"
        }
      ]
    }
  },
  "dkim": [
    {
      "selector": "google",
      "record": "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A",
      "key_type": "rsa",
      "key_size": 2048
    }
  ],
  "dkim_audit": {
    "selectors_checked": [
      "google",
      "default",
      "selector1",
      "selector2"
    ],
    "selectors_found": [
      {
        "selector": "google",
        "dns_name": "google._domainkey.google.com",
        "record": "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A",
        "record_type": "TXT",
        "cname_targets": [],
        "provider_hint": "Google Workspace",
        "key_type": "rsa",
        "key_size": 2048,
        "valid": true,
        "revoked": false,
        "weak": false,
        "hash_algorithms": [
          "sha256"
        ],
        "service_type": "email",
        "flags": [
          "s"
        ],
        "issues": []
      }
    ],
    "total_found": 1,
    "providers_detected": [
      "Google Workspace"
    ],
    "valid_selector_count": 1,
    "weak_selector_count": 0,
    "revoked_selector_count": 0
  },
  "bimi": {
    "exists": true,
    "record": "v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/vmc.pem",
    "valid": true,
    "logo_url": "https://example.com/logo.svg",
    "authority_url": "https://example.com/vmc.pem",
    "logo_fetch_ok": true,
    "logo_http_status": 200,
    "logo_content_type": "image/svg+xml",
    "logo_bytes": 2048,
    "logo_svg_detected": true,
    "vmc_present": true,
    "vmc_fetched": true,
    "vmc_http_status": 200,
    "vmc_content_type": "application/x-pem-file",
    "vmc_certificate_valid": true,
    "vmc_subject": "/CN=Example Inc VMC",
    "vmc_issuer": "/CN=Example Issuer",
    "vmc_not_before": "2026-01-01T00:00:00Z",
    "vmc_not_after": "2027-01-01T00:00:00Z",
    "vmc_days_to_expiry": 258,
    "vmc_fingerprint_sha256": "AA:BB:CC:DD",
    "vmc_san_domains": [
      "google.com"
    ],
    "errors": []
  },
  "dmarc": {
    "record": "v=DMARC1; p=reject; rua=mailto:[email protected]",
    "tags": {
      "v": "DMARC1",
      "p": "reject",
      "rua": "mailto:[email protected]"
    }
  },
  "mta_sts": {
    "exists": true,
    "record": "v=STSv1; id=2024010101Z",
    "valid": true,
    "policy_id": "2024010101Z",
    "policy_fetch_ok": true,
    "policy_http_status": 200,
    "mode": "enforce",
    "max_age": 86400,
    "mx_hosts": [
      "*.google.com"
    ],
    "mx_records": [
      "aspmx.l.google.com"
    ],
    "policy_matches_mx": true,
    "uncovered_mx": [],
    "errors": []
  },
  "tls_rpt": {
    "exists": true,
    "record": "v=TLSRPTv1; rua=mailto:[email protected]",
    "valid": true,
    "rua": [
      "mailto:[email protected]"
    ],
    "errors": []
  },
  "client_access": {
    "provider_hint": {
      "id": "google_workspace",
      "name": "Google Workspace"
    },
    "mx_records": [
      "aspmx.l.google.com"
    ],
    "services": [
      {
        "service": "imap",
        "host": "imap.gmail.com",
        "port": 993,
        "source": "provider_default",
        "priority": null,
        "weight": null,
        "tls_mode": "implicit",
        "reachable": true,
        "tls_negotiated": true,
        "starttls_offered": null,
        "protocol": "TLSv1.3",
        "cipher": "TLS_AES_256_GCM_SHA384",
        "certificate": {
          "subject": "/CN=imap.gmail.com",
          "issuer": "/CN=WR2",
          "not_before": "2026-01-01T00:00:00Z",
          "not_after": "2026-07-01T00:00:00Z",
          "days_to_expiry": 70,
          "expired": false,
          "san_domains": [
            "imap.gmail.com"
          ],
          "public_key_type": "EC",
          "public_key_bits": 256,
          "fingerprint_sha256": "CC:DD:EE:FF",
          "hostname_match": true,
          "chain_valid": true,
          "chain_error": null
        },
        "chain_depth": 2,
        "error": null
      }
    ],
    "reachable_service_count": 1,
    "secure_service_count": 1
  },
  "autodiscover": {
    "provider_hint": {
      "id": "google_workspace",
      "name": "Google Workspace"
    },
    "mx_records": [
      "aspmx.l.google.com"
    ],
    "srv": {
      "autodiscover": [],
      "submission": [],
      "submissions": [],
      "imap": [],
      "imaps": [],
      "pop3": [],
      "pop3s": []
    },
    "thunderbird_autoconfig": {
      "subdomain": {
        "url": "https://autoconfig.google.com/mail/config-v1.1.xml?emailaddress=postmaster%40google.com",
        "status_code": 404,
        "content_type": "text/html",
        "final_url": "https://autoconfig.google.com/mail/config-v1.1.xml?emailaddress=postmaster%40google.com",
        "redirect_count": 0,
        "incoming": [],
        "outgoing": [],
        "error": null
      },
      "well_known": {
        "url": "https://google.com/.well-known/autoconfig/mail/config-v1.1.xml?emailaddress=postmaster%40google.com",
        "status_code": 200,
        "content_type": "application/xml",
        "final_url": "https://google.com/.well-known/autoconfig/mail/config-v1.1.xml?emailaddress=postmaster%40google.com",
        "redirect_count": 0,
        "incoming": [
          {
            "type": "imap",
            "hostname": "imap.gmail.com",
            "port": 993,
            "socket_type": "SSL"
          }
        ],
        "outgoing": [
          {
            "type": "smtp",
            "hostname": "smtp.gmail.com",
            "port": 587,
            "socket_type": "STARTTLS"
          }
        ],
        "error": null
      }
    },
    "outlook_autodiscover": {
      "url": "https://autodiscover.google.com/autodiscover/autodiscover.xml",
      "status_code": 401,
      "content_type": "text/html",
      "final_url": "https://autodiscover.google.com/autodiscover/autodiscover.xml",
      "redirect_count": 0,
      "auth_required": true,
      "error": null
    },
    "recommended": [
      {
        "service": "imap",
        "host": "imap.gmail.com",
        "port": 993,
        "tls_mode": "implicit",
        "source": "provider_default"
      }
    ]
  },
  "edge_summary": {
    "relay_configured": true,
    "evidence_sources": [
      "spf_walk",
      "mail_policies",
      "bimi_audit",
      "dkim_audit",
      "mail_client_access",
      "mail_autodiscover"
    ],
    "spf_lookup_count": 1,
    "spf_lookup_limit_exceeded": false,
    "dkim_valid_selector_count": 1,
    "dkim_weak_selector_count": 0,
    "dkim_revoked_selector_count": 0,
    "providers_detected": [
      "Google Workspace"
    ],
    "mta_sts_enforced": true,
    "tls_rpt_configured": true,
    "bimi_logo_verified": true,
    "vmc_certificate_valid": true,
    "client_access_reachable_services": 1,
    "client_access_secure_services": 1,
    "autodiscover_recommendation_count": 1
  },
  "provider_selector_recommendations": [
    {
      "provider": "Google Workspace",
      "selectors": [
        "google",
        "20230601",
        "20210112"
      ],
      "source": "detected",
      "checked_selectors": [
        "google"
      ],
      "found_selectors": [
        "google"
      ],
      "missing_selectors": [
        "20230601",
        "20210112"
      ]
    }
  ],
  "grade": "A",
  "notes": []
}

Vanliga frågor

Vad är SPF?

Sender Policy Framework (SPF) är en DNS-post som anger vilka postservrar som är auktoriserade att skicka e-post för din domän.

Vad är DMARC?

Domain-based Message Authentication, Reporting & Conformance (DMARC) talar om för mottagande servrar hur de ska hantera e-postmeddelanden som misslyckas SPF- eller DKIM-kontroller.

Vad är DKIM?

DomainKeys Identified Mail (DKIM) lägger till en digital signatur till utgående e-postmeddelanden, vilket gör det möjligt för mottagare att verifiera att meddelandet inte har ändrats.

Varför behöver jag alla tre?

SPF, DKIM och DMARC fungerar tillsammans. SPF auktoriserar servrar, DKIM signerar meddelanden och DMARC ställer in policy. Alla tre ger omfattande skydd.

Relaterade verktyg och resurser

HTTP-statuskoder

Vi dokumenterar de HTTP-statuskoder som din klient bör hantera så att du kan skilja mellan lyckade svar, autentiseringsproblem, krediter, hastighetsgränser, saknade data och upstream-fel.

OK 200

Begäran lyckades

Felaktig begäran 400

Ogiltiga parametrar

Obehörig 401

API-nyckel eller session saknas eller är ogiltig.

Betalning krävs 402

Det finns inte tillräckligt med krediter för att köra denna begäran.

För många begäranden 429

Hastighetsgränsen överskriden

Kontrollera e-postautentisering