SeixVigia SeixVigia ← Volver a la app

API de SeixVigia para desarrolladores

Integra en tus propios aplicativos el motor de SeixVigia: verificación de mensajes y enlaces, reputación rápida de dominios, segunda opinión, auditoría pública de un dominio y auditoría de una web. Respuestas JSON, CORS abierto y límites de uso razonables por IP.

Base · https://vigia.seix.net/api/v1 · también en https://vigia.flyxs.com/api/v1
Formato: JSON (Content-Type: application/json). Sin clave para uso moderado (ver límites). Las claves de integrador se emiten por solicitud.

Endpoints

GET /api/v1/salud

Estado del servicio.

curl https://vigia.seix.net/api/v1/salud
{ "ok": true, "service": "seixvigia" }

POST /api/v1/verificar

Verificación de un mensaje o enlace antes de abrirlo: extrae los dominios del texto y devuelve la reputación de cada uno con sus señales (dominio oficial reconocido, acortador, si resuelve o no) y un resumen. Es la capa rápida del servidor; el veredicto completo combina estas señales con las reglas que corren en el equipo del usuario.

Cuerpo JSON{ "texto": "mensaje o enlace a verificar" } — también acepta { "url": "..." }
Límite20 consultas por minuto por IP · hasta 4 enlaces por texto
curl -X POST https://vigia.seix.net/api/v1/verificar \
  -H "Content-Type: application/json" \
  -d '{"texto":"Tu cuenta fue bloqueada. Entra ya: https://bit.ly/3xYz y confirma tus datos"}'
{
  "ok": true,
  "enlaces": 1,
  "hosts": ["bit.ly"],
  "resultados": { "bit.ly": { "host": "bit.ly", "acortador": true, "resuelve": true, "cache": false } },
  "resumen": "Se detectaron señales de riesgo en 1 de 1 enlaces: revísalos antes de abrirlos.",
  "ms": 41
}

POST /api/v1/reputacion

Reputación rápida de hasta 4 dominios, con caché agresiva (10 minutos): si es un dominio oficial conocido, si es un acortador y si resuelve en DNS.

curl -X POST https://vigia.seix.net/api/v1/reputacion \
  -H "Content-Type: application/json" \
  -d '{"hosts":["paypal.com","banco-ejemplo.xyz"]}'
{
  "ok": true,
  "resultados": {
    "paypal.com": { "host": "paypal.com", "oficial": "paypal.com", "resuelve": true, "cache": true },
    "banco-ejemplo.xyz": { "host": "banco-ejemplo.xyz", "resuelve": true, "cache": false }
  },
  "ms": 58
}

POST /api/v1/opinion

Segunda opinión de un asistente experto sobre un mensaje sospechoso, en español claro (máximo ~60 palabras). Refuerzo opcional del veredicto.

Cuerpo JSON{ "texto": "el mensaje" } (mínimo 8 caracteres)
Límite6 consultas por minuto por IP
curl -X POST https://vigia.seix.net/api/v1/opinion \
  -H "Content-Type: application/json" \
  -d '{"texto":"Ganaste un premio. Reclámalo hoy pagando solo el envío."}'
{ "ok": true, "nota": "Parece fraude: los premios legítimos no piden pagos por adelantado..." }

GET /api/v1/auditoria/dominio?domain=tuempresa.com

Auditoría pública externa de un dominio: SPF, DMARC, DKIM (selectores comunes), certificado TLS y preparación post-cuántica (si negocia el grupo híbrido X25519MLKEM768). Todo se mide desde fuera, con datos reales; lo que no se puede verificar se declara como tal.

Límite12 auditorías por minuto por IP · tarda unos segundos (consultas DNS y TLS en vivo)
curl "https://vigia.seix.net/api/v1/auditoria/dominio?domain=google.com"
{
  "ok": true,
  "audit": {
    "domain": "google.com",
    "spf": { "found": true, "ending": "-all", "hard": true, "soft": false, "record": "v=spf1 -all" },
    "dmarc": { "found": true, "policy": "reject", "record": "v=DMARC1; p=reject; ..." },
    "dkim": { "found": true, "selectors": ["google"], "tried": 16 },
    "tls": { "ok": true, "authorized": true, "issuer": "Google Trust Services", "daysLeft": 62 },
    "pq": { "estado": "si", "detalle": "Negocia el grupo híbrido X25519MLKEM768" }
  }
}

GET /api/v1/auditoria/web?domain=tusitio.com

Auditoría de una web: TLS y preparación post-cuántica, reputación en la lista pública Spamhaus DBL, encabezados de seguridad, contenido mixto y scripts de terceros con señales de sospecha.

Límite8 auditorías por minuto por IP
curl "https://vigia.seix.net/api/v1/auditoria/web?domain=ejemplo.com"

Límites y errores

Cada endpoint tiene su límite por IP (arriba) y la puerta de enlace aplica un techo general de 60 solicitudes por minuto por IP a /api/v1. Al superarlo, la respuesta es 429 con cuerpo JSON: { "ok": false, "error": "Demasiadas consultas seguidas. Espera un minuto." }. Un dominio inválido devuelve 400 y una ruta inexistente, 404, siempre en JSON.

Honestidad técnica: esta API mide la superficie pública (DNS, TLS, reputación, contenido servido). No inspecciona el interior de ningún sistema ni detiene ataques en curso: detecta el riesgo visible y ayuda a corregirlo.

Claves de integrador

Para volúmenes mayores, uso comercial o límites dedicados, emitimos claves de acceso por solicitud: escríbenos desde seix.net contándonos tu caso de uso. La clave viajará en el encabezado X-Vigia-Key y habilitará cuotas propias por integrador (sistema en despliegue; hoy la API funciona sin clave dentro de los límites públicos).