AzureSearchEmulator 1.0.0-beta.4

This is a prerelease version of AzureSearchEmulator.
dotnet tool install --global AzureSearchEmulator --version 1.0.0-beta.4
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local AzureSearchEmulator --version 1.0.0-beta.4
                    
This package contains a .NET tool you can call from the shell/command line.
#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 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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