Updating a document
Use the PUT
method on the base URL of the Sitecore Search Ingestion API to replace all attribute values in an index document.
When an administrator recrawls a pull source, either manually or through scheduled crawls, Search updates all index documents with the latest data from your original content. This action overwrites any updates you made through Ingestion API if they aren't also applied to the original content. To prevent this, we recommend that you always update the original content with changes made through the Ingestion API. This synchronization ensures that your modifications are maintained in future crawls.
To use the Ingestion API to update a document, make a PUT
call to the Partial Update Document endpoint.
To use the Ingestion API to partially update a document, make a PATCH
call to the Partial Update Document endpoint.
For the data model of this method and a description of objects and keys, see the Ingestion API reference. You can view your base URL in the Developer Resources section of Search.
For example, you want to update the title and add a new attribute, image_url, to an existing index document in one locale. To do this, make a PUT
call to https://<base-url>/domains/<domainID>/sources/<sourceID>/entities/<entity>/documents/<documentID>?locale=<locale>
Here's a sample PUT
cURL call:
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"
}
}
}'
If your request is successful, you get a 200
response with this body:
{
"enqueued": true
}
In the response, enqueued means that Search has added this document to its indexing queue. After a few minutes, you can see the updated index document in the Content Collection section of Search.