Screenshot automatici
Uno strumento che cattura una pagina web a intervalli regolari, senza che tu debba ricordartene. Imposti l’indirizzo e ogni quanto scattare — ogni giorno, ogni settimana — e il KIT genera lo screenshot da solo, così ti costruisci nel tempo una serie di immagini datate: com’era la pagina ieri, la settimana scorsa, un mese fa.
La cattura che si ripete da sola
A volte non ti basta una foto oggi: vuoi una sequenza. Come si presentava la home la prima di ogni mese, come cambiava un listino nel tempo, quando è comparso un certo avviso. Con la cattura programmata imposti una volta l’URL e la cadenza, poi lo strumento scatta in automatico e conserva ogni immagine con la sua data. Non devi collegarti ogni giorno: ti ritrovi la serie storica pronta, utile per confronti e per avere una prova di com’era la pagina in un dato momento.
Come si imposta
Indichi l’indirizzo, scegli la frequenza e attivi. Da lì il KIT si occupa del resto: a ogni scatto apre la pagina in un browser vero, cattura il PNG e lo mette nella tua serie. Puoi ricevere un avviso a ogni nuova cattura. È un servizio pianificato, quindi lavora in sottofondo anche a computer spento. Quando ti serve, scarichi le immagini della sequenza e le confronti.
Quanto costa
Ogni cattura costa $0.040 più $0.001 per URL, circa quattro centesimi a scatto: paghi le catture che vengono effettivamente eseguite, non un canone fisso. Più è fitta la frequenza, più scatti si accumulano — lo decidi tu. Nessun abbonamento nascosto: è sempre pagamento a consumo, con PayPal. Se preferisci gestire la pianificazione dai tuoi sistemi, la stessa cattura programmata si comanda via API.
Casi d'uso
La serie storica di un listino
Rossi & Figli S.r.l. tiene d’occhio il listino pubblico di un fornitore. Imposta una cattura settimanale: nel tempo ha una sequenza datata che mostra ogni variazione di prezzo, senza controllare a mano ogni lunedì.
Una prova periodica di com’era la pagina
Uno Studio legale di Roma vuole documentare mese per mese le condizioni pubblicate su un sito. La cattura programmata gli lascia un archivio ordinato di immagini con data, pronto all’occorrenza.
Controllare una home dopo ogni aggiornamento
Un’agenzia di Milano gestisce il sito di un cliente che pubblica novità di continuo. Una cattura giornaliera le permette di ricostruire com’era la home in qualsiasi giorno, se qualcosa va storto.
Domande frequenti
Ogni quanto può scattare?
Scegli tu la cadenza — per esempio giornaliera o settimanale. Lo strumento esegue la cattura in automatico a ogni intervallo e conserva l’immagine con la sua data, costruendo la tua serie storica.
Devo tenere il computer acceso?
No. La pianificazione gira sui nostri server: le catture avvengono in sottofondo anche a computer spento. Tu ritrovi le immagini pronte quando ti colleghi.
Come si paga una cosa che si ripete nel tempo?
Si paga a consumo, cattura per cattura: $0.040 più $0.001 per URL a scatto. Non c’è un canone fisso: se una settimana sospendi la pianificazione, quelle catture non le paghi. Il pagamento è con PayPal.
Ricevo un avviso a ogni nuova cattura?
Sì, puoi impostare una notifica a ogni scatto, così sai quando c’è una nuova immagine nella serie senza dover controllare.
Le immagini vengono conservate?
Le catture della tua serie restano disponibili a te per il confronto nel tempo; la pagina di origine viene aperta solo per generarle. Se vuoi cancellare la serie, basta fermare la pianificazione e chiederci la rimozione.
Posso gestirlo dal telefono?
Sì, imposti e controlli la pianificazione dal browser del telefono, senza installare nulla.
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
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/web/screenshot-scheduled \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://ejemplo.com"}'const res = await fetch("https://api.kit.forhosting.com/web/screenshot-scheduled", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"url": "https://ejemplo.com"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/screenshot-scheduled",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"url": "https://ejemplo.com"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/screenshot-scheduled", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"url":"https://ejemplo.com"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"url":"https://ejemplo.com"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/screenshot-scheduled", 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://ejemplo.com"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.screenshot_scheduled",
"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. |