---
title: "Search commands and pipelines"
slug: "search-commands-and-pipelines"
abstract: "Lists and describes commands and pipelines that the Search plugin contributes."
---
# Search commands and pipelines

The following table describes the commands and pipelines for index and document management via the Search service:

| **Command/Pipeline** | **Description** |
| --- | --- |
| `CreateSearchIndexCommand`<br><br>`CreateSearchIndexPipeline` | Creates an index based on the IndexablePolicy and SearchScopePolicy. |
| `DeleteSearchIndexCommand`<br><br>`DeleteSearchIndexPipeline` | Deletes an index (specified by name). |
| `GetSearchIndexCommand`<br><br>`GetSearchIndexPipeline` | Retrieves an index (specified by name). |
| `InitializeSearchIndexCommand`<br><br>`InitializeSearchIndexPipeline` | Initializes an index (specified by name). |
| `ListSearchIndexesCommand`<br><br>`ListSearchIndexesPipeline` | Lists all indexes in the system. |
| `SearchCommand`<br><br>`SearchPipeline` | Searches documents in an index. |
| `SearchEntitiesCommand` | Searches Commerce entities using the provider agnostic [generic search framework](https://doc.sitecore.com/xp/en/developers/103/sitecore-experience-commerce/generic-search-framework.html). Executes the `IFindEntityPipeline` pipeline. |
| `GenericSearchCommand`<br><br>`GenericSearchPipeline` | Executes a provider agnostic search. |
| `UpdateSearchIndexCommand`<br><br>`UpdateSearchIndexPipeline` | Updates an index based on the IndexablePolicy and SearchScopePolicy. |
| `AddDocumentsToIndexPipeline` | Adds documents to an index. |
| `DeleteDocumentsFromIndexPipeline` | Identifies documents to be deleted from index. |
| `CountDocumentsFromIndexPipeline` | Counts the number of documents contained in the index. |
| `DeleteIndexDocumentsMinionPipeline` | Removes documents from an index for entities that have been deleted from the system. Receives: `SearchIndexMinionArgument` Returns:  `IEnumerable<IndexingResult>` |
| `FullIndexMinionPipeline` | Used by the Full Index Minion to process entities. Receives: `SearchIndexMinionArgument` Returns: `IEnumerable<IndexingResult>` |
| `IncrementalIndexPipeline` | Used by the Incremental Index Minion to process entities. Receives: `SearchIndexMinionArgument` Returns: `IEnumerable<IndexingResult>` |
| `PrepareDeleteIndexDocumentsMinionPipeline` | Prepares for deletion of index documents. Receives: `SearchIndexArgument` Returns: `bool` |
| `PrepareFullIndexMinionPipeline` | Before processing any entity, checks if the index exists. If the index exists, the pipeline deletes it, and then recreates it. If the index does not exist, it creates it.<br><br>Receives: `SearchIndexArgument`<br><br>Returns: `bool` |
| `PrepareIncrementalIndexMinionPipeline` | Before processing any entity, checks if the index exists. If the index exists, the pipeline deletes it, and then recreates it. If the index does not exist, it creates. Receives: `SearchIndexArgument` Returns: `bool` |