# All settings

Index settings are represented as a JSON object literal (opens new window), containing a field for each possible customization option.

It is possible to modify all the settings at once using the update settings endpoint, or individually using the dedicated routes.

These are the reference pages for the dedicated routes:

To learn more about settings, refer to our dedicated guide.

WARNING

When you update a setting, you overwrite its default value. Use the DELETE route to reset any setting to its original value.

# Get settings

GET
/indexes/{index_uid}/settings

Get the settings of an index. The index uid is required.

Learn more about the settings.

# Response body

Variable Type Description Default value
displayedAttributes [Strings] Fields displayed in the returned documents ["*"] (all attributes)
distinctAttribute String Search returns documents with distinct (different) values of the given field null
filterableAttributes [Strings] Attributes to use as filters and facets []
rankingRules [Strings] List of ranking rules sorted by order of importance A list of ordered built-in ranking rules
searchableAttributes [Strings] Fields in which to search for matching query words sorted by order of importance ["*"] (all attributes)
sortableAttributes [Strings] Attributes to use when sorting search results []
stopWords [Strings] List of words ignored by Meilisearch when present in search queries []
synonyms Object List of associated words treated similarly {}
typoTolerance Object Typo tolerance settings {}

Learn more about the settings in this guide.

# Example

curl \
  -X GET 'http://localhost:7700/indexes/movies/settings'

# Response: 200 Ok

List the settings.

{
  "rankingRules": [
    "typo",
    "words",
    "proximity",
    "attribute",
    "wordsPosition",
    "exactness",
    "desc(release_date)"
  ],
  "filterableAttributes": [
    "genres"
  ],
  "distinctAttribute": null,
  "searchableAttributes": [
    "title",
    "overview",
    "genres"
  ],
  "displayedAttributes": [
    "title",
    "overview",
    "genres",
    "release_date"
  ],
  "stopWords": null,
  "synonyms": {
    "wolverine": [
      "xmen",
      "logan"
    ],
    "logan": [
      "wolverine",
      "xmen"
    ]
  },
  "typoTolerance": {
    "enabled": true, 
    "minWordSizeForTypos": {
      "oneTypo": 5,
      "twoTypos": 10
      },
      "disableOnWords": [],
      "disableOnAttributes": []
      }
}

# Update settings

POST
/indexes/{index_uid}/settings

Update the settings of an index. The index uid is required.

Passing null to an index setting will reset it to its default value.

Updates in the settings route are partial. This means that any parameters not provided in the body will be left unchanged.

If the provided index does not exist, it will be created.

Learn more about the settings in this guide.

# Body

Variable Type Description Default value
displayedAttributes [Strings] Fields displayed in the returned documents ["*"] (all attributes)
distinctAttribute String Search returns documents with distinct (different) values of the given field null
filterableAttributes [Strings] Attributes to use as filters and facets []
rankingRules [Strings] List of ranking rules sorted by order of importance A list of ordered built-in ranking rules
searchableAttributes [Strings] Fields in which to search for matching query words sorted by order of importance ["*"] (all attributes)
sortableAttributes [Strings] Attributes to use when sorting search results []
stopWords [Strings] List of words ignored by Meilisearch when present in search queries []
synonyms Object List of associated words treated similarly {}
typoTolerance Object Typo tolerance settings {}

# Example

curl \
  -X POST 'http://localhost:7700/indexes/movies/settings' \
  -H 'Content-Type: application/json' \
  --data-binary '{
      "rankingRules": [
          "words",
          "typo",
          "proximity",
          "attribute",
          "sort",
          "exactness",
          "release_date:desc",
          "rank:desc"
      ],
      "distinctAttribute": "movie_id",
      "searchableAttributes": [
          "title",
          "overview",
          "genres"
      ],
      "displayedAttributes": [
          "title",
          "overview",
          "genres",
          "release_date"
      ],
      "stopWords": [
          "the",
          "a",
          "an"
      ],
      "sortableAttributes": [
        "title",
        "release_date"
      ],
      "synonyms": {
          "wolverine": ["xmen", "logan"],
          "logan": ["wolverine"]
      },
      "typoTolerance": {
          "minWordSizeForTypos": {
              "oneTypo": 8,
              "twoTypos": 10
          },
          "disableOnAttributes": ["title"]
      }
  }'

# Response: 202 Accepted

{
    "uid": 1,
    "indexUid": "movies",
    "status": "enqueued",
    "type": "settingsUpdate",
    "enqueuedAt": "2021-08-11T09:25:53.000000Z"
}

You can use this uid to get more details on the status of the task.

# Reset settings

DELETE
/indexes/{index_uid}/settings

Reset the settings of an index. The index uid is required.

All settings will be reset to their default value.

Variable Type Description Default value
displayedAttributes [Strings] Fields displayed in the returned documents ["*"] (all attributes)
distinctAttribute String Search returns documents with distinct (different) values of the given field null
filterableAttributes [Strings] Attributes to use as filters and facets []
rankingRules [Strings] List of ranking rules sorted by order of importance A list of ordered built-in ranking rules
searchableAttributes [Strings] Fields in which to search for matching query words sorted by order of importance ["*"] (all attributes)
sortableAttributes [Strings] Attributes to use when sorting search results []
stopWords [Strings] List of words ignored by Meilisearch when present in search queries []
synonyms Object List of associated words treated similarly {}
typoTolerance Object Typo tolerance settings {}

Learn more about the settings.

# Example

curl \
  -X DELETE 'http://localhost:7700/indexes/movies/settings'

# Response: 202 Accepted

{
    "uid": 1,
    "indexUid": "movies",
    "status": "enqueued",
    "type": "settingsUpdate",
    "enqueuedAt": "2021-08-11T09:25:53.000000Z"
}

You can use this uid to get more details on the status of the task.