AzureSearchEmulator 1.0.0-beta.4
dotnet tool install --global AzureSearchEmulator --version 1.0.0-beta.4
dotnet new tool-manifest
dotnet tool install --local AzureSearchEmulator --version 1.0.0-beta.4
#tool dotnet:?package=AzureSearchEmulator&version=1.0.0-beta.4&prerelease
nuke :add-package AzureSearchEmulator --version 1.0.0-beta.4
Azure Search Emulator
A local emulator for Azure AI (previously Cognitive) Search, packaged as a .NET tool.
Run it on your machine for local development, offline work, or any dev/test scenario where a cloud instance of Azure Search is impossible, impractical, or infeasible. It is not intended for production use.
Install
dotnet tool install --global AzureSearchEmulator
Or into a single project, using a tool manifest:
dotnet new tool-manifest
dotnet tool install AzureSearchEmulator
Run
azsearchemu
This listens on http://localhost:5123 and stores its data in an indexes folder in the
directory you ran it from — so each project keeps its own set of indexes by running the tool
from the project folder.
To use a different port or location:
azsearchemu --urls http://localhost:8080 --Emulator:IndexesDirectory /path/to/indexes
With a local tool manifest, prefix the command with dotnet tool run:
dotnet tool run azsearchemu
Connecting the Azure Search SDK
The Azure.Search.Documents clients reject http:// endpoints in their constructors:
System.ArgumentException: endpoint only supports https. (Parameter 'endpoint')
So to use the SDK against the emulator, run it over HTTPS:
azsearchemu --urls https://localhost:5123
This uses your machine's ASP.NET Core development certificate, which most .NET installs already have. If you have never trusted it, do so once:
dotnet dev-certs https --trust
The SDK then connects with no certificate workarounds — no
ServerCertificateCustomValidationCallback, no custom transport:
var endpoint = new Uri("https://localhost:5123");
var client = new SearchIndexClient(endpoint, new AzureKeyCredential("any-key"));
Any API key is accepted; the emulator does not authenticate requests.
What is emulated
Index management, document indexing, and search — including filters, facets, ordering, highlighting, suggesters and autocomplete, scoring profiles, analyzers, normalizers, synonym maps, geospatial queries, complex types, and vector search with hybrid ranking.
For the full list of supported REST APIs and search parameters, along with the behavioural differences from the real service, see the project README.
Other ways to run it
The emulator also runs in Docker, or under Aspire via the F23.Aspire.Hosting.AzureSearchEmulator package.
Contributing
Submit issues or Pull Requests to us at our GitHub repo! https://github.com/feature23/azuresearchemulator
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
This package has no dependencies.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0-beta.4 | 46 | 9/1/2026 |
| 1.0.0-beta.3 | 53 | 8/31/2026 |