Schema.orgタイプの必須・推奨フィールド検索
Schema.orgタイプの選択は、有用な構造化データを作成する最初の段階にすぎません。どのプロパティを含めるかによって、検索エンジンなどがページを正しく理解できるかが決まります。この検索ではArticle、Product、Recipe、FAQPageなどのタイプ名を受け取り、実用的なフィールド一覧をすぐに返します。一般的な必須項目と推奨項目を分け、正規名を使用します。未知のタイプは明確にエラーにするため、自動処理が推測に基づいて進むことはありません。
無料で実行
ページを正確に表すタイプから始めてください
構造化データは、ページ上の小さな要素ではなく、中心となる題材を表すタイプを選ぶと最も効果的です。購入できる商品にはProduct、調理手順にはRecipe、編集記事にはArticle、実店舗を持つ事業にはLocalBusinessのように指定してください。大文字と小文字は区別されず、schema.orgの完全なタイプURLも受け付けます。そのため、既存のJSON-LD文書から取得した値も扱いやすくなっています。応答には正規のタイプ名とURLに加え、順序が一定の2つのプロパティ一覧が含まれます。名前が対応カタログに存在しない場合、近い候補を勝手に選ばず、入力エラーを返します。この動作により、公開処理でProducttのような誤記があればビルドを停止でき、意味が定義されていないのに正しそうに見えるマークアップを生成せずに済みます。対応する範囲で、内容に最も具体的かつ正確なタイプを選択してください。本機能はSEOでよく使われるタイプを対象としており、Schema.org語彙の全クラスを網羅するものではありません。
実装用チェックリストとして結果を解釈してください
Schema.orgは語彙体系であり、データベーススキーマのようにプロパティを一律に義務付けるものではありません。検索機能、検証ツール、後続システムはそれぞれ独自の掲載条件を設けており、プラットフォームや表示形式によって変わる場合があります。そのため、必須一覧はSEO実装で一般に最低限必要とされるプロパティを示し、推奨一覧は完全性、掲載資格、表示品質を高める項目を示します。まず、各必須プロパティをページ上で確認できる実際の情報に対応させてください。信頼できる元データがある場合のみ、推奨項目を追加します。チェックを埋めるためだけに、評価、価格、著者、画像、在庫状況、日付などを作り出してはいけません。ページ内容に忠実な短いオブジェクトのほうが、閲覧者に見える内容と矛盾する豊富なマークアップより安全です。offers、author、location、mainEntityなど、一部のプロパティは入れ子オブジェクトを含みます。本検索は最上位名を示しますが、入れ子の値の生成やJSON-LDグラフ全体の検証は行いません。
監査や公開処理で決定的な結果をご利用ください
この検索は、ネットワーク、モデル、乱数、時刻に依存しない固定のメモリ内カタログを使用します。そのため、同じ対応タイプからは常に同じ順序の結果が得られます。再現可能なコンテンツ監査、フォーム作成、スキーマテンプレート、移行スクリプト、継続的インテグレーションの確認に適しています。CMSでは、編集者がコンテンツタイプを選んだ時点で一覧を取得し、欠けている必須入力を示しながら、推奨項目を別に提示できます。監査ツールでは、既存のJSON-LDキーと応答を比較し、すべての推奨事項をエラー扱いせずに不足を報告できます。生成ツールでは正規URLと一定のフィールド順を利用し、予測しやすい画面を提供できます。結果は実用的な出発点として扱い、リッチリザルトが重要な検索サービスについては最新の公式資料も確認してください。各サービス固有の規則は、このオフラインカタログの対象外です。APIリクエストの料金は$0.002で、ブラウザーでも同じ純粋なロジックを使用します。未対応タイプには、入力名と選択肢を含む明確なエラーを返します。
活用例
JSON-LDテンプレートの設計
新しい構造化データ用のCMSフィールドを設計する前に、安定した一覧を取得できます。
不足プロパティの監査
既存マークアップのキーを、宣言タイプで一般的な最小項目と追加項目に照らして確認できます。
コンテンツ編集者への案内
ページタイプの選択時に、必須入力を先に、推奨される追加情報を後に表示できます。
よくある質問
これらのフィールドはSchema.org自体の必須要件ですか?
いいえ。Schema.orgは語彙を定義しますが、通常はプロパティを義務付けません。必須一覧はSEO実装で一般的な最低項目を示します。
タイプが認識されない場合はどうなりますか?
入力エラーを返し、対応する正規タイプ名を列挙します。代わりのタイプを推測することはありません。
Schema.orgの完全なURLを送信できますか?
はい。https://schema.org/Productのような値は、正規タイプProductに統一されます。
入れ子プロパティの構造も結果に含まれますか?
いいえ。一般的な最上位プロパティのみを示します。Offer、Person、PostalAddressなどは別途作成して検証してください。
API検索の料金はいくらですか?
APIリクエスト1回につき$0.002です。アルゴリズムは決定的で、外部サービスを呼び出しません。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
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)リクエスト例
{
"type": "Product"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "seo.schema_type_lookup",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |