Monitoraggio visivo
Scopra la pagina di pagamento diventata testo senza stile o l'immagine principale rotta, anche quando il testo della pagina è identico. Ogni controllo mostra la pagina come la vedrebbe un visitatore, la confronta con l'ultima acquisizione e la avvisa se appare diversa. Paga per controllo, senza abbonamento.
Il KIT fotografa una pagina a intervalli regolari e confronta gli scatti: se l'aspetto cambia — un banner nuovo, un layout che si rompe, un prezzo in vetrina — te lo segnala. Utile quando conta come appare la pagina all'occhio, non solo cosa dice il codice. La funzione è in beta.
Come funziona
A ogni controllo il KIT scatta una foto della pagina e la confronta con quella precedente. Se le due immagini differiscono, ricevi un avviso che l’aspetto è cambiato dall’ultimo controllo — un segnale di cambiamento, non l’indicazione esatta della zona che si è mossa. È il modo giusto quando ti interessa l'aspetto: un'immagine sostituita, un menu che sparisce, un elemento che scivola fuori posto.
Cose che il testo della pagina non racconta, ma che l'occhio del visitatore nota subito.
Visivo o testuale?
Se ti basta sapere che una parola o una data sono cambiate, il monitoraggio del testo costa meno ed è più che sufficiente. Il monitoraggio visivo serve quando conta la resa grafica: verificare che la tua home non si sia rotta dopo un aggiornamento, o accorgersi di un cambio di vetrina che nel codice quasi non si vede. Scegli il visivo quando l'immagine vale più delle parole.
Prezzo, limiti e beta
Essendo in beta e basato sul confronto tra immagini, le pagine con elementi che cambiano da soli — caroselli, banner rotanti, animazioni — possono generare falsi allarmi. In quei casi conviene sorvegliare pagine visivamente più stabili.
Casi d'uso
La tua home dopo un aggiornamento
Dopo ogni modifica al sito, il monitoraggio visivo ti avvisa se qualcosa si è rotto graficamente, prima che se ne accorgano i visitatori.
La vetrina che cambia
Segui una pagina in cui conta l'immagine — una vetrina, una locandina, un banner promo — e ti accorgi subito quando viene sostituita.
Landing di una campagna
Durante una campagna tieni d'occhio la landing: se un elemento sparisce o si sposta su un certo schermo, lo scopri all'istante.
Domande frequenti
In cosa è diverso dal monitoraggio del testo?
Il monitoraggio del testo nota le parole che cambiano; questo nota come cambia l'aspetto. Per un prezzo o una data basta il testo; per la grafica serve il confronto tra immagini.
Perché è in beta?
Perché confrontare immagini è delicato: elementi che si muovono da soli possono sembrare cambiamenti veri. Preferiamo avvisarti così regoli la soglia o scegli una zona più stabile.
Come evito i falsi allarmi con caroselli e banner?
È in beta ed è sensibile: su pagine molto animate può segnalare variazioni senza importanza. In pratica conviene sorvegliare pagine visivamente stabili, come un checkout o una pagina istituzionale, per ridurre il rumore.
Quanto costa?
A consumo, senza abbonamento: il conto dipende da quanto spesso vuoi fotografare la pagina.
Le immagini della pagina vengono conservate?
Servono a confrontare uno scatto con il successivo e a mostrarti la differenza. Non ne facciamo altro uso oltre al monitoraggio che hai impostato.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Un POST autenticato crea l'attività; il risultato arriva via webhook o con un link firmato. Questa capacità è disponibile via API, non come strumento web interattivo.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/web/monitor-visual \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com"}'const res = await fetch("https://api.kit.forhosting.com/web/monitor-visual", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"url": "https://example.com"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/monitor-visual",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"url": "https://example.com"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/monitor-visual", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"url":"https://example.com"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"url":"https://example.com"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/monitor-visual", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"url": "https://example.com"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.monitor_visual",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
timeout_sec | 30 |
max_crawl_pages | 25 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
422 | task_failed | L'attività non è andata a buon fine: non ti viene addebitato nulla. |
Note tecniche
Prezzo, limiti e beta
$0.040 a controllo, prezzo pubblicato, a consumo senza abbonamento.