Searchable attributes

Child route of the settings route.

The values associated with attributes in the searchableAttributes list are searched for matching query words. The order of the list also determines the attribute ranking order.

Searchable attributes can also be updated directly through the global settings route along with the other settings.

NOTE

Updating the settings means overwriting the default settings of MeiliSearch. You can reset to default values using the DELETE routes.

Learn more about searchable fields.

Get searchable attributes

GET

  1. /indexes/:index_uid/settings/searchable-attributes

Get the searchable attributes of an index.

Path variables

VariableDescription
index_uidThe index UID

Example

cURL

JavaScript

Python

PHP

Ruby

Go

Rust

  1. curl \
  2. -X GET 'http://localhost:7700/indexes/movies/settings/searchable-attributes'
  1. client.index('movies').getSearchableAttributes()
  1. client.index('movies').get_searchable_attributes()
  1. $client->index('movies')->getSearchableAttributes();
  1. client.index('movies').searchable_attributes
  1. client.Index("movies").GetSearchableAttributes()
  1. let searchable_attributes: Vec<String> = movies.get_searchable_attributes().await.unwrap();

Response: 200 Ok

List the settings.

  1. ["title", "description", "genre"]

Update searchable attributes

POST

  1. /indexes/:index_uid/settings/searchable-attributes

Update the searchable attributes of an index.

WARNING

Due to an implementation bug, manually updating searchableAttributes will change the displayed order of document fields in the JSON response. This behavior is inconsistent and will be fixed in a future release.

Path variables

VariableDescription
index_uidThe index UID

Body

An array of strings that contains searchable attributes sorted by order of importance (arranged from the most important attribute to the least important attribute).

This means that a document with a match in an attribute at the start of the array will be considered more relevant than a document with a match in an attribute at the end of the array.

More information about the body.

Example

cURL

JavaScript

Python

PHP

Ruby

Go

Rust

  1. curl \
  2. -X POST 'http://localhost:7700/indexes/movies/settings/searchable-attributes' \
  3. --data '[
  4. "title",
  5. "description",
  6. "genre"
  7. ]'
  1. client.index('movies').updateSearchableAttributes([
  2. 'title',
  3. 'description',
  4. 'genre',
  5. ])
  1. client.index('movies').update_searchable_attributes([
  2. 'title',
  3. 'description',
  4. 'uid'
  5. ])
  1. $client->index('movies')->updateSearchableAttributes([
  2. 'title',
  3. 'description',
  4. 'genre'
  5. ]);
  1. client.index('movies').update_searchable_attributes([
  2. 'title',
  3. 'description',
  4. 'genre'
  5. ])
  1. searchableAttributes := []string{
  2. "title",
  3. "description",
  4. "genre",
  5. }
  6. client.Index("movies").UpdateSearchableAttributes(&searchableAttributes)
  1. let searchable_attributes = [
  2. "title",
  3. "description",
  4. "genre"
  5. ];
  6. let progress: Progress = movies.set_searchable_attributes(&searchable_attributes).await.unwrap();

A match in title will make a document more relevant than another document with a match in description.

Response: 202 Accepted

  1. {
  2. "updateId": 1
  3. }

This updateId allows you to track the current update.

Reset searchable attributes

DELETE

  1. /indexes/:index_uid/settings/searchable-attributes

Reset the searchable attributes of the index to the default value.

Default value

All attributes found in the documents added to the index.

Path variables

VariableDescription
index_uidThe index UID

Example

cURL

JavaScript

Python

PHP

Ruby

Go

Rust

  1. curl \
  2. -X DELETE 'http://localhost:7700/indexes/movies/settings/searchable-attributes'
  1. client.index('movies').resetSearchableAttributes()
  1. client.index('movies').reset_searchable_attributes()
  1. $client->index('movies')->resetSearchableAttributes();
  1. client.index('movies').reset_searchable_attributes
  1. client.Index("movies").ResetSearchableAttributes()
  1. let progress: Progress = movies.reset_searchable_attributes().await.unwrap();

Response: 202 Accepted

  1. {
  2. "updateId": 1
  3. }

This updateId allows you to track the current update.