Campi Schema.org obbligatori e consigliati
Scegliere un tipo Schema.org è soltanto il primo passo per creare dati strutturati utili.
Esegui gratis nel browser
Le proprietà incluse determinano se i motori di ricerca e gli altri sistemi riescono a comprendere la pagina. Questa ricerca accetta nomi noti come Article, Product, Recipe o FAQPage e restituisce subito un elenco pratico dei campi. Separa le proprietà comunemente obbligatorie dai miglioramenti consigliati, usa nomi canonici e rifiuta chiaramente i tipi sconosciuti, evitando che i processi automatizzati proseguano sulla base di un'ipotesi non dichiarata.
Inizi dal tipo che rappresenta esattamente la Sua pagina
I dati strutturati funzionano meglio quando il tipo scelto descrive l'argomento principale della pagina, non soltanto un suo piccolo elemento. Inserisca un tipo Schema.org come Product per un articolo acquistabile, Recipe per istruzioni di cucina, Article per contenuti editoriali o LocalBusiness per un'attività con una sede fisica. La ricerca non distingue tra maiuscole e minuscole e accetta anche l'URL schema.org completo del tipo, una comodità quando il valore proviene da un documento JSON-LD esistente. La risposta restituisce nome e URL canonici insieme a due elenchi ordinati di proprietà. Se il nome non appartiene al catalogo supportato, la capacità genera un errore di input invece di inventare una corrispondenza approssimativa. Nei flussi di pubblicazione, un refuso come Productt interrompe quindi la compilazione anziché produrre markup apparentemente plausibile ma privo di un significato definito. Scelga il tipo supportato più specifico e accurato. La ricerca riguarda tipi diffusi nelle implementazioni SEO e non tutte le classi del vocabolario Schema.org completo.
Legga i campi come una lista pratica di implementazione
Schema.org è un vocabolario e non impone universalmente le proprietà come farebbe lo schema di un database. Le funzionalità di ricerca, i validatori e gli altri sistemi applicano requisiti propri, che possono cambiare in base alla piattaforma e alla presentazione. Per questo, l'elenco obbligatorio indica le proprietà comunemente considerate il minimo utile per la SEO, mentre i campi consigliati migliorano in genere completezza, idoneità o qualità del risultato visualizzato. Colleghi prima ogni proprietà obbligatoria a informazioni reali e visibili nella pagina. Aggiunga poi quelle consigliate quando dispone di dati affidabili. Non inventi mai valutazioni, prezzi, autori, immagini, disponibilità o date solo per completare l'elenco. Un oggetto più breve ma coerente con il contenuto è più sicuro di un markup ricco che contraddice ciò che vedono i visitatori. Alcune proprietà contengono oggetti annidati, come offers in Product, author in Article, location in Event e mainEntity in FAQPage. La ricerca indica tali proprietà di livello superiore, ma non genera valori annidati né convalida un intero grafo JSON-LD.
Usi risultati deterministici nei controlli e nella pubblicazione
La ricerca utilizza un catalogo fisso in memoria, senza rete, modelli, casualità o dipendenze dall'orologio; lo stesso tipo supportato produce quindi sempre il medesimo risultato ordinato. È adatta ad audit ripetibili, generatori di moduli, modelli di schema, script di migrazione e controlli di integrazione continua. Un CMS può richiedere l'elenco quando chi cura i contenuti seleziona un tipo, segnalare gli input obbligatori mancanti e presentare separatamente i miglioramenti consigliati. Uno strumento di audit può confrontare le chiavi JSON-LD esistenti con la risposta e indicare le lacune senza considerare ogni raccomandazione un errore. Un generatore può usare l'URL canonico e mantenere l'ordine dei campi per un'interfaccia prevedibile. Consideri il risultato un punto di partenza pratico e controlli la documentazione aggiornata di ogni motore di ricerca i cui risultati avanzati siano essenziali, perché le sue regole specifiche non rientrano in questo catalogo offline. Una richiesta API costa $0.002, mentre il browser usa la stessa logica pura. Un tipo non supportato produce intenzionalmente un errore con il nome inviato e le opzioni ammesse.
Casi d'uso
Progettare un modello JSON-LD
Ottenga un elenco stabile prima di creare i campi CMS destinati a un nuovo modello di dati strutturati.
Verificare le proprietà mancanti
Confronti le chiavi del markup esistente con i campi minimi e aggiuntivi comuni del tipo dichiarato.
Guidare la redazione dei contenuti
Mostri prima gli input obbligatori e poi i miglioramenti consigliati quando viene scelto un tipo di pagina.
Domande frequenti
Questi campi sono imposti da Schema.org?
No. Schema.org definisce un vocabolario, ma di norma non impone proprietà. L'elenco obbligatorio rappresenta i minimi comuni nelle implementazioni SEO.
Che cosa accade se un tipo non viene riconosciuto?
La richiesta restituisce un errore di input ed elenca i nomi canonici supportati. Non tenta mai di indovinare un sostituto.
Posso inviare un URL Schema.org completo?
Sì. Un valore come https://schema.org/Product viene normalizzato nel tipo canonico Product.
Il risultato include le strutture delle proprietà annidate?
No. Elenca proprietà comuni di livello superiore. Gli oggetti annidati come Offer, Person o PostalAddress vanno creati e convalidati separatamente.
Quanto costa una ricerca tramite API?
Ogni richiesta API costa $0.002. L'algoritmo è deterministico e non chiama servizi esterni.
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/seo/schema-type-lookup \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"type":"Product"}'const res = await fetch("https://api.kit.forhosting.com/seo/schema-type-lookup", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"type": "Product"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/seo/schema-type-lookup",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"type": "Product"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/seo/schema-type-lookup", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"type":"Product"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"type":"Product"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/seo/schema-type-lookup", 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
{
"type": "Product"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "seo.schema_type_lookup",
"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.
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. |