Ir al contenido principal

Documentación de la API

REST API v1 – Disponible en planes Enterprise

Autenticación

Todas las solicitudes API requieren un token Bearer en la Authorization cabecera. Genere claves API desde Configuración.

curl -H "Authorization: Bearer sg_live_your_key_here" \ https://siteguardian.io/api/v1/monitors

Límite de tasa: 120 solicitudes por minuto por clave API. Exceder esto devuelve 429 Too Many Requests.

Formato de respuesta

Todas las respuestas devuelven JSON con una estructura consistente:

// Success
{
  "data": { ... },
  "meta": { "timestamp": "2026-03-20T14:30:00+00:00" }
}

// Paginated
{
  "data": [ ... ],
  "meta": { "total": 42, "limit": 50, "offset": 0 }
}

// Error
{
  "detail": "Monitor not found."
}

Endpoints

M Monitores

Método Endpoint Descripción
GET/api/v1/monitorsListar todos los monitores
POST/api/v1/monitorsCrear un monitor
GET/api/v1/monitors/:idObtener detalles del monitor
PATCH/api/v1/monitors/:idActualizar configuración del monitor
DELETE/api/v1/monitors/:idEliminar monitor
POST/api/v1/monitors/:id/pausePausar monitorización
POST/api/v1/monitors/:id/resumeReanudar monitorización
Ejemplo: Crear un monitor
curl -X POST https://siteguardian.io/api/v1/monitors \
  -H "Authorization: Bearer sg_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com",
    "name": "My Website",
    "check_type": "all"
  }'
Ejemplo: Actualizar configuración del monitor
curl -X PATCH https://siteguardian.io/api/v1/monitors/:id \
  -H "Authorization: Bearer sg_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Updated Name",
    "ssl_warn_days": 14,
    "rt_alert_enabled": true,
    "rt_sensitivity": 2.5
  }'

C Resultados de verificación

Método Endpoint Descripción
GET/api/v1/monitors/:id/checksListar resultados de verificación (paginados)
GET/api/v1/monitors/:id/uptimeObtener porcentaje de tiempo de actividad
Parámetros de consulta

limit – Resultados por página (1-500, predeterminado 50)

offset – Saltar N resultados (predeterminado 0)

check_type – Filtrar: http, ssl, domain, email, pagespeed

days – Período de cálculo de tiempo de actividad (1-365, predeterminado 30)

A Alertas

Método Endpoint Descripción
GET/api/v1/alertsListar alertas recientes (paginadas)
GET/api/v1/alerts/:idObtener una alerta

I Incidentes

Método Endpoint Descripción
GET/api/v1/incidentsListar incidentes (filtrar: ?status=open)
PATCH/api/v1/incidents/:id/acknowledgeReconocer incidente
PATCH/api/v1/incidents/:id/resolveResolver incidente
Ejemplo: Resolver un incidente
curl -X PATCH https://siteguardian.io/api/v1/incidents/:id/resolve \
  -H "Authorization: Bearer sg_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "note": "Fixed the DNS configuration" }'

K Claves API

Método Endpoint Descripción
POST/api/v1/api-keysGenerar nueva clave API (devuelve la clave una vez)
GET/api/v1/api-keysListar claves API (solo prefijo)
DELETE/api/v1/api-keys/:idRevocar clave API

Importante: La clave API completa solo se devuelve una vez al crearla. Guárdela de forma segura — solo conservamos un hash.

Tipos de alerta

Tipo Descripción
downEl monitor está caído (error HTTP o tiempo de espera agotado)
recoveredEl monitor se recuperó de la caída
ssl_expiringEl certificado SSL expira dentro del umbral
domain_expiringEl dominio expira dentro del umbral
response_timeAnomalía de tiempo de respuesta detectada
email_blacklistedIP incluida en lista negra DNS
email_issuesProblema crítico de salud del correo (SPF/DKIM/DMARC)

Códigos de estado HTTP

Código Significado
200Éxito
201Recurso creado
400Solicitud incorrecta (entrada no válida)
401No autorizado (clave API faltante o no válida)
403Prohibido (límite del plan alcanzado)
404Recurso no encontrado
429Límite de tasa excedido