diff --git a/learn/resources/experimental_features_overview.mdx b/learn/resources/experimental_features_overview.mdx
index c245ee2aa4..90a16a8b15 100644
--- a/learn/resources/experimental_features_overview.mdx
+++ b/learn/resources/experimental_features_overview.mdx
@@ -59,3 +59,4 @@ Activating or deactivating experimental features this way does not require you t
| [Search query embedding cache](/learn/self_hosted/configure_meilisearch_at_launch#search-query-embedding-cache) | Enable a cache for search query embeddings | CLI flag or environment variable |
| [Uncompressed snapshots](/learn/self_hosted/configure_meilisearch_at_launch#uncompressed-snapshots) | Disable snapshot compaction | CLI flag or environment variable |
| [Maximum batch payload size](/learn/self_hosted/configure_meilisearch_at_launch#maximum-batch-payload-size) | Limit batch payload size | CLI flag or environment variable |
+| [Disable new indexer](/learn/self_hosted/configure_meilisearch_at_launch) | Use previous settings indexer | CLI flag or environment variable |
diff --git a/learn/self_hosted/configure_meilisearch_at_launch.mdx b/learn/self_hosted/configure_meilisearch_at_launch.mdx
index 48d9540b70..5bd0c3dc10 100644
--- a/learn/self_hosted/configure_meilisearch_at_launch.mdx
+++ b/learn/self_hosted/configure_meilisearch_at_launch.mdx
@@ -538,6 +538,18 @@ Helps running Meilisearch in cluster environments. It does this by modifying tas
- Allows you to manually set task uids by adding a custom `TaskId` header to your API requests
- Allows you to dry register tasks by specifying a `DryRun: true` header in your request
+### Disable new indexer
+
+
+🚩 This option does not take any values. Assigning a value will throw an error. 🚩
+
+
+**Environment variable**: `MEILI_EXPERIMENTAL_NO_EDITION_2024_FOR_SETTINGS`
+**CLI option**: `--experimental-no-edition-2024-for-settings`
+**Default value**: `None`
+
+Falls back to previous settings indexer.
+
### SSL options
#### SSL authentication path
diff --git a/snippets/samples/code_samples_add_movies_json_1.mdx b/snippets/samples/code_samples_add_movies_json_1.mdx
index 414246df01..068206c70c 100644
--- a/snippets/samples/code_samples_add_movies_json_1.mdx
+++ b/snippets/samples/code_samples_add_movies_json_1.mdx
@@ -59,7 +59,7 @@ file, _ := os.ReadFile("movies.json")
var movies interface{}
json.Unmarshal([]byte(file), &movies)
-client.Index("movies").AddDocuments(&movies)
+client.Index("movies").AddDocuments(&movies, nil)
```
```csharp C#
diff --git a/snippets/samples/code_samples_add_or_replace_documents_1.mdx b/snippets/samples/code_samples_add_or_replace_documents_1.mdx
index 13ae38b9dc..7d9fb5a7f1 100644
--- a/snippets/samples/code_samples_add_or_replace_documents_1.mdx
+++ b/snippets/samples/code_samples_add_or_replace_documents_1.mdx
@@ -80,7 +80,7 @@ documents := []map[string]interface{}{
"release_date": "2019-03-23",
},
}
-client.Index("movies").AddDocuments(documents)
+client.Index("movies").AddDocuments(documents, nil)
```
```csharp C#
diff --git a/snippets/samples/code_samples_add_or_update_documents_1.mdx b/snippets/samples/code_samples_add_or_update_documents_1.mdx
index a3c1cd3dda..53a1dd5260 100644
--- a/snippets/samples/code_samples_add_or_update_documents_1.mdx
+++ b/snippets/samples/code_samples_add_or_update_documents_1.mdx
@@ -66,7 +66,7 @@ documents := []map[string]interface{}{
"genres": "comedy",
},
}
-client.Index("movies").UpdateDocuments(documents)
+client.Index("movies").UpdateDocuments(documents, nil)
```
```csharp C#
diff --git a/snippets/samples/code_samples_async_guide_filter_by_statuses_1.mdx b/snippets/samples/code_samples_async_guide_filter_by_statuses_1.mdx
index 5f67d39c0a..609fe90cbf 100644
--- a/snippets/samples/code_samples_async_guide_filter_by_statuses_1.mdx
+++ b/snippets/samples/code_samples_async_guide_filter_by_statuses_1.mdx
@@ -42,7 +42,7 @@ await client.GetTasksAsync(new TasksQuery { Statuses = new List
```rust Rust
let mut query = TasksQuery::new(&client);
let tasks = query
- .with_statuses(["failed", "canceled"])
+ .with_statuses(["failed"])
.execute()
.await
.unwrap();
diff --git a/snippets/samples/code_samples_async_guide_filter_by_statuses_2.mdx b/snippets/samples/code_samples_async_guide_filter_by_statuses_2.mdx
index 53e8fd2b45..985a91b0bf 100644
--- a/snippets/samples/code_samples_async_guide_filter_by_statuses_2.mdx
+++ b/snippets/samples/code_samples_async_guide_filter_by_statuses_2.mdx
@@ -4,4 +4,13 @@
curl \
-X GET 'MEILISEARCH_URL/tasks?statuses=failed,canceled'
```
+
+```rust Rust
+let mut query = TasksQuery::new(&client);
+let tasks = query
+ .with_statuses(["failed", "canceled"])
+ .execute()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_basic_security_tutorial_admin_1.mdx b/snippets/samples/code_samples_basic_security_tutorial_admin_1.mdx
index ea0c45fb6b..e0c803c2b7 100644
--- a/snippets/samples/code_samples_basic_security_tutorial_admin_1.mdx
+++ b/snippets/samples/code_samples_basic_security_tutorial_admin_1.mdx
@@ -10,4 +10,12 @@ curl \
"primaryKey": "id"
}'
```
+
+```rust Rust
+let client = Client::new("http://localhost:7700", Some("DEFAULT_ADMIN_API_KEY"));
+let task = client
+ .create_index("medical_records", Some("id"))
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_basic_security_tutorial_listing_1.mdx b/snippets/samples/code_samples_basic_security_tutorial_listing_1.mdx
index 549088f028..a9d2c5be09 100644
--- a/snippets/samples/code_samples_basic_security_tutorial_listing_1.mdx
+++ b/snippets/samples/code_samples_basic_security_tutorial_listing_1.mdx
@@ -4,4 +4,12 @@
curl -X GET 'MEILISEARCH_URL/keys' \
-H 'Authorization: Bearer MASTER_KEY'
```
+
+```rust Rust
+let client = Client::new("http://localhost:7700", Some("MASTER_KEY"));
+client
+ .get_keys()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_basic_security_tutorial_search_1.mdx b/snippets/samples/code_samples_basic_security_tutorial_search_1.mdx
index dbdade30f0..edbef1caf6 100644
--- a/snippets/samples/code_samples_basic_security_tutorial_search_1.mdx
+++ b/snippets/samples/code_samples_basic_security_tutorial_search_1.mdx
@@ -7,4 +7,15 @@ curl \
-H 'Authorization: Bearer DEFAULT_SEARCH_API_KEY' \
--data-binary '{ "q": "appointments" }'
```
+
+```rust Rust
+let client = Client::new("http://localhost:7700", Some("DEFAULT_SEARCH_API_KEY"));
+let index = client.index("medical_records");
+index
+ .search()
+ .with_query("appointments")
+ .execute::()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_date_guide_filterable_attributes_1.mdx b/snippets/samples/code_samples_date_guide_filterable_attributes_1.mdx
index 2fe51dc2b2..98595a358c 100644
--- a/snippets/samples/code_samples_date_guide_filterable_attributes_1.mdx
+++ b/snippets/samples/code_samples_date_guide_filterable_attributes_1.mdx
@@ -30,7 +30,7 @@ client.index('games').update_filterable_attributes(['release_timestamp'])
```
```go Go
-filterableAttributes := []string{"release_timestamp"}
+filterableAttributes := []interface{}{"release_timestamp"}
client.Index("games").UpdateFilterableAttributes(&filterableAttributes)
```
diff --git a/snippets/samples/code_samples_date_guide_index_1.mdx b/snippets/samples/code_samples_date_guide_index_1.mdx
index 1f22bd3bd0..4f89b156e7 100644
--- a/snippets/samples/code_samples_date_guide_index_1.mdx
+++ b/snippets/samples/code_samples_date_guide_index_1.mdx
@@ -54,7 +54,7 @@ byteValue, _ := io.ReadAll(jsonFile)
var games []map[string]interface{}
json.Unmarshal(byteValue, &games)
-client.Index("games").AddDocuments(games)
+client.Index("games").AddDocuments(games, nil)
```
```csharp C#
diff --git a/snippets/samples/code_samples_distinct_attribute_guide_filterable_1.mdx b/snippets/samples/code_samples_distinct_attribute_guide_filterable_1.mdx
index 60e30700be..7412dfadb6 100644
--- a/snippets/samples/code_samples_distinct_attribute_guide_filterable_1.mdx
+++ b/snippets/samples/code_samples_distinct_attribute_guide_filterable_1.mdx
@@ -38,7 +38,7 @@ client.index('products').update_filterable_attributes([
```
```go Go
-filterableAttributes := []string{
+filterableAttributes := []interface{}{
"product_id",
"sku",
"url",
diff --git a/snippets/samples/code_samples_facet_search_1.mdx b/snippets/samples/code_samples_facet_search_1.mdx
index dd2e107242..da8b4b9c92 100644
--- a/snippets/samples/code_samples_facet_search_1.mdx
+++ b/snippets/samples/code_samples_facet_search_1.mdx
@@ -60,6 +60,16 @@ var query = new SearchFacetsQuery()
await client.Index("books").FacetSearchAsync("genres", query);
```
+```rust Rust
+let res = client.index("books")
+ .facet_search("genres")
+ .with_facet_query("fiction")
+ .with_filter("rating > 3")
+ .execute()
+ .await
+ .unwrap();
+```
+
```dart Dart
await client.index('books').facetSearch(
FacetSearchQuery(
diff --git a/snippets/samples/code_samples_facet_search_2.mdx b/snippets/samples/code_samples_facet_search_2.mdx
index a5380a0aea..6f56f8435b 100644
--- a/snippets/samples/code_samples_facet_search_2.mdx
+++ b/snippets/samples/code_samples_facet_search_2.mdx
@@ -62,6 +62,20 @@ var newFaceting = new Faceting
await client.Index("books").UpdateFacetingAsync(newFaceting);
```
+```rust Rust
+let mut facet_sort_setting = BTreeMap::new();
+facet_sort_setting.insert("genres".to_string(), FacetSortValue::Count);
+let faceting = FacetingSettings {
+ max_values_per_facet: 100,
+ sort_facet_values_by: Some(facet_sort_setting),
+};
+
+let res = client.index("books")
+ .set_faceting(&faceting)
+ .await
+ .unwrap();
+```
+
```dart Dart
await client.index('books').updateFaceting(
Faceting(
diff --git a/snippets/samples/code_samples_facet_search_3.mdx b/snippets/samples/code_samples_facet_search_3.mdx
index e6fbb18947..70c2bcdc9d 100644
--- a/snippets/samples/code_samples_facet_search_3.mdx
+++ b/snippets/samples/code_samples_facet_search_3.mdx
@@ -42,6 +42,7 @@ client.index('books').facet_search('genres', 'c')
client.Index("books").FacetSearch(&meilisearch.FacetSearchRequest{
FacetQuery: "c",
FacetName: "genres",
+ ExhaustiveFacetCount: true
})
```
@@ -53,6 +54,15 @@ var query = new SearchFacetsQuery()
await client.Index("books").FacetSearchAsync("genres", query);
```
+```rust Rust
+let res = client.index("books")
+ .facet_search("genres")
+ .with_facet_query("c")
+ .execute()
+ .await
+ .unwrap();
+```
+
```dart Dart
await client.index('books').facetSearch(
FacetSearchQuery(
diff --git a/snippets/samples/code_samples_faceted_search_update_settings_1.mdx b/snippets/samples/code_samples_faceted_search_update_settings_1.mdx
index 9c7b7d2430..7b5255a440 100644
--- a/snippets/samples/code_samples_faceted_search_update_settings_1.mdx
+++ b/snippets/samples/code_samples_faceted_search_update_settings_1.mdx
@@ -34,7 +34,7 @@ client.index('movie_ratings').update_filterable_attributes(['genres', 'rating',
```
```go Go
-filterableAttributes := []string{
+filterableAttributes := []interface{}{
"genres",
"rating",
"language",
diff --git a/snippets/samples/code_samples_filtering_update_settings_1.mdx b/snippets/samples/code_samples_filtering_update_settings_1.mdx
index b73c1095ba..9ecaed4cf9 100644
--- a/snippets/samples/code_samples_filtering_update_settings_1.mdx
+++ b/snippets/samples/code_samples_filtering_update_settings_1.mdx
@@ -47,7 +47,7 @@ client.index('movies').update_filterable_attributes([
```
```go Go
-resp, err := client.Index("movies").UpdateFilterableAttributes(&[]string{
+resp, err := client.Index("movies").UpdateFilterableAttributes(&[]interface{}{
"director",
"genres",
})
diff --git a/snippets/samples/code_samples_geosearch_guide_filter_settings_1.mdx b/snippets/samples/code_samples_geosearch_guide_filter_settings_1.mdx
index 79aa98f987..32732e6004 100644
--- a/snippets/samples/code_samples_geosearch_guide_filter_settings_1.mdx
+++ b/snippets/samples/code_samples_geosearch_guide_filter_settings_1.mdx
@@ -37,7 +37,7 @@ client.index('restaurants').update_filterable_attributes(['_geo'])
```
```go Go
-filterableAttributes := []string{
+filterableAttributes := []interface{}{
"_geo",
}
client.Index("restaurants").UpdateFilterableAttributes(&filterableAttributes)
diff --git a/snippets/samples/code_samples_get_all_batches_1.mdx b/snippets/samples/code_samples_get_all_batches_1.mdx
index bce94d986e..4031177657 100644
--- a/snippets/samples/code_samples_get_all_batches_1.mdx
+++ b/snippets/samples/code_samples_get_all_batches_1.mdx
@@ -20,4 +20,8 @@ $client->getBatches();
```ruby Ruby
client.batches
```
+
+```go Go
+client.GetBatches();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_get_batch_1.mdx b/snippets/samples/code_samples_get_batch_1.mdx
index 7b9a8a94cd..a7bc333b17 100644
--- a/snippets/samples/code_samples_get_batch_1.mdx
+++ b/snippets/samples/code_samples_get_batch_1.mdx
@@ -20,4 +20,8 @@ $client->getBatch(BATCH_UID);
```ruby Ruby
client.batch(BATCH_UID)
```
+
+```go Go
+client.GetBatch(BATCH_UID);
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_get_embedders_1.mdx b/snippets/samples/code_samples_get_embedders_1.mdx
index d7deff5fc3..96325ca5df 100644
--- a/snippets/samples/code_samples_get_embedders_1.mdx
+++ b/snippets/samples/code_samples_get_embedders_1.mdx
@@ -8,4 +8,8 @@ curl \
```ruby Ruby
client.index('INDEX_NAME').embedders
```
+
+```rust Rust
+let embedders = index.get_embedders().await.unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_get_facet_search_settings_1.mdx b/snippets/samples/code_samples_get_facet_search_settings_1.mdx
index 8b2b15b7c3..bfb04ecd97 100644
--- a/snippets/samples/code_samples_get_facet_search_settings_1.mdx
+++ b/snippets/samples/code_samples_get_facet_search_settings_1.mdx
@@ -24,4 +24,12 @@ client.index('INDEX_UID').facet_search_setting
```go Go
client.Index("books").GetFacetSearch()
```
+
+```rust Rust
+let facet_search: bool = client
+ .index(INDEX_UID)
+ .get_facet_search()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_get_prefix_search_settings_1.mdx b/snippets/samples/code_samples_get_prefix_search_settings_1.mdx
index 19b518df42..155d4eddb9 100644
--- a/snippets/samples/code_samples_get_prefix_search_settings_1.mdx
+++ b/snippets/samples/code_samples_get_prefix_search_settings_1.mdx
@@ -24,4 +24,12 @@ client.index('INDEX_UID').prefix_search
```go Go
client.Index("books").GetPrefixSearch()
```
+
+```rust Rust
+let prefix_search: PrefixSearchSettings = client
+ .index(INDEX_UID)
+ .get_prefix_search()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_get_similar_post_1.mdx b/snippets/samples/code_samples_get_similar_post_1.mdx
index a844168958..534a02785f 100644
--- a/snippets/samples/code_samples_get_similar_post_1.mdx
+++ b/snippets/samples/code_samples_get_similar_post_1.mdx
@@ -39,4 +39,12 @@ client.Index("INDEX_NAME").SearchSimilarDocuments(&meilisearch.SimilarDocumentQu
Embedder: "default",
}, resp)
```
+
+```rust Rust
+let results = index
+ .similar_search("TARGET_DOCUMENT_ID", "EMBEDDER_NAME")
+ .execute()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_getting_started_add_documents.mdx b/snippets/samples/code_samples_getting_started_add_documents.mdx
index 9d12568789..9a2a53b200 100644
--- a/snippets/samples/code_samples_getting_started_add_documents.mdx
+++ b/snippets/samples/code_samples_getting_started_add_documents.mdx
@@ -140,7 +140,7 @@ func main() {
var movies []map[string]interface{}
json.Unmarshal(byteValue, &movies)
- _, err := client.Index("movies").AddDocuments(movies)
+ _, err := client.Index("movies").AddDocuments(movies, nil)
if err != nil {
panic(err)
}
@@ -192,7 +192,7 @@ namespace Meilisearch_demo
```text Rust
// In your .toml file:
[dependencies]
- meilisearch-sdk = "0.28.0"
+ meilisearch-sdk = "0.29.1"
# futures: because we want to block on futures
futures = "0.3"
# serde: required if you are going to use documents
diff --git a/snippets/samples/code_samples_getting_started_add_meteorites.mdx b/snippets/samples/code_samples_getting_started_add_meteorites.mdx
index 90a4cf556a..77373581e9 100644
--- a/snippets/samples/code_samples_getting_started_add_meteorites.mdx
+++ b/snippets/samples/code_samples_getting_started_add_meteorites.mdx
@@ -60,7 +60,7 @@ byteValue, _ := io.ReadAll(jsonFile)
var meteorites []map[string]interface{}
json.Unmarshal(byteValue, &meteorites)
-client.Index("meteorites").AddDocuments(meteorites)
+client.Index("meteorites").AddDocuments(meteorites, nil)
```
```csharp C#
diff --git a/snippets/samples/code_samples_getting_started_faceting.mdx b/snippets/samples/code_samples_getting_started_faceting.mdx
index ccc5902646..2461cbd02d 100644
--- a/snippets/samples/code_samples_getting_started_faceting.mdx
+++ b/snippets/samples/code_samples_getting_started_faceting.mdx
@@ -78,8 +78,11 @@ await client.Index("movies").UpdateFacetingAsync(faceting);
```
```rust Rust
+let mut facet_sort_setting = BTreeMap::new();
+facet_sort_setting.insert("*".to_string(), FacetSortValue::Count);
let mut faceting = FacetingSettings {
max_values_per_facet: 2,
+ sort_facet_values_by: Some(facet_sort_setting),
};
let task: TaskInfo = client
diff --git a/snippets/samples/code_samples_index_settings_tutorial_api_get_setting_1.mdx b/snippets/samples/code_samples_index_settings_tutorial_api_get_setting_1.mdx
index 897990733e..b971e33ecf 100644
--- a/snippets/samples/code_samples_index_settings_tutorial_api_get_setting_1.mdx
+++ b/snippets/samples/code_samples_index_settings_tutorial_api_get_setting_1.mdx
@@ -4,4 +4,11 @@
curl \
-X GET 'MEILISEARCH_URL/indexes/INDEX_NAME/settings/searchable-attributes'
```
+
+```rust Rust
+let searchable_attributes: Vec = index
+ .get_searchable_attributes()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_index_settings_tutorial_api_put_setting_1.mdx b/snippets/samples/code_samples_index_settings_tutorial_api_put_setting_1.mdx
index 66b6ffee9b..f82116ae0e 100644
--- a/snippets/samples/code_samples_index_settings_tutorial_api_put_setting_1.mdx
+++ b/snippets/samples/code_samples_index_settings_tutorial_api_put_setting_1.mdx
@@ -9,4 +9,11 @@ curl \
"overview"
]'
```
+
+```rust Rust
+let task = index
+ .set_searchable_attributes(["title", "overview"])
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_index_settings_tutorial_api_task_1.mdx b/snippets/samples/code_samples_index_settings_tutorial_api_task_1.mdx
index 84c80314e6..2242766f42 100644
--- a/snippets/samples/code_samples_index_settings_tutorial_api_task_1.mdx
+++ b/snippets/samples/code_samples_index_settings_tutorial_api_task_1.mdx
@@ -4,4 +4,8 @@
curl \
-X GET 'MEILISEARCH_URL/tasks/TASK_UID'
```
+
+```rust Rust
+let task_status = index.get_task(&task).await.unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_landing_getting_started_1.mdx b/snippets/samples/code_samples_landing_getting_started_1.mdx
index 49d15df9ec..b353fed743 100644
--- a/snippets/samples/code_samples_landing_getting_started_1.mdx
+++ b/snippets/samples/code_samples_landing_getting_started_1.mdx
@@ -81,7 +81,7 @@ documents := []map[string]interface{}{
{ "id": 5, "title": "Moana" },
{ "id": 6, "title": "Philadelphia" },
}
-client.Index("movies").AddDocuments(documents)
+client.Index("movies").AddDocuments(documents, nil)
```
```csharp C#
diff --git a/snippets/samples/code_samples_negative_search_1.mdx b/snippets/samples/code_samples_negative_search_1.mdx
index 213db2da59..d55e30b10f 100644
--- a/snippets/samples/code_samples_negative_search_1.mdx
+++ b/snippets/samples/code_samples_negative_search_1.mdx
@@ -14,4 +14,12 @@ client.index('movies').search('-escape')
```php PHP
$client->index('movies')->search('-escape');
```
+
+```rust Rust
+let results = index.search()
+ .with_query("-escape")
+ .execute()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_negative_search_2.mdx b/snippets/samples/code_samples_negative_search_2.mdx
index bd3146b385..f25dc2bba2 100644
--- a/snippets/samples/code_samples_negative_search_2.mdx
+++ b/snippets/samples/code_samples_negative_search_2.mdx
@@ -14,4 +14,12 @@ client.index('movies').search('-"escape"')
```php PHP
$client->index('movies')->search('-"escape"');
```
+
+```rust Rust
+let results = index.search()
+ .with_query("-\"escape room\"")
+ .execute()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_primary_field_guide_add_document_primary_key.mdx b/snippets/samples/code_samples_primary_field_guide_add_document_primary_key.mdx
index 1c30ac8015..6d8ecc6272 100644
--- a/snippets/samples/code_samples_primary_field_guide_add_document_primary_key.mdx
+++ b/snippets/samples/code_samples_primary_field_guide_add_document_primary_key.mdx
@@ -85,7 +85,8 @@ documents := []map[string]interface{}{
"price": 5.00,
},
}
-client.Index("books").AddDocuments(documents, "reference_number")
+refrenceNumber := "reference_number"
+client.Index("books").AddDocuments(documents, &refrenceNumber)
```
```csharp C#
diff --git a/snippets/samples/code_samples_related_results_embedder_1.mdx b/snippets/samples/code_samples_related_results_embedder_1.mdx
index 5a66c27378..1f285b42dd 100644
--- a/snippets/samples/code_samples_related_results_embedder_1.mdx
+++ b/snippets/samples/code_samples_related_results_embedder_1.mdx
@@ -15,4 +15,20 @@ curl -X PATCH 'MEILISEARCH_URL/indexes/movies/settings'
}
}'
```
+
+```rust Rust
+let embedders = HashMap::from([(
+ String::from("movies-text"),
+ Embedder {
+ source: EmbedderSource::OpenAi,
+ api_key: Some(String::from("OPENAI_API_KEY")),
+ model: Some(String::from("text-embedding-3-small")),
+ document_template: Some(String::from("A movie titled '{{doc.title}}' released in {{ doc.release_date }}. The movie genres are: {{doc.genres}}. The story is about: {{doc.overview|truncatewords: 20}}")),
+ ..Embedder::default()
+ }
+)]);
+movies.set_embedders(&embedders)
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_related_results_search_1.mdx b/snippets/samples/code_samples_related_results_search_1.mdx
index c2ae498ed7..38bb44ab58 100644
--- a/snippets/samples/code_samples_related_results_search_1.mdx
+++ b/snippets/samples/code_samples_related_results_search_1.mdx
@@ -11,4 +11,13 @@ curl -X POST 'MEILISEARCH_URL/indexes/INDEX_NAME/search' \
}
}'
```
+
+```rust Rust
+let results = movies.search()
+ .with_query("batman")
+ .with_hybrid("EMBEDDER_NAME", 0.5)
+ .execute()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_related_results_similar_1.mdx b/snippets/samples/code_samples_related_results_similar_1.mdx
index 8e263858ad..24fbdbf355 100644
--- a/snippets/samples/code_samples_related_results_similar_1.mdx
+++ b/snippets/samples/code_samples_related_results_similar_1.mdx
@@ -10,4 +10,11 @@ curl \
"embedder": "EMBEDDER_NAME"
}'
```
+
+```rust Rust
+let results = movies.similar_search("192", "EMBEDDER_NAME")
+ .execute()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_reset_embedders_1.mdx b/snippets/samples/code_samples_reset_embedders_1.mdx
index 77e8a2ff82..b9eaee8011 100644
--- a/snippets/samples/code_samples_reset_embedders_1.mdx
+++ b/snippets/samples/code_samples_reset_embedders_1.mdx
@@ -8,4 +8,8 @@ curl \
```ruby Ruby
client.index('INDEX_NAME').reset_embedders
```
+
+```rust Rust
+index.reset_embedders().await.unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_reset_facet_search_settings_1.mdx b/snippets/samples/code_samples_reset_facet_search_settings_1.mdx
index 6b939a3d3d..9591211ceb 100644
--- a/snippets/samples/code_samples_reset_facet_search_settings_1.mdx
+++ b/snippets/samples/code_samples_reset_facet_search_settings_1.mdx
@@ -24,4 +24,12 @@ client.index('INDEX_UID').reset_facet_search_setting
```go Go
client.Index("books").ResetFacetSearch()
```
+
+```rust Rust
+let task: TaskInfo = client
+ .index(INDEX_UID)
+ .reset_facet_search()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_reset_prefix_search_settings_1.mdx b/snippets/samples/code_samples_reset_prefix_search_settings_1.mdx
index a4670ca9c5..b161e68b30 100644
--- a/snippets/samples/code_samples_reset_prefix_search_settings_1.mdx
+++ b/snippets/samples/code_samples_reset_prefix_search_settings_1.mdx
@@ -24,4 +24,12 @@ client.index('INDEX_UID').reset_prefix_search
```go Go
client.Index("books").ResetPrefixSearch()
```
+
+```rust Rust
+let task: TaskInfo = client
+ .index(INDEX_UID)
+ .reset_prefix_search()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_search_parameter_guide_hybrid_1.mdx b/snippets/samples/code_samples_search_parameter_guide_hybrid_1.mdx
index eb830e9216..e61487848d 100644
--- a/snippets/samples/code_samples_search_parameter_guide_hybrid_1.mdx
+++ b/snippets/samples/code_samples_search_parameter_guide_hybrid_1.mdx
@@ -29,4 +29,14 @@ $client->index('INDEX_NAME')->search('kitchen utensils', [
]
]);
```
+
+```rust Rust
+let results = index
+ .search()
+ .with_query("kitchen utensils")
+ .with_hybrid("EMBEDDER_NAME", 0.9)
+ .execute()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_search_parameter_guide_vector_1.mdx b/snippets/samples/code_samples_search_parameter_guide_vector_1.mdx
index 3c1c97152a..ad8a2c35af 100644
--- a/snippets/samples/code_samples_search_parameter_guide_vector_1.mdx
+++ b/snippets/samples/code_samples_search_parameter_guide_vector_1.mdx
@@ -10,4 +10,14 @@ curl -X POST 'MEILISEARCH_URL/indexes/INDEX_NAME/search' \
}
}'
```
+
+```rust Rust
+let results = index
+ .search()
+ .with_vector(&[0.0, 1.0, 2.0])
+ .with_hybrid("EMBEDDER_NAME", 1.0)
+ .execute()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_search_parameter_reference_retrieve_vectors_1.mdx b/snippets/samples/code_samples_search_parameter_reference_retrieve_vectors_1.mdx
index bb19be7a1c..3aa36ee056 100644
--- a/snippets/samples/code_samples_search_parameter_reference_retrieve_vectors_1.mdx
+++ b/snippets/samples/code_samples_search_parameter_reference_retrieve_vectors_1.mdx
@@ -29,4 +29,15 @@ $client->index('INDEX_NAME')->search('kitchen utensils', [
]
]);
```
+
+```rust Rust
+let results = index
+ .search()
+ .with_query("kitchen utensils")
+ .with_retrieve_vectors(true)
+ .with_hybrid("EMBEDDER_NAME", 0.5)
+ .execute()
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_search_post_1.mdx b/snippets/samples/code_samples_search_post_1.mdx
index 3057177f41..dfb4452cb6 100644
--- a/snippets/samples/code_samples_search_post_1.mdx
+++ b/snippets/samples/code_samples_search_post_1.mdx
@@ -39,7 +39,7 @@ await client.Index("movies").SearchAsync("American ninja");
let results: SearchResults = client
.index("movies")
.search()
- .with_query("American ninja")
+ .with_query("american ninja")
.execute()
.await
.unwrap();
diff --git a/snippets/samples/code_samples_typo_tolerance_guide_5.mdx b/snippets/samples/code_samples_typo_tolerance_guide_5.mdx
index 6733ece79f..55582c22bf 100644
--- a/snippets/samples/code_samples_typo_tolerance_guide_5.mdx
+++ b/snippets/samples/code_samples_typo_tolerance_guide_5.mdx
@@ -26,4 +26,10 @@ $client->index('movies')->updateTypoTolerance([
'disableOnNumbers' => true
]);
```
+
+```go Go
+client.Index("movies").UpdateTypoTolerance(&meilisearch.TypoTolerance{
+ DisableOnNumbers: true
+})
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_update_embedders_1.mdx b/snippets/samples/code_samples_update_embedders_1.mdx
index f8fb461eeb..89c1458e1c 100644
--- a/snippets/samples/code_samples_update_embedders_1.mdx
+++ b/snippets/samples/code_samples_update_embedders_1.mdx
@@ -46,4 +46,21 @@ client.index('INDEX_NAME').update_embedders(
}
)
```
+
+```rust Rust
+let embedders = HashMap::from([(
+ String::from("default"),
+ Embedder {
+ source: EmbedderSource::OpenAi,
+ api_key: Some(String::from("OPEN_AI_API_KEY")),
+ model: Some(String::from("text-embedding-3-small")),
+ document_template: Some(String::from("A document titled '{{doc.title}}' whose description starts with {{doc.overview|truncatewords: 20}}")),
+ ..Embedder::default()
+ }
+)]);
+let task = index
+ .set_embedders(&embedders)
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_update_facet_search_settings_1.mdx b/snippets/samples/code_samples_update_facet_search_settings_1.mdx
index bb7a7ac190..bbcbe5a398 100644
--- a/snippets/samples/code_samples_update_facet_search_settings_1.mdx
+++ b/snippets/samples/code_samples_update_facet_search_settings_1.mdx
@@ -26,4 +26,12 @@ client.index('INDEX_UID').update_facet_search_setting(false)
```go Go
client.Index("books").UpdateFacetSearch(false)
```
+
+```rust Rust
+let task: TaskInfo = client
+ .index(INDEX_UID)
+ .set_facet_search(false)
+ .await
+ .unwrap();
+```
\ No newline at end of file
diff --git a/snippets/samples/code_samples_update_faceting_settings_1.mdx b/snippets/samples/code_samples_update_faceting_settings_1.mdx
index b56548fe96..5c1ce28ef9 100644
--- a/snippets/samples/code_samples_update_faceting_settings_1.mdx
+++ b/snippets/samples/code_samples_update_faceting_settings_1.mdx
@@ -85,8 +85,12 @@ await client.Index("books").UpdateFacetingAsync(faceting);
```
```rust Rust
+let mut facet_sort_setting = BTreeMap::new();
+facet_sort_setting.insert(String::from("*"), FacetSortValue::Alpha);
+facet_sort_setting.insert(String::from("genres"), FacetSortValue::Count);
let mut faceting = FacetingSettings {
max_values_per_facet: 2,
+ sort_facet_values_by: Some(facet_sort_setting),
};
let task: TaskInfo = client
diff --git a/snippets/samples/code_samples_update_filterable_attributes_1.mdx b/snippets/samples/code_samples_update_filterable_attributes_1.mdx
index e5319e8fef..280180ef98 100644
--- a/snippets/samples/code_samples_update_filterable_attributes_1.mdx
+++ b/snippets/samples/code_samples_update_filterable_attributes_1.mdx
@@ -71,9 +71,29 @@ client.index('movies').update_filterable_attributes([
```
```go Go
-filterableAttributes := []string{
+filterableAttributes := []interface{}{
"genres",
"director",
+ AttributeRule{
+ AttributePatterns: []string{"tag"}
+ Features: AttributeFeatures{
+ FacetSearch: false,
+ Filter: FilterFeatures{
+ Equality: true,
+ Comparison: false,
+ }
+ }
+ },
+ map[string]interface{}{
+ "attributePatterns": []interface{}{"year"}
+ "features": map[string]interface{}{
+ "facetSearch": false,
+ "filter": map[string]interface{}{
+ "equality": true,
+ "comparison": true,
+ }
+ }
+ }
}
client.Index("movies").UpdateFilterableAttributes(&filterableAttributes)
```
diff --git a/snippets/samples/code_samples_update_prefix_search_settings_1.mdx b/snippets/samples/code_samples_update_prefix_search_settings_1.mdx
index 2f7f00d6af..4e4dcd1f60 100644
--- a/snippets/samples/code_samples_update_prefix_search_settings_1.mdx
+++ b/snippets/samples/code_samples_update_prefix_search_settings_1.mdx
@@ -26,4 +26,12 @@ client.index('INDEX_UID').update_prefix_search('disabled')
```go Go
client.Index("books").UpdatePrefixSearch("disabled")
```
+
+```rust Rust
+let task: TaskInfo = client
+ .index(INDEX_UID)
+ .set_prefix_search(PrefixSearchSettings::Disabled)
+ .await
+ .unwrap();
+```
\ No newline at end of file