Données structurées
Cet outil produit le balisage de données structurées d’une page en JSON-LD, celui que Google recommande. À partir du contenu, il génère le bloc Schema.org adapté — produit, article, FAQ, entreprise locale — prêt à insérer. Utile aux sites qui visent les résultats enrichis de Google : étoiles, prix, questions dépliables.
Exécuter en ligne
Exécutez cette tâche sur nos serveurs, avec votre compte. Les outils gratuits tournent dans votre navigateur ; celui-ci est facturé sur votre solde KIT au prix affiché ci-dessus.
Ce que sont les données structurées
Les données structurées décrivent le contenu d’une page dans un langage que Google comprend sans deviner : ceci est un produit, voici son prix, voilà l’auteur de l’article. Écrites en JSON-LD selon le vocabulaire Schema.org, elles ne changent rien à l’affichage pour le visiteur, mais permettent à Google d’afficher des résultats enrichis — note en étoiles, disponibilité, questions repliables. C’est souvent ce qui distingue un lien ordinaire d’un résultat qui attire l’œil.
Les types couverts
L’outil reconnaît les schémas les plus utiles au quotidien : Product avec prix et disponibilité, Article et BlogPosting, FAQPage, Recipe, LocalBusiness pour un commerce ayant pignon sur rue, ou Organization pour une société. Vous choisissez le type visé ou le laissez détecter d’après le contenu ; le bloc renvoyé respecte la syntaxe attendue et se glisse tel quel dans une balise script du gabarit de page.
Vérifier avant de publier
Un balisage généré n’est utile que s’il correspond à ce que voit vraiment l’internaute : annoncer un prix ou un avis absent de la page expose à une pénalité. Contrôlez donc que chaque valeur figure bien dans le contenu visible, puis passez le résultat dans l’outil de test des résultats enrichis de Google. Le JSON-LD produit ici vous fait gagner l’écriture ; la relève des données reste votre responsabilité.
Le tarif et les canaux
Le service se paie à l’usage, en dollars US : $0.003 par requête plus $0.0135 par page. Vous générez le balisage depuis cette page, ou via l’API pour équiper d’un coup toutes les fiches d’une boutique. Aucun abonnement, aucun compte : vous ne payez que les pages réellement traitées, un tarif calculé sur le nombre réel de pages, et une facture peut vous être adressée pour vos frais professionnels.
Cas d’usage
Résultats enrichis pour une boutique
Atelier Garnier SARL veut voir apparaître le prix et la note de ses meubles dans Google. L’outil génère le schéma Product de chaque fiche, avec prix en euros et disponibilité, prêt à coller dans le gabarit.
Fiche établissement local
Menuiserie Rousseau & Fils met en ligne sa page contact et génère un bloc LocalBusiness : adresse, horaires, téléphone au format 01 23 45 67 89, pour aider Google à afficher la fiche du menuisier.
Bloc FAQ replié
Une association ajoute une foire aux questions à son site et balise chaque question en FAQPage, dans l’espoir que Google déplie les réponses directement dans les résultats de recherche.
Questions fréquentes
Le JSON-LD est-il le bon format pour Google ?
Oui. Google recommande explicitement le JSON-LD, placé dans une balise script, plutôt que le balisage inséré au milieu du HTML. C’est le format que produit l’outil, sans que vous ayez à modifier la structure de votre page.
Les données structurées améliorent-elles mon classement ?
Pas directement. Elles n’augmentent pas le positionnement en soi, mais rendent possibles les résultats enrichis — étoiles, prix, FAQ dépliée — qui font ressortir votre lien et peuvent améliorer le taux de clic.
Puis-je baliser un prix qui n’apparaît pas sur la page ?
Non, et c’est à éviter absolument. Le balisage doit refléter le contenu visible par l’internaute ; déclarer un prix ou un avis absent de la page expose à une pénalité de Google. Vérifiez chaque valeur avant publication.
Combien coûte la génération d’un balisage ?
$0.003 par requête plus $0.0135 par page, en dollars US. Baliser une dizaine de fiches revient à quelques centimes, calculés sur le nombre réel de pages, sans abonnement.
Mon contenu est-il conservé après le traitement ?
Non. Le contenu passe par nos serveurs le temps de générer le balisage, par transfert chiffré, puis il est supprimé. La génération suppose un traitement côté serveur, que nous assumons clairement.
Faut-il vérifier le résultat après coup ?
C’est vivement conseillé. Passez le JSON-LD dans l’outil de test des résultats enrichis de Google : il confirme que la syntaxe est valide et que le type est bien reconnu avant la mise en ligne.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/seo/schema-generate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/seo/schema-generate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/seo/schema-generate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/seo/schema-generate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/seo/schema-generate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"input": "…"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "seo.schema_generate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
413 | input_too_large | Entrée trop volumineuse : consultez la limite de taille de cette capacité. |
422 | task_failed | La tâche a échoué : elle ne vous est pas facturée. |