Vai al contenuto principale

Documentazione API

REST API v1 – Disponibile con i piani Enterprise

Autenticazione

Tutte le richieste API richiedono un token Bearer nell' Authorization intestazione. Generare le chiavi API da Impostazioni.

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

Limite di frequenza: 120 richieste al minuto per chiave API. Il superamento restituisce 429 Too Many Requests.

Formato della risposta

Tutte le risposte restituiscono JSON con una struttura coerente:

// 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."
}

Endpoint

M Monitor

Metodo Endpoint Descrizione
GET/api/v1/monitorsElenco di tutti i monitor
POST/api/v1/monitorsCrea un monitor
GET/api/v1/monitors/:idDettagli del monitor
PATCH/api/v1/monitors/:idAggiorna impostazioni del monitor
DELETE/api/v1/monitors/:idElimina monitor
POST/api/v1/monitors/:id/pauseSospendi monitoraggio
POST/api/v1/monitors/:id/resumeRiprendi monitoraggio
Esempio: Crea 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"
  }'
Esempio: Aggiorna impostazioni 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 Risultati dei controlli

Metodo Endpoint Descrizione
GET/api/v1/monitors/:id/checksElenco risultati dei controlli (paginato)
GET/api/v1/monitors/:id/uptimeOttieni percentuale di uptime
Parametri di query

limit – Risultati per pagina (1-500, predefinito 50)

offset – Salta N risultati (predefinito 0)

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

days – Periodo di calcolo dell'uptime (1-365, predefinito 30)

A Avvisi

Metodo Endpoint Descrizione
GET/api/v1/alertsElenco degli avvisi recenti (paginato)
GET/api/v1/alerts/:idOttieni singolo avviso

I Incidenti

Metodo Endpoint Descrizione
GET/api/v1/incidentsElenco incidenti (filtro: ?status=open)
PATCH/api/v1/incidents/:id/acknowledgePrendi in carico l'incidente
PATCH/api/v1/incidents/:id/resolveRisolvi incidente
Esempio: Risolvi 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 Chiavi API

Metodo Endpoint Descrizione
POST/api/v1/api-keysGenera nuova chiave API (restituita una sola volta)
GET/api/v1/api-keysElenco chiavi API (solo prefisso)
DELETE/api/v1/api-keys/:idRevoca chiave API

Importante: La chiave API completa viene restituita una sola volta al momento della creazione. Conservarla in modo sicuro – viene memorizzato solo l'hash.

Tipi di avviso

Tipo Descrizione
downIl monitor è non attivo (errore HTTP o timeout)
recoveredIl monitor si è ripristinato dal periodo di inattività
ssl_expiringIl certificato SSL scade entro la soglia
domain_expiringIl dominio scade entro la soglia
response_timeAnomalia del tempo di risposta rilevata
email_blacklistedIP presente nella blacklist DNS
email_issuesProblema critico di salute e-mail (SPF/DKIM/DMARC)

Codici di stato HTTP

Codice Significato
200Successo
201Risorsa creata
400Richiesta non valida (input non valido)
401Non autorizzato (chiave API mancante o non valida)
403Vietato (limite del piano raggiunto)
404Risorsa non trovata
429Limite di frequenza superato