DNS 1 Endpoints 8 Características principales

Analizador 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
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.

99.99% Disponibilidad

Los endpoints listos para producción están diseñados para 99,99% de disponibilidad y manejo de estados documentado.

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

200400402429500502503504

Endpoints

GET /v1/dns/security
Créditos: 2Autenticación: opcional
domain

Señales de confianza antes de integrar

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

Disponibilidad 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
Abrir
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:mailauth-reports@google.com",
    "valid": true,
    "policy": "reject",
    "subdomain_policy": "reject",
    "percentage": 100,
    "rua": [
      "mailto:mailauth-reports@google.com"
    ],
    "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"
  },
  "caa": {
    "exists": true,
    "records": [
      {
        "flags": 0,
        "tag": "issue",
        "value": "pki.goog"
      }
    ],
    "issuers": [
      "pki.goog"
    ],
    "issue_wild": [],
    "iodef": "mailto:security@google.com"
  },
  "issuance_readiness": {
    "caa": {
      "exists": true,
      "records": [
        {
          "flags": 0,
          "tag": "issue",
          "value": "pki.goog"
        },
        {
          "flags": 0,
          "tag": "iodef",
          "value": "mailto:security@google.com"
        }
      ],
      "issue_issuers": [
        "pki.goog"
      ],
      "issuewild_issuers": [],
      "iodef": "mailto:security@google.com",
      "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
  },
  "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:sts-reports@google.com",
    "valid": true,
    "rua": [
      "mailto:sts-reports@google.com"
    ],
    "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"
  },
  "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 manejar para distinguir respuestas correctas, problemas de autenticación, créditos, límites de velocidad, datos inexistentes y fallos del servicio de origen.

OK 200

Solicitud correcta

Solicitud incorrecta 400

Parámetros no válidos

Pago requerido 402

No tienes créditos suficientes para ejecutar esta solicitud.

Demasiadas solicitudes 429

Límite de velocidad excedido

Error del servidor 500

Error interno

Puerta de enlace incorrecta 502

Error del servicio RDAP de origen

Servicio no disponible 503

El servicio ascendente no está disponible o está limitando temporalmente.

Tiempo de espera agotado del gateway 504

La consulta ascendente agotó el tiempo de espera.

Analiza la Seguridad DNS Gratis