HomeDev GuideRecipesAPI ReferenceGraphQL
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunityDoc feedbackLog In
GitHubNuGetDev CommunityDoc feedback

Delete documents

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

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, and 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"))

Delete 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 Optimizely Search & Navigation tries to delete an unindexed document from the recycle bin.