Error codes
This page is an exhaustive list of Meilisearch API errors.
api_key_already_exists
A key with this uid already exists.
api_key_not_found
The requested API key could not be found.
bad_request
The request is invalid, check the error message for more information.
database_size_limit_reached
The requested database has reached its maximum size.
document_fields_limit_reached
A document exceeds the maximum limit of 65,535 fields.
document_not_found
The requested document can't be retrieved. Either it doesn't exist, or the database was left in an inconsistent state.
dump_process_failed
An error occurred during the dump creation process. The task was aborted.
immutable_api_key_actions
The actions field of an API key cannot be modified.
immutable_api_key_created_at
The createdAt field of an API key cannot be modified.
immutable_api_key_expires_at
The expiresAt field of an API key cannot be modified.
immutable_api_key_indexes
The indexes field of an API key cannot be modified.
immutable_api_key_key
The key field of an API key cannot be modified.
immutable_api_key_uid
The uid field of an API key cannot be modified.
immutable_api_key_updated_at
The updatedAt field of an API key cannot be modified.
immutable_index_uid
The uid field of an index cannot be modified.
immutable_index_updated_at
The updatedAt field of an index cannot be modified.
index_already_exists
An index with this uid already exists, check out our guide on index creation.
index_creation_failed
An error occurred while trying to create an index, check out our guide on index creation.
index_not_found
An index with this uid was not found, check out our guide on index creation.
index_primary_key_already_exists
The requested index already has a primary key that cannot be changed.
index_primary_key_multiple_candidates_found
Primary key inference failed because the received documents contain multiple fields ending with id. Use the update index endpoint to manually set a primary key.
internal
Meilisearch experienced an internal error. Check the error message, and open an issue if necessary.
invalid_api_key
The requested resources are protected with an API key. The provided API key is invalid. Read more about it in our dedicated guide.
invalid_api_key_actions
The actions field for the provided API key resource is invalid. It should be an array of strings representing action names.
invalid_api_key_description
The description field for the provided API key resource is invalid. It should either be a string or set to null.
invalid_api_key_expires_at
The expiresAt field for the provided API key resource is invalid. It should either show a future date or datetime in the RFC 3339 format or be set to null.
invalid_api_key_indexes
The indexes field for the provided API key resource is invalid. It should be an array of strings representing index names.
invalid_api_key_limit
The limit parameter is invalid. It should be an integer.
invalid_api_key_name
The given name is invalid. It should either be a string or set to null.
invalid_api_key_offset
The offset parameter is invalid. It should be an integer.
invalid_api_key_uid
The given uid is invalid. The uid must follow the uuid v4 format.
invalid_content_type
The Content-Type header is not supported by Meilisearch. Currently, Meilisearch only supports JSON, CSV, and NDJSON.
invalid_document_csv_delimiter
The csvDelimiter parameter is invalid. It should either be a string or a single ASCII character.
invalid_document_id
The provided document identifier does not meet the format requirements. A document identifier must be of type integer or string, composed only of alphanumeric characters (a-z A-Z 0-9), hyphens (-), and underscores (_).
invalid_document_fields
The fields parameter is invalid. It should be a string.
invalid_document_limit
The limit parameter is invalid. It should be an integer.
invalid_document_offset
The offset parameter is invalid. It should be an integer.
invalid_document_geo_field
The provided _geo field of one or more documents is invalid. Meilisearch expects _geo to be an object with two fields, lat and lng, each containing geographic coordinates expressed as a string or floating point number. Read more about _geo and how to troubleshoot it in our dedicated guide.
invalid_index_limit
The limit parameter is invalid. It should be an integer.
invalid_index_offset
The offset parameter is invalid. It should be an integer.
invalid_index_uid
There is an error in the provided index format, check out our guide on index creation.
invalid_index_primary_key
The primaryKey field is invalid. It should either be a string or set to null.
invalid_search_attributes_to_crop
The attributesToCrop parameter is invalid. It should be an array of strings, a string, or set to null.
invalid_search_attributes_to_highlight
The attributesToHighlight parameter is invalid. It should be an array of strings, a string, or set to null.
invalid_search_attributes_to_retrieve
The attributesToRetrieve parameter is invalid. It should be an array of strings, a string, or set to null.
invalid_search_crop_length
The cropLength parameter is invalid. It should be an integer.
invalid_search_crop_marker
The cropMarker parameter is invalid. It should be a string or set to null.
invalid_search_facets
This error occurs if:
- The
facetsparameter is invalid. It should be an array of strings, a string, or set tonull - The attribute used for faceting is not defined in the
filterableAttributeslist
invalid_search_filter
This error occurs if:
- The syntax for the
filterparameter is invalid - The attribute used for filtering is not defined in the
filterableAttributeslist - A reserved keyword like
_geo,_geoDistance, or_geoPointis used as a filter
invalid_search_highlight_post_tag
The highlightPostTag parameter is invalid. It should be a string.
invalid_search_highlight_pre_tag
The highlightPreTag parameter is invalid. It should be a string.
invalid_search_hits_per_page
The hitsPerPage parameter is invalid. It should be an integer.
invalid_search_limit
The limit parameter is invalid. It should be an integer.
invalid_search_matching_strategy
The matchingStrategy parameter is invalid. It should either be set to last or all.
invalid_search_offset
The offset parameter is invalid. It should be an integer.
invalid_search_page
The page parameter is invalid. It should be an integer.
invalid_search_q
The q parameter is invalid. It should be a string or set to null
invalid_search_show_matches_position
The showMatchesPosition parameter is invalid. It should either be a boolean or set to null.
invalid_search_sort
This error occurs if:
- The syntax for the
sortparameter is invalid - The attribute used for sorting is not defined in the
sortableAttributeslist or thesortranking rule is missing from the settings - A reserved keyword like
_geo,_geoDistance,_geoRadius, or_geoBoundingBoxis used as a filter
invalid_settings_displayed_attributes
The value of displayed attributes is invalid. It should be an empty array, an array of strings, or set to null.
invalid_settings_distinct_attribute
The value of distinct attributes is invalid. It should be a string or set to null.
invalid_settings_faceting
The value for the maxValuesPerFacet field is invalid. It should either be an integer or set to null.
invalid_settings_filterable_attributes
The value of filterable attributes is invalid. It should be an empty array, an array of strings, or set to null.
invalid_settings_pagination
The value for the maxTotalHits field is invalid. It should either be an integer or set to null.
invalid_settings_ranking_rules
This error occurs if:
- The settings payload has an invalid format
- A non-existent ranking rule is specified
- A custom ranking rule is malformed
- A reserved keyword like
_geo,_geoDistance,_geoRadius,_geoBoundingBox, or_geoPointis used as a custom ranking rule
invalid_settings_searchable_attributes
The value of searchable attributes is invalid. It should be an empty array, an array of strings or set to null.
invalid_settings_sortable_attributes
The value of sortable attributes is invalid. It should be an empty array, an array of strings or set to null.
invalid_settings_stop_words
The value of stop words is invalid. It should be an empty array, an array of strings or set to null.
invalid_settings_synonyms
The value of the synonyms is invalid. It should either be an object or set to null.
invalid_settings_typo_tolerance
This error occurs if:
- The
enabledfield is invalid. It should either be a boolean or set tonull - The
disableOnAttributesfield is invalid. It should either be an array of strings or set tonull - The
disableOnWordsfield is invalid. It should either be an array of strings or set tonull - The
minWordSizeForTyposfield is invalid. It should either be an integer or set tonull - The value of either
oneTypoortwoTyposis invalid. It should either be an integer or set tonull
invalid_state
The database is in an invalid state. Deleting the database and re-indexing should solve the problem.
invalid_store_file
The data.ms folder is in an invalid state. Your b file is corrupted or the data.ms folder has been replaced by a file.
invalid_swap_duplicate_index_found
The indexes used in the indexes array for a swap index request have been declared multiple times. You must declare each index only once.
invalid_swap_indexes
This error happens if:
- The payload doesn't contain exactly two index
uidsfor a swap operation - The payload contains an invalid index name in the
indexesarray
invalid_task_after_enqueued_at
The afterEnqueuedAt query parameter is invalid.
invalid_task_after_finished_at
The afterFinishedAt query parameter is invalid.
invalid_task_after_started_at
The afterStartedAt query parameter is invalid.
invalid_task_before_enqueued_at
The beforeEnqueuedAt query parameter is invalid.
invalid_task_before_finished_at
The beforeFinishedAt query parameter is invalid.
invalid_task_before_started_at
The beforeStartedAt query parameter is invalid.
invalid_task_canceled_by
The canceledBy query parameter is invalid. It should be an integer. Multiple uids should be separated by commas (,).
invalid_task_index_uids
The indexUids query parameter contains an invalid index uid.
invalid_task_limit
The limit parameter is invalid. It must be an integer.
invalid_task_statuses
The requested task status is invalid. Please use one of the possible values.
invalid_task_types
The requested task type is invalid. Please use one of the possible values.
invalid_task_uids
The uids query parameter is invalid.
io_error
This error generally occurs when the host system has no space left on the device or when the database doesn't have read or write access.
index_primary_key_no_candidate_found
Primary key inference failed as the received documents do not contain any fields ending with id. Manually designate the primary key, or add some field ending with id to your documents.
malformed_payload
The Content-Type header does not match the request body payload format or the format is invalid.
missing_api_key_actions
The actions field is missing from payload.
missing_api_key_expires_at
The expiresAt field is missing from payload.
missing_api_key_indexes
The indexes field is missing from payload.
missing_authorization_header
This error happens if:
- The requested resources are protected with an API key that was not provided in the request header. Check our guide on security for more information
- You are using the wrong authorization header for your version. v0.24 and below use
X-MEILI-API-KEY: apiKey, whereas v0.25 and above useAuthorization: Bearer apiKey
missing_content_type
The payload does not contain a Content-Type header. Currently, Meilisearch only supports JSON, CSV, and NDJSON.
missing_document_id
A document does not contain any value for the required primary key, and is thus invalid. Check documents in the current addition for the invalid ones.
missing_index_uid
The payload is missing the uid field.
missing_master_key
You need to set a master key before you can access the /keys route. Read more about setting a master key at launch in our dedicated guide.
missing_payload
The Content-Type header was specified, but no request body was sent to the server or the request body is empty.
missing_swap_indexes
The index swap payload is missing the indexes object.
missing_task_filters
The cancel tasks and delete tasks endpoints require one of the available query parameters.
no_space_left_on_device
The host system partition has reached its maximum capacity and can no longer accept writes.
not_found
The requested resources could not be found.
payload_too_large
The payload sent to the server was too large. Check out this guide to customize the maximum payload size accepted by Meilisearch.
task_not_found
The requested task does not exist. Please ensure that you are using the correct uid.
too_many_open_files
Indexing a large batch of documents, such as a JSON file over 3.5GB in size, can result in Meilisearch opening too many file descriptors. Depending on your machine, this might reach your system's default resource usage limits and trigger the too_many_open_files error. Use ulimit or a similar tool to increase resource consumption limits before running Meilisearch. For example, call ulimit -Sn 3000 in a UNIX environment to raise the number of allowed open file descriptors to 3000.
unretrievable_document
The document exists in store, but there was an error retrieving it. This probably comes from an inconsistent state in the database.