HomeGuidesAPI ReferenceGraphQL
Submit Documentation FeedbackJoin Developer CommunityOptimizely GitHubOptimizely NuGetLog In

Deleting documents

This topic describes how to delete documents from an index, using the Client interface in the .NET Client API for Optimizely Search & Navigation.

How it works

You can delete individual documents from the index using the IClient interface's Delete method. For example, the code below deletes a BlogPost with ID 42.

client.Delete<BlogPost>(42);

You can delete all documents that match criteria defined in a filter expression. For example, the code below deletes all documents of type BlogPost, as well as those of a type inheriting from BlogPost that are tagged with "Banana".

client.Delete<BlogPost>(x => x.Tags.Match("Banana"));

You can also delete all documents that match criteria defined in a filter expression and on multiple fields. The code below deletes all documents of type BlogPost, as well as those of a type inheriting from BlogPost that are tagged with "Banana" and whose author name contains "Fredrik".

client.Delete<BlogPost>(x => x.Tags.Match("Banana") & x.Name.Match("Fredrik"))

Deleting documents from the recycle bin

When deleting documents from the recycle bin, make sure that you only delete if a document returns shouldIndex=true for CheckPublishedStatus && DisableIndexing. In this way, you avoid many 404 errors that occur when Search & Navigation tries to delete an unindexed document from the recycle bin.


Next