ドキュメントの更新

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Sitecore Search Ingestion APIのベースURLでPUTメソッドを使用して、インデックス ドキュメント内のすべての属性値を置き換えます。

大事な

管理者が プル ソースを再クロールすると、手動または スケジュールされたクロールを使用して、Searchはすべてのインデックスドキュメントを元のコンテンツの最新のデータで更新します。このアクションは、元のコンテンツにも適用されていない場合、取り込みAPIを使用して行った更新を上書きします。これを防ぐには、元のコンテンツを常にIngestion APIで変更して更新することをお勧めします。この同期により、今後のクロールでも変更が維持されます。

取り込みAPIを使用してドキュメントを更新するには、ドキュメントの部分更新エンドポイントをPUT呼び出します。

メモ

インジェストAPIを使用してドキュメントを部分的に更新するには、ドキュメントの部分更新エンドポイントをPATCH呼び出します。

このメソッドのデータモデル、およびオブジェクトとキーの説明については、インジェストAPIリファレンスを参照してください。ベースURLは、SearchのDeveloper Resourcesセクションで表示できます。

手記

たとえば、titleを更新し、新しい属性image_urlを1つのロケールの既存のインデックス文書に追加したいとします。これを行うにはPUThttps://<base-url>/domains/<domainID>/sources/<sourceID>/entities/<entity>/documents/<documentID>?locale=<locale>

cURL呼び出しPUT例を次に示します。

curl --location 'https://<base-url>/domains/<domainID>/sources/<sourceID>/entities/<entity>/documents/<documentID>?locale=<locale>' \
--header 'Content-Type: application/json' \
--header 'Authorization: <api-key>' \
--data '{
    "document": {
        "id": "test_id_123",
        "fields": {
            "title": "updated title"
            "description": "This is an awesome blog",
            "type": "blog",
            "url": "www.someURL.com"
            "image_url": "www.someimage.com"
        }
    }
}' \
-X PUT

要求が成功すると、次の本文で200応答が返されます。

{
    "enqueued": true
}

応答では、enqueuedは、Searchがこのドキュメントをインデックス作成キューに追加したことを意味します。数分後、SearchのContent Collectionセクションに更新されたインデックス ドキュメントが表示されます。

この記事を改善するための提案がある場合は、 お知らせください!