DNS y redes 1 Endpoints 8 Características principales

API de Análisis de Seguridad DNS

¿Esta tu dominio correctamente protegido? Nuestra API de Seguridad DNS analiza registros SPF, DKIM, DMARC, DNSSEC y CAA para darte una puntuacion de seguridad completa con recomendaciones accionables.

Categoría DNS y redes
Endpoints 1
Características principales 8
Preguntas frecuentes 4

Utilizado por personas en empresas increíbles.

VercelLLM PulseOLXCasa ModernaPipeCal.comBeehiivSnykTogglRemoteSprigDeel

Señales de confianza antes de integrar

Documentación transparente, solicitudes autenticadas y detalles visibles de fiabilidad facilitan evaluar DomScan antes de publicar.

En directo Estado del servicio

Consulta el estado del servicio en directo y las respuestas de error documentadas antes de integrar la API.

OpenAPI Artefactos de API

OpenAPI, Swagger, Postman, CLI, SDK y enlaces MCP están a un clic.

Claves API Acceso protegido

Los endpoints autenticados usan claves API con costes de créditos claros antes de llamarlos.

10,000 Créditos gratuitos

Empieza con 10.000 créditos mensuales y actualiza solo cuando crezca el uso.

Qué te ayuda a lanzar esta API

Usa esta página como un resumen de producción: endpoints, ejemplos, forma de respuesta y piezas de flujo necesarias para integrar DomScan en tu producto.

Flujos de producto

Integra comprobaciones de dominios, inteligencia DNS, señales de riesgo o enriquecimiento en onboarding, búsqueda y herramientas internas.

Automatización de analistas

Sustituye consultas manuales repetidas por tareas programadas, alertas y pasos de investigación reproducibles.

Datos JSON limpios

Usa campos previsibles, códigos de estado documentados y costes de créditos en lugar de raspar páginas de proveedores.

IA y operaciones

Alimenta agentes, paneles, playbooks SOAR y CRMs mediante OpenAPI, SDK, Postman o MCP.

Flujo de integración

Un camino simple desde la primera solicitud hasta un uso repetible en producción.

1
Autentica una vez

Envía tu clave API con la cabecera documentada y mantén solicitudes coherentes entre servicios.

2
Consulta con ejemplos

Empieza con las muestras curl y HTTP, y luego mapea los parámetros en el código de tu aplicación.

3
Opera y monitoriza

Usa códigos de estado, costes de créditos y campos de respuesta para crear reintentos, logs y alertas.

Kit para desarrolladores

Salta desde esta página a documentación legible por máquinas, colecciones de solicitudes, SDKs o herramientas para agentes.

Mapa de parámetros y respuesta

Revisa entradas, campos de salida y códigos de estado antes de conectar el endpoint a tu cliente.

Parámetros de solicitud

Parámetro

domain
Campos de respuesta

Respuesta de ejemplo

domainsecurity_scoresecurity_gradespfspf.existsspf.recordspf.validspf.policyspf.includesspf.dns_lookup_countspf.dns_lookup_limit_exceededspf.include_tree
Cobertura de estados

Códigos de estado HTTP

200400401402429

Endpoints

GET /v1/dns/security
Créditos: 3Autenticación: Autenticación requerida
domain

Señales de confianza antes de integrar

Documentación transparente, solicitudes autenticadas y detalles visibles de fiabilidad facilitan evaluar DomScan antes de publicar.

Estado del servicio Artefactos de API

OpenAPI, Swagger, Postman, CLI, SDK y enlaces MCP están a un clic.

Claves API Acceso protegido

Los endpoints autenticados usan claves API con costes de créditos claros antes de llamarlos.

Créditos gratuitos Regístrate Gratis

Empieza con 10.000 créditos mensuales y actualiza solo cuando crezca el uso.

Activo Solicitud de ejemplo

Empieza con las muestras curl y HTTP, y luego mapea los parámetros en el código de tu aplicación.

Características principales

Analisis SPF

Valida registros SPF y comprueba errores de configuracion comunes.

Deteccion DKIM

Comprueba registros DKIM en selectores comunes.

Validacion DMARC

Analiza la politica DMARC, porcentaje y direcciones de informes.

Verificacion DNSSEC

Verifica que DNSSEC esta habilitado y correctamente configurado.

Registros CAA

Comprueba la configuracion de Autorizacion de Autoridad de Certificados.

Puntuacion de Seguridad

Obtiene una puntuacion de 0-100 con calificacion por letra (A+ a F).

Recomendaciones Accionables

Orientacion clara sobre como mejorar tu postura de seguridad.

Deteccion MTA-STS

Comprueba Mail Transfer Agent Strict Transport Security.

Solicitud de ejemplo

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

Respuesta de ejemplo

200 OK json
{
  "domain": "google.com",
  "security_score": 97,
  "security_grade": "A+",
  "spf": {
    "exists": true,
    "record": "v=spf1 include:_spf.google.com ~all",
    "valid": true,
    "policy": "softfail",
    "includes": [
      "_spf.google.com"
    ],
    "dns_lookup_count": 1,
    "dns_lookup_limit_exceeded": false,
    "include_tree": [
      {
        "domain": "_spf.google.com",
        "lookups": 1
      }
    ],
    "lookup_walk_count": 1,
    "macros_present": false,
    "macro_references": [],
    "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": [],
    "issues": []
  },
  "dkim": {
    "exists": true,
    "selectors_checked": [
      "google",
      "selector1",
      "selector2"
    ],
    "selectors_found": [
      "google"
    ],
    "valid": true
  },
  "dmarc": {
    "exists": true,
    "record": "v=DMARC1; p=reject; rua=mailto:[email protected]",
    "valid": true,
    "policy": "reject",
    "subdomain_policy": "reject",
    "percentage": 100,
    "rua": [
      "mailto:[email protected]"
    ],
    "ruf": [],
    "issues": []
  },
  "bimi": {
    "exists": true,
    "record": "v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/vmc.pem",
    "logo_url": "https://example.com/logo.svg",
    "authority_url": "https://example.com/vmc.pem",
    "valid": true,
    "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": []
  },
  "dnssec": {
    "enabled": true,
    "valid": true,
    "algorithm": "ECDSAP256SHA256",
    "key_tag": 12345,
    "validation_status": "secure",
    "validated_by_proxy": true,
    "validation_reason": "chain validated via delv",
    "ds_records": [
      "12345 13 2 1a2b3c4d5e6f"
    ],
    "dnskey_records": [
      "256 3 13 AbCdEfGhIjKlMnOp"
    ],
    "rrsig_present": true,
    "resolver": "127.0.0.1",
    "mismatch_detail": {
      "checked": true,
      "mismatch_detected": false,
      "reason": "chain validated via delv",
      "ds_record_count": 1,
      "dnskey_record_count": 1,
      "rrsig_present": true,
      "validation_status": "secure",
      "resolver": "127.0.0.1"
    }
  },
  "caa": {
    "exists": true,
    "records": [
      {
        "flags": 0,
        "tag": "issue",
        "value": "pki.goog"
      }
    ],
    "issuers": [
      "pki.goog"
    ],
    "issue_wild": [],
    "iodef": "mailto:[email protected]"
  },
  "issuance_readiness": {
    "caa": {
      "exists": true,
      "records": [
        {
          "flags": 0,
          "tag": "issue",
          "value": "pki.goog"
        },
        {
          "flags": 0,
          "tag": "iodef",
          "value": "mailto:[email protected]"
        }
      ],
      "issue_issuers": [
        "pki.goog"
      ],
      "issuewild_issuers": [],
      "iodef": "mailto:[email protected]",
      "letsencrypt_allowed": false,
      "google_trust_services_allowed": true
    },
    "http01": {
      "challenge_path": "/.well-known/acme-challenge/domscan-probe-1713474000",
      "reachable": true,
      "ready": true,
      "status_code": 404,
      "final_url": "http://google.com/.well-known/acme-challenge/domscan-probe-1713474000",
      "redirects": 0,
      "error": null
    },
    "checked_at": "2026-04-18T21:00:00Z"
  },
  "authoritative_consistency": {
    "record_type": "SOA",
    "all_authoritative": true,
    "answer_sets_match": true,
    "inconsistent_nameservers": [],
    "consistent_serial": true,
    "serials": [
      {
        "host": "ns1.google.com",
        "udp_soa_serial": "2026041801",
        "tcp_soa_serial": "2026041801"
      }
    ],
    "reference_answers": [
      "google.com. 60 IN SOA ns1.google.com. dns-admin.google.com. 2026041801 900 900 1800 60"
    ]
  },
  "delegation_health": {
    "nameservers": [
      {
        "host": "ns1.google.com",
        "addresses": [
          "216.239.32.10"
        ],
        "in_bailiwick": false,
        "glue_required": false,
        "udp": {
          "authoritative": true,
          "status": "NOERROR",
          "query_ms": 14,
          "answer_count": 1,
          "answers": [
            "google.com. 60 IN SOA ns1.google.com. dns-admin.google.com. 2026041801 900 900 1800 60"
          ],
          "soa_serial": "2026041801",
          "truncated": false,
          "error": null
        },
        "tcp": {
          "authoritative": true,
          "status": "NOERROR",
          "query_ms": 18,
          "answer_count": 1,
          "answers": [
            "google.com. 60 IN SOA ns1.google.com. dns-admin.google.com. 2026041801 900 900 1800 60"
          ],
          "soa_serial": "2026041801",
          "truncated": false,
          "error": null
        },
        "lame": false,
        "issues": []
      }
    ],
    "in_bailiwick_nameservers": [],
    "glue_required_count": 0,
    "all_in_bailiwick_resolve": true,
    "missing_addresses": [],
    "lame_nameservers": []
  },
  "dns_transport": {
    "udp_working": true,
    "tcp_working": true,
    "tcp_supported_nameservers": [
      "ns1.google.com"
    ],
    "tcp_failed_nameservers": [],
    "truncation_tested": true,
    "truncation_nameserver": "ns1.google.com",
    "truncation_record_type": "DNSKEY",
    "truncation_observed": false,
    "tcp_fallback_ready": null
  },
  "nameserver_drift": {
    "checked": true,
    "drift_detected": false,
    "public_nameservers": [
      "ns1.google.com"
    ],
    "authoritative_nameservers": [
      "ns1.google.com"
    ],
    "missing_from_authority": [],
    "extra_at_authority": [],
    "inconsistent_nameservers": [],
    "serial_mismatch_detected": false
  },
  "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",
      "alt1.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": []
  },
  "resolver_latency": {
    "record_type": "MX",
    "resolvers": [
      {
        "resolver": "1.1.1.1",
        "label": "Cloudflare",
        "query_ms": 22,
        "status": "NOERROR",
        "answer_count": 5,
        "answers": [
          "aspmx.l.google.com"
        ],
        "server": "1.1.1.1#53",
        "error": null
      },
      {
        "resolver": "8.8.8.8",
        "label": "Google Public DNS",
        "query_ms": 3,
        "status": "NOERROR",
        "answer_count": 5,
        "answers": [
          "aspmx.l.google.com"
        ],
        "server": "8.8.8.8#53",
        "error": null
      }
    ],
    "min_ms": 3,
    "max_ms": 22,
    "avg_ms": 12.5
  },
  "zone_transfer": {
    "exposed": false,
    "nameservers": [
      {
        "host": "ns1.google.com",
        "exposed": false,
        "query_ms": 18,
        "records_returned": 0,
        "soa_seen": false,
        "reason": "transfer failed",
        "sample_records": []
      }
    ]
  },
  "blacklist": {
    "domain": "google.com",
    "listed": false,
    "threat_level": "none",
    "check_type": "domain",
    "checked_at": "2026-04-18T21:00:00Z"
  },
  "edge_summary": {
    "relay_configured": true,
    "evidence_sources": [
      "dnssec_validate",
      "axfr_check",
      "dns_authority_health",
      "dns_latency",
      "issuance_readiness",
      "mail_policies",
      "bimi_audit",
      "spf_walk"
    ],
    "secure_dns_chain": true,
    "zone_transfer_exposed": false,
    "authoritative_consistency_ok": true,
    "nameserver_drift_detected": false,
    "lame_nameserver_count": 0,
    "tcp_fallback_ready": null,
    "avg_resolver_latency_ms": 12.5,
    "fastest_resolver": "Google Public DNS",
    "slowest_resolver": "Cloudflare",
    "issuance_http01_ready": true,
    "caa_restricts_issuers": true,
    "bimi_vmc_valid": true,
    "mta_sts_enforced": true,
    "tls_rpt_configured": true,
    "spf_lookup_limit_exceeded": false
  },
  "recommendations": [],
  "checked_at": "2026-04-18T21:00:00Z",
  "check_duration_ms": 312
}

Preguntas frecuentes

¿Que es SPF, DKIM y DMARC?

SPF especifica que servidores pueden enviar correo electronico para tu dominio. DKIM anade una firma digital a los correos. DMARC indica a los servidores receptores que hacer con los correos que fallan las verificaciones SPF/DKIM. Juntos previenen la suplantacion de correo electronico.

¿Por que es importante la seguridad DNS?

Una seguridad DNS adecuada previene la suplantacion de correo electronico (ataques de phishing que fingen ser tu), mejora la entregabilidad del correo y protege la reputacion de tu marca.

¿Que es una buena puntuacion de seguridad?

Una puntuacion de 85+ (calificacion A o A+) indica seguridad excelente. 70-84 (B) es bueno. Por debajo de 70 indica margen significativo de mejora.

¿Como mejoro mi puntuacion de seguridad DNS?

Las mejoras comunes incluyen: anadir registros SPF con -all, configurar firma DKIM, implementar DMARC con politica de cuarentena/rechazo, habilitar DNSSEC y anadir registros CAA.

Herramientas y Recursos Relacionados

Códigos de estado HTTP

Documentamos los códigos de estado HTTP que debes gestionar para distinguir respuestas correctas, problemas de autenticación o créditos, límites de frecuencia, datos inexistentes y fallos del servicio de origen.

OK 200

Solicitud correcta

Solicitud incorrecta 400

Parámetros no válidos

No autorizado 401

Clave de API o sesión ausente o no válida.

Pago requerido 402

No tienes créditos suficientes para ejecutar esta solicitud.

Demasiadas solicitudes 429

Límite de frecuencia superado

Analiza la Seguridad DNS Gratis