Anteprima link
Quando incolli un link in WhatsApp o su un social, appare una scheda con titolo, immagine e una breve descrizione. Il KIT ti mostra in anticipo esattamente quella scheda, leggendo i tag Open Graph della pagina: così vedi come apparirà il tuo link e capisci perché, a volte, resta senza foto.
Esegui online
Esegui questo sui nostri server con il tuo account. Gli strumenti gratuiti girano nel tuo browser; questo viene addebitato sul tuo saldo KIT al prezzo indicato sopra.
Perché a volte l'anteprima è vuota
Il riquadro con foto e titolo nasce dai tag Open Graph: og:title, og:image, og:description. Se mancano, o se l'immagine indicata è troppo pesante o non raggiungibile, WhatsApp e i social non riescono a costruire la scheda e mostrano solo il link nudo. Il KIT ti dice quali di quei tag ci sono e quali no, così capisci al volo se il problema è un'immagine assente, un titolo non impostato o un indirizzo scritto male.
Controlla prima di condividere
Stai per pubblicare l'articolo del blog o la scheda di un prodotto: incolli l'indirizzo e vedi subito come apparirà il link nei messaggi e nei post. Se la descrizione è tagliata a metà o l'immagine è quella sbagliata, lo scopri prima, non dopo che il post è già online con l'anteprima storta e i primi commenti sono arrivati.
Il caso della cache
WhatsApp e Facebook tengono in memoria la vecchia anteprima per un po'. Se hai appena corretto l'immagine e il link mostra ancora quella di prima, non stai sbagliando: è la cache del social. Il KIT ti mostra i tag reali e attuali della pagina, così distingui un errore vero nel codice da una semplice anteprima rimasta in memoria, che si aggiorna da sola col tempo.
Casi d'uso
Il post che non tira
Pubblichi la promo di Rossi & Figli su Facebook e l'anteprima esce senza immagine. Controlli il link e scopri che manca del tutto il tag og:image: lo aggiungi e il post riprende colore.
Il link nella newsletter
Prima di inviare l'email con il link al catalogo, verifichi che l'anteprima mostri il nome giusto dell'azienda e non un titolo generico lasciato dal tema del sito.
Home contro scheda prodotto
Confronti come appaiono due pagine diverse: la home ha foto e descrizione a posto, la scheda prodotto no. Sai subito dove intervenire.
Domande frequenti
Perché il mio link su WhatsApp non mostra l'immagine?
Quasi sempre manca il tag og:image, oppure l'immagine indicata è troppo grande o non è pubblica. Lo strumento ti dice se il tag c'è e a quale file punta.
Ho corretto tutto ma Facebook mostra ancora la vecchia anteprima. Perché?
È la cache del social, non un errore tuo. Il KIT ti conferma che i tag della pagina ora sono corretti: quando il social aggiorna la memoria, comparirà la versione nuova.
Vale anche per Telegram, LinkedIn e X?
Sì. Leggono tutti gli stessi tag Open Graph, quindi l'anteprima che vedi qui è, in pratica, quella che useranno anche loro.
Quanto costa provarlo?
$0.002 a richiesta, senza abbonamento. Un controllo costa pochissimo e non serve aprire un account per farlo.
I link che controllo restano salvati da qualche parte?
No. La pagina viene letta sul momento per estrarre i tag e poi scartata: non teniamo un registro degli indirizzi che verifichi.
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/link-preview \
-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/link-preview", {
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/link-preview",
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/link-preview", 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/link-preview", 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.link_preview",
"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. |