<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Search component specs on Dapr Docs</title><link>https://docs.dapr.io/reference/components-reference/supported-search/</link><description>Recent content in Search component specs on Dapr Docs</description><generator>Hugo</generator><language>en</language><atom:link href="https://docs.dapr.io/reference/components-reference/supported-search/index.xml" rel="self" type="application/rss+xml"/><item><title>In-memory</title><link>https://docs.dapr.io/reference/components-reference/supported-search/in-memory/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://docs.dapr.io/reference/components-reference/supported-search/in-memory/</guid><description>&lt;p>The in-memory search store keeps every index in the memory of the Dapr sidecar. Use it for local development and tests that need no external search service. It is not durable: indexes and documents are lost when the sidecar stops, and they aren&amp;rsquo;t shared between sidecar instances.&lt;/p>
&lt;h2 id="component-format">Component format&lt;/h2>
&lt;p>To set up an in-memory search store, create a component of type &lt;code>search.in-memory&lt;/code>. See &lt;a href="https://docs.dapr.io/developing-applications/building-blocks/search/howto-search/#set-up-the-search-component">this guide&lt;/a> on how to create and apply a search store configuration.&lt;/p></description></item><item><title>Meilisearch</title><link>https://docs.dapr.io/reference/components-reference/supported-search/meilisearch/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://docs.dapr.io/reference/components-reference/supported-search/meilisearch/</guid><description>&lt;h2 id="component-format">Component format&lt;/h2>
&lt;p>To set up a Meilisearch search store, create a component of type &lt;code>search.meilisearch&lt;/code>. See &lt;a href="https://docs.dapr.io/developing-applications/building-blocks/search/howto-search/#set-up-the-search-component">this guide&lt;/a> on how to create and apply a search store configuration.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-yaml" data-lang="yaml">&lt;span class="line">&lt;span class="cl">&lt;span class="nt">apiVersion&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">dapr.io/v1alpha1&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="nt">kind&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">Component&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="nt">metadata&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">name&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">&amp;lt;NAME&amp;gt;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="nt">spec&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">type&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">search.meilisearch&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">version&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">v1&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">metadata&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>- &lt;span class="nt">name&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">host&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">value&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="s2">&amp;#34;http://localhost:7700&amp;#34;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>- &lt;span class="nt">name&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">apiKey&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">value&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="s2">&amp;#34;&amp;lt;API_KEY&amp;gt;&amp;#34;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>- &lt;span class="nt">name&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">timeout&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">value&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="s2">&amp;#34;10s&amp;#34;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>

&lt;div class="alert alert-warning" role="alert">
&lt;h4 class="alert-heading">Warning&lt;/h4>

 The above example uses secrets as plain strings. It is recommended to use a secret store for the secrets, as described &lt;a href="https://docs.dapr.io/operations/components/component-secrets/">here&lt;/a>.

&lt;/div>

&lt;h2 id="spec-metadata-fields">Spec metadata fields&lt;/h2>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>Field&lt;/th>
 &lt;th style="text-align: center">Required&lt;/th>
 &lt;th>Details&lt;/th>
 &lt;th>Example&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>&lt;code>host&lt;/code>&lt;/td>
 &lt;td style="text-align: center">Y&lt;/td>
 &lt;td>The Meilisearch host URL.&lt;/td>
 &lt;td>&lt;code>&amp;quot;http://localhost:7700&amp;quot;&lt;/code>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;code>apiKey&lt;/code>&lt;/td>
 &lt;td style="text-align: center">N&lt;/td>
 &lt;td>The Meilisearch API key. Required when the Meilisearch instance is protected with a master key. Defaults to &lt;code>&amp;quot;&amp;quot;&lt;/code>.&lt;/td>
 &lt;td>&lt;code>&amp;quot;masterKey&amp;quot;&lt;/code>&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>&lt;code>timeout&lt;/code>&lt;/td>
 &lt;td style="text-align: center">N&lt;/td>
 &lt;td>The HTTP client timeout for requests to Meilisearch, as a Go duration.&lt;/td>
 &lt;td>&lt;code>&amp;quot;10s&amp;quot;&lt;/code>&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;h2 id="supported-features">Supported features&lt;/h2>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>Feature&lt;/th>
 &lt;th style="text-align: center">Supported&lt;/th>
 &lt;th>Details&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>Full-text search&lt;/td>
 &lt;td style="text-align: center">Y&lt;/td>
 &lt;td>&lt;code>text&lt;/code> queries use Meilisearch&amp;rsquo;s keyword search.&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Filtering&lt;/td>
 &lt;td style="text-align: center">Y&lt;/td>
 &lt;td>Filters must only use attributes declared in &lt;code>filterableAttributes&lt;/code>. &lt;code>$regex&lt;/code> isn&amp;rsquo;t supported.&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Sorting&lt;/td>
 &lt;td style="text-align: center">Y&lt;/td>
 &lt;td>Sort fields must be declared in &lt;code>sortableAttributes&lt;/code>.&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Highlighting&lt;/td>
 &lt;td style="text-align: center">Y&lt;/td>
 &lt;td>Highlighted fragments use &lt;code>&amp;lt;em&amp;gt;&lt;/code> tags.&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Pagination&lt;/td>
 &lt;td style="text-align: center">Y&lt;/td>
 &lt;td>Continuation tokens are offset based.&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Native queries&lt;/td>
 &lt;td style="text-align: center">Y&lt;/td>
 &lt;td>See &lt;a href="https://docs.dapr.io/reference/components-reference/supported-search/meilisearch/#native-queries">native queries&lt;/a>.&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Queued acknowledgement&lt;/td>
 &lt;td style="text-align: center">Y&lt;/td>
 &lt;td>Writes return &lt;code>INDEX_ACK_QUEUED&lt;/code> when Meilisearch enqueues the task, so &lt;code>INDEXING_WAIT_TIMEOUT_ACTION_CONTINUE_ASYNC&lt;/code> is supported.&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Wait for completion&lt;/td>
 &lt;td style="text-align: center">Y&lt;/td>
 &lt;td>See &lt;a href="https://docs.dapr.io/reference/components-reference/supported-search/meilisearch/#waiting-for-writes">waiting for writes&lt;/a>.&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;h2 id="index-settings">Index settings&lt;/h2>
&lt;p>Pass the following Meilisearch &lt;a href="https://www.meilisearch.com/docs/reference/api/settings">index settings&lt;/a> as comma-separated values in the &lt;code>metadata&lt;/code> of a &lt;a href="https://docs.dapr.io/reference/api/search_api/#create-index">create index&lt;/a> request:&lt;/p></description></item></channel></rss>