# Meilisearch Documentation ## Docs - [Changelog](https://www.meilisearch.com/docs/changelog/changelog.md): New features and improvements in Meilisearch - [Meilisearch & Model Context Protocol - Talk to Meilisearch with Claude desktop](https://www.meilisearch.com/docs/guides/ai/mcp.md): This guide walks Meilisearch users through setting up the MCP server with Claude desktop to talk to the Meilisearch API - [Computing Hugging Face embeddings with the GPU](https://www.meilisearch.com/docs/guides/computing_hugging_face_embeddings_gpu.md): This guide for experienced users shows you how to compile a Meilisearch binary that generates Hugging Face embeddings with an Nvidia GPU. - [Using Meilisearch with Docker](https://www.meilisearch.com/docs/guides/docker.md): Learn how to use Docker to download and run Meilisearch, configure its behavior, and manage your Meilisearch data. - [Semantic Search with AWS Bedrock Embeddings](https://www.meilisearch.com/docs/guides/embedders/bedrock.md): This guide will walk you through the process of setting up Meilisearch with AWS Bedrock embeddings to enable semantic search capabilities. - [Semantic Search with Cloudflare Worker AI Embeddings](https://www.meilisearch.com/docs/guides/embedders/cloudflare.md): This guide will walk you through the process of setting up Meilisearch with Cloudflare Worker AI embeddings to enable semantic search capabilities. - [Semantic Search with Cohere Embeddings](https://www.meilisearch.com/docs/guides/embedders/cohere.md): This guide will walk you through the process of setting up Meilisearch with Cohere embeddings to enable semantic search capabilities. - [Semantic Search with Gemini Embeddings](https://www.meilisearch.com/docs/guides/embedders/gemini.md): This guide will walk you through the process of setting up Meilisearch with Gemini embeddings to enable semantic search capabilities. - [Semantic Search with Hugging Face Inference Endpoints](https://www.meilisearch.com/docs/guides/embedders/huggingface.md): This guide will walk you through the process of setting up Meilisearch with Hugging Face Inference Endpoints. - [Semantic Search with Mistral Embeddings](https://www.meilisearch.com/docs/guides/embedders/mistral.md): This guide will walk you through the process of setting up Meilisearch with Mistral embeddings to enable semantic search capabilities. - [Semantic Search with OpenAI Embeddings](https://www.meilisearch.com/docs/guides/embedders/openai.md): This guide will walk you through the process of setting up Meilisearch with OpenAI embeddings to enable semantic search capabilities. - [Semantic Search with Voyage AI Embeddings](https://www.meilisearch.com/docs/guides/embedders/voyage.md): This guide will walk you through the process of setting up Meilisearch with Voyage AI embeddings to enable semantic search capabilities. - [Front-end integration](https://www.meilisearch.com/docs/guides/front_end/front_end_integration.md): Create a simple front-end interface to search through your dataset after following Meilisearch's quick start. - [Search result pagination](https://www.meilisearch.com/docs/guides/front_end/pagination.md): Follow this guide to learn more about the two pagination types available in Meilisearch. - [React quick start](https://www.meilisearch.com/docs/guides/front_end/react_quick_start.md): Integrate a search-as-you-type experience into your React app. - [Vue3 quick start](https://www.meilisearch.com/docs/guides/front_end/vue_quick_start.md): Integrate a search-as-you-type experience into your Vue app. - [Using HTTP/2 and SSL with Meilisearch](https://www.meilisearch.com/docs/guides/http2_ssl.md): Learn how to configure a server to use Meilisearch with HTTP/2. - [Improve relevancy when working with large documents](https://www.meilisearch.com/docs/guides/improve_relevancy_large_documents.md): Use JavaScript with Node.js to split a single large document and configure Meilisearch with a distinct attribute to prevent duplicated results. - [Implementing semantic search with LangChain](https://www.meilisearch.com/docs/guides/langchain.md): This guide shows you how to implement semantic search using LangChain and similarity search. - [Laravel multitenancy guide](https://www.meilisearch.com/docs/guides/laravel_multitenancy.md): Learn how to implement secure, multitenant search in your Laravel applications. - [Laravel Scout guide](https://www.meilisearch.com/docs/guides/laravel_scout.md): Learn how to use Meilisearch with Laravel Scout. - [Node.js multitenancy guide](https://www.meilisearch.com/docs/guides/multitenancy_nodejs.md): Learn how to implement secure, multitenant search in your Node.js applications. - [Interpreting ranking score details](https://www.meilisearch.com/docs/guides/relevancy/interpreting_ranking_scores.md): Learn how to understand ranking score details to see how Meilisearch evaluates each result and which rules determined their order. - [Ordering ranking rules](https://www.meilisearch.com/docs/guides/relevancy/ordering_ranking_rules.md): Learn how Meilisearch orders search results and how to customize ranking rule order for your use case. - [Ruby on Rails quick start](https://www.meilisearch.com/docs/guides/ruby_on_rails_quick_start.md): Integrate Meilisearch into your Ruby on Rails app. - [Running Meilisearch in production](https://www.meilisearch.com/docs/guides/running_production.md): Deploy Meilisearch in a Digital Ocean droplet. Covers installation, server configuration, and securing your instance. - [Strapi v4 guide](https://www.meilisearch.com/docs/guides/strapi_v4.md): Learn how to use Meilisearch with Strapi v4. - [Integrate Meilisearch Cloud with Vercel](https://www.meilisearch.com/docs/guides/vercel.md): Link Meilisearch Cloud to a Vercel Project. - [Documentation](https://www.meilisearch.com/docs/home.md): Discover our guides, examples, and APIs to build fast and relevant search experiences with Meilisearch. - [Which embedder should I choose?](https://www.meilisearch.com/docs/learn/ai_powered_search/choose_an_embedder.md): General guidance on how to choose the embedder best suited for projects using AI-powered search. - [Configure a REST embedder](https://www.meilisearch.com/docs/learn/ai_powered_search/configure_rest_embedder.md): Create Meilisearch embedders using any provider with a REST API - [Differences between full-text and AI-powered search](https://www.meilisearch.com/docs/learn/ai_powered_search/difference_full_text_ai_search.md): Meilisearch offers two types of search: full-text search and AI-powered search. This article explains their differences and intended use cases. - [Document template best practices](https://www.meilisearch.com/docs/learn/ai_powered_search/document_template_best_practices.md): This guide shows you what to do and what to avoid when writing a `documentTemplate`. - [Getting started with AI-powered search](https://www.meilisearch.com/docs/learn/ai_powered_search/getting_started_with_ai_search.md): AI-powered search uses LLMs to retrieve search results. This tutorial shows you how to configure an OpenAI embedder and perform your first search. - [Image search with multimodal embeddings](https://www.meilisearch.com/docs/learn/ai_powered_search/image_search_with_multimodal_embeddings.md): This article shows you the main steps for performing multimodal text-to-image searches - [Image search with user-provided embeddings](https://www.meilisearch.com/docs/learn/ai_powered_search/image_search_with_user_provided_embeddings.md): This article shows you the main steps for performing multimodal text-to-image searches - [Retrieve related search results](https://www.meilisearch.com/docs/learn/ai_powered_search/retrieve_related_search_results.md): This guide shows you how to use the similar documents endpoint to create an AI-powered movie recommendation workflow. - [Use AI-powered search with user-provided embeddings](https://www.meilisearch.com/docs/learn/ai_powered_search/search_with_user_provided_embeddings.md): This guide shows how to perform AI-powered searches with user-generated embeddings instead of relying on a third-party tool. - [Analytics metrics reference](https://www.meilisearch.com/docs/learn/analytics/analytics_metrics_reference.md): This reference describes the metrics you can find in the Meilisearch Cloud analytics interface. - [Bind search analytics events to a user](https://www.meilisearch.com/docs/learn/analytics/bind_events_user.md): This guide shows you how to manually differentiate users across search analytics using the X-MS-USER-ID HTTP header. - [Configure Meilisearch Cloud analytics events](https://www.meilisearch.com/docs/learn/analytics/configure_analytics_events.md): By default, Meilisearch Cloud analytics tracks metrics such as number of users and latency. Follow this guide to track advanced events such as user conversion and click-through rates. - [Analytics events endpoint](https://www.meilisearch.com/docs/learn/analytics/events_endpoint.md): Use `/events` to submit analytics events such as `click` and `conversion` to Meilisearch Cloud. - [Migrate to the November 2025 Meilisearch Cloud analytics](https://www.meilisearch.com/docs/learn/analytics/migrate_analytics_monitoring.md): Follow this guide to ensure your Meilisearch Cloud analytics configuration is up to date after the November 2025 release. - [Tasks and asynchronous operations](https://www.meilisearch.com/docs/learn/async/asynchronous_operations.md): Meilisearch uses a task queue to handle asynchronous operations. This in-depth guide explains tasks, their uses, and how to manage them using Meilisearch's API. - [Filtering tasks](https://www.meilisearch.com/docs/learn/async/filtering_tasks.md): This guide shows you how to use query parameters to filter tasks and obtain a more readable list of asynchronous operations. - [Managing the task database](https://www.meilisearch.com/docs/learn/async/paginating_tasks.md): Meilisearch uses a task queue to handle asynchronous operations. This document describes how to navigate long task queues with filters and pagination. - [Using task webhooks](https://www.meilisearch.com/docs/learn/async/task_webhook.md): Learn how to use webhooks to react to changes in your Meilisearch database. - [Working with tasks](https://www.meilisearch.com/docs/learn/async/working_with_tasks.md): In this tutorial, you'll use the Meilisearch API to add documents to an index, and then monitor its status. - [Chat tooling reference](https://www.meilisearch.com/docs/learn/chat/chat_tooling_reference.md): An exhaustive reference of special chat tools supported by Meilisearch - [What is conversational search?](https://www.meilisearch.com/docs/learn/chat/conversational_search.md): Conversational search allows people to make search queries using natural languages. - [Getting started with conversational search](https://www.meilisearch.com/docs/learn/chat/getting_started_with_chat.md): This article walks you through implementing Meilisearch's chat completions feature to create conversational search experiences in your application. - [Configuring index settings](https://www.meilisearch.com/docs/learn/configuration/configuring_index_settings.md): This tutorial shows how to check and change an index setting using the Meilisearch Cloud interface. - [Configuring index settings with the Meilisearch API](https://www.meilisearch.com/docs/learn/configuration/configuring_index_settings_api.md): This tutorial shows how to check and change an index setting using the Meilisearch API. - [Exporting and importing dumps](https://www.meilisearch.com/docs/learn/data_backup/dumps.md): Dumps are data backups containing all data related to a Meilisearch instance. They are often useful when migrating to a new Meilisearch release. - [Exporting and using Snapshots](https://www.meilisearch.com/docs/learn/data_backup/snapshots.md): Snapshots are exact copies of Meilisearch databases. They are often useful for periodical backups. - [Snapshots and dumps](https://www.meilisearch.com/docs/learn/data_backup/snapshots_vs_dumps.md): Meilisearch offers two types of backups: snapshots and dumps. Snapshots are mainly intended as a safeguard, while dumps are useful when migrating Meilisearch. - [Concatenated and split queries](https://www.meilisearch.com/docs/learn/engine/concat.md): When a query contains several terms, Meilisearch looks for both individual terms and their combinations. - [Data types](https://www.meilisearch.com/docs/learn/engine/datatypes.md): Learn about how Meilisearch handles different data types: strings, numerical values, booleans, arrays, and objects. - [Prefix search](https://www.meilisearch.com/docs/learn/engine/prefix.md): Prefix search is a core part of Meilisearch's design and allows users to receive results even when their query only contains a single letter. - [Storage](https://www.meilisearch.com/docs/learn/engine/storage.md): Learn about how Meilisearch stores and handles data in its LMDB storage engine. - [Filter expression reference](https://www.meilisearch.com/docs/learn/filtering_and_sorting/filter_expression_reference.md): The `filter` search parameter expects a filter expression. Filter expressions are made of attributes, values, and several operators. - [Filter search results](https://www.meilisearch.com/docs/learn/filtering_and_sorting/filter_search_results.md): In this guide you will see how to configure and use Meilisearch filters in a hypothetical movie database. - [Geosearch](https://www.meilisearch.com/docs/learn/filtering_and_sorting/geosearch.md): Filter and sort search results based on their geographic location. - [Search with facets](https://www.meilisearch.com/docs/learn/filtering_and_sorting/search_with_facet_filters.md): Faceted search interfaces provide users with a quick way to narrow down search results by selecting categories relevant to their query. - [Sort search results](https://www.meilisearch.com/docs/learn/filtering_and_sorting/sort_search_results.md): By default, Meilisearch sorts results according to their relevancy. You can alter this behavior so users can decide at search time results they want to see first. - [Filtering and sorting by date](https://www.meilisearch.com/docs/learn/filtering_and_sorting/working_with_dates.md): Learn how to index documents with chronological data, and how to sort and filter search results based on time. - [Getting started with Meilisearch Cloud](https://www.meilisearch.com/docs/learn/getting_started/cloud_quick_start.md): Learn how to create your first Meilisearch Cloud project. - [Documents](https://www.meilisearch.com/docs/learn/getting_started/documents.md): Documents are the individual items that make up a dataset. Each document is an object composed of one or more fields. - [Indexes](https://www.meilisearch.com/docs/learn/getting_started/indexes.md): An index is a collection of documents, much like a table in MySQL or a collection in MongoDB. - [Primary key](https://www.meilisearch.com/docs/learn/getting_started/primary_key.md): The primary key is a special field that must be present in all documents indexed by Meilisearch. - [Search preview](https://www.meilisearch.com/docs/learn/getting_started/search_preview.md): Meilisearch comes with a built-in search interface for quick testing during development. - [What is Meilisearch?](https://www.meilisearch.com/docs/learn/getting_started/what_is_meilisearch.md): Meilisearch is a search engine featuring a blazing fast RESTful search API, typo tolerance, comprehensive language support, and much more. - [Indexing best practices](https://www.meilisearch.com/docs/learn/indexing/indexing_best_practices.md): Tips to speed up your documents indexing process. - [Handling multilingual datasets](https://www.meilisearch.com/docs/learn/indexing/multilingual-datasets.md): This guide covers indexing strategies, language-specific tokenizers, and best practices for aligning document and query tokenization. - [Optimize indexing performance with batch statistics](https://www.meilisearch.com/docs/learn/indexing/optimize_indexing_performance.md): Learn how to analyze the `progressTrace` to identify and resolve indexing bottlenecks in Meilisearch. - [Impact of RAM and multi-threading on indexing performance](https://www.meilisearch.com/docs/learn/indexing/ram_multithreading_performance.md): Adding new documents to a Meilisearch index is a multi-threaded and memory-intensive operation. Consult this article for more information on indexing performance. - [Rename an index](https://www.meilisearch.com/docs/learn/indexing/rename_an_index.md): Use the PATCH endpoint of the /indexes route to rename an index - [Tokenization](https://www.meilisearch.com/docs/learn/indexing/tokenization.md): Tokenization is the process of taking a sentence or phrase and splitting it into smaller units of language. It is a crucial procedure when indexing documents. - [Implement sharding with remote federated search](https://www.meilisearch.com/docs/learn/multi_search/implement_sharding.md): This guide walks you through implementing a sharding strategy by activating the `/network` route, configuring the network object, and performing remote federated searches. - [Differences between multi-search and federated search](https://www.meilisearch.com/docs/learn/multi_search/multi_search_vs_federated_search.md): This article defines multi-search and federated search and then describes the different uses of each. - [Using multi-search to perform a federated search](https://www.meilisearch.com/docs/learn/multi_search/performing_federated_search.md): In this tutorial you will see how to perform a query searching multiple indexes at the same time to obtain a single list of results. - [Performing personalized search queries](https://www.meilisearch.com/docs/learn/personalization/making_personalized_search_queries.md): Search personalization uses context about the person performing the search to provide results more relevant to that specific user. This article guides you through configuring and performing personalized search queries. - [What is search personalization?](https://www.meilisearch.com/docs/learn/personalization/search_personalization.md): Search personalization lets you boost search results based on user profiles, making results tailored to their behavior. - [Attribute ranking order](https://www.meilisearch.com/docs/learn/relevancy/attribute_ranking_order.md): This article explains how the order of attributes in the `searchableAttributes` array impacts search result relevancy. - [Custom ranking rules](https://www.meilisearch.com/docs/learn/relevancy/custom_ranking_rules.md): Custom ranking rules promote certain documents over other search results that are otherwise equally relevant. - [Displayed and searchable attributes](https://www.meilisearch.com/docs/learn/relevancy/displayed_searchable_attributes.md): Displayed and searchable attributes define what data Meilisearch returns after a successful query and which fields Meilisearch takes in account when searching. Knowing how to configure them can help improve your application's performance. - [Distinct attribute](https://www.meilisearch.com/docs/learn/relevancy/distinct_attribute.md): Distinct attribute is a field that prevents Meilisearch from returning a set of several similar documents. Often used in ecommerce datasets where many documents are variations of the same item. - [Built-in ranking rules](https://www.meilisearch.com/docs/learn/relevancy/ranking_rules.md): Built-in ranking rules are the core of Meilisearch's relevancy calculations. - [Ranking score](https://www.meilisearch.com/docs/learn/relevancy/ranking_score.md): This article explains how the order of attributes in the `searchableAttributes` array impacts search result relevancy. - [Relevancy](https://www.meilisearch.com/docs/learn/relevancy/relevancy.md): Relevancy refers to the accuracy of search results. If search results tend to be appropriate for a given query, then they can be considered relevant. - [Synonyms](https://www.meilisearch.com/docs/learn/relevancy/synonyms.md): Use Meilisearch synonyms to indicate sets of query terms which should be considered equivalent during search. - [Typo tolerance calculations](https://www.meilisearch.com/docs/learn/relevancy/typo_tolerance_calculations.md): Typo tolerance helps users find relevant results even when their search queries contain spelling mistakes or typos. - [Typo tolerance settings](https://www.meilisearch.com/docs/learn/relevancy/typo_tolerance_settings.md): This article describes each of the typo tolerance settings. - [Comparison to alternatives](https://www.meilisearch.com/docs/learn/resources/comparison_to_alternatives.md): Deciding on a search engine for your project is an important but difficult task. This article describes the differences between Meilisearch and other search engines. - [Contributing to our documentation](https://www.meilisearch.com/docs/learn/resources/contributing_docs.md): The Meilisearch documentation is open-source. Learn how to help make it even better. - [Experimental features overview](https://www.meilisearch.com/docs/learn/resources/experimental_features_overview.md): This article covers how to activate activate and configure Meilisearch experimental features. - [FAQ](https://www.meilisearch.com/docs/learn/resources/faq.md): Frequently asked questions - [Known limitations](https://www.meilisearch.com/docs/learn/resources/known_limitations.md): Meilisearch has a number of known limitations. These are hard limits you cannot change and should take into account when designing your application. - [Language](https://www.meilisearch.com/docs/learn/resources/language.md): Meilisearch is compatible with datasets in any language. Additionally, it features optimized support for languages using whitespace to separate words, Chinese, Hebrew, Japanese, Korean, and Thai. - [Official SDKs and libraries](https://www.meilisearch.com/docs/learn/resources/sdks.md): Meilisearch SDKs are available in many popular programming languages and frameworks. Consult this page for a full list of officially supported libraries. - [Telemetry](https://www.meilisearch.com/docs/learn/resources/telemetry.md): Meilisearch collects anonymized data from users in order to improve our product. Consult this page for an exhaustive list of collected data and instructions on how to deactivate telemetry. - [Versioning policy](https://www.meilisearch.com/docs/learn/resources/versioning.md): This article describes the system behind Meilisearch's SDK and engine version numbering and compatibility. - [Securing your project](https://www.meilisearch.com/docs/learn/security/basic_security.md): This tutorial will show you how to secure your Meilisearch project. - [Differences between the master key and API keys](https://www.meilisearch.com/docs/learn/security/differences_master_api_keys.md): This article explains the main usage differences between the two types of security keys in Meilisearch: master key and API keys. - [Generate a tenant token without a library](https://www.meilisearch.com/docs/learn/security/generate_tenant_token_scratch.md): This guide shows you the main steps when creating tenant tokens without using any libraries. - [Multitenancy and tenant tokens](https://www.meilisearch.com/docs/learn/security/generate_tenant_token_sdk.md): This guide shows you the main steps when creating tenant tokens using Meilisearch's official SDKs. - [Generate tenant tokens without a Meilisearch SDK](https://www.meilisearch.com/docs/learn/security/generate_tenant_token_third_party.md): This guide shows you the main steps when creating tenant tokens without using Meilisearch's official SDKs. - [Multitenancy and tenant tokens](https://www.meilisearch.com/docs/learn/security/multitenancy_tenant_tokens.md): In this article you'll read what multitenancy is and how tenant tokens help managing complex applications and sensitive data. - [Protected and unprotected Meilisearch projects](https://www.meilisearch.com/docs/learn/security/protected_unprotected.md): This article explains the differences between protected and unprotected Meilisearch projects and instances. - [Resetting the master key](https://www.meilisearch.com/docs/learn/security/resetting_master_key.md): This guide shows you how to reset the master key in Meilisearch Cloud and self-hosted instances. - [Tenant token payload reference](https://www.meilisearch.com/docs/learn/security/tenant_token_reference.md): Meilisearch's tenant tokens are JSON web tokens (JWTs). Their payload is made of three elements: search rules, an API key UID, and an optional expiration date. - [Configure Meilisearch at launch](https://www.meilisearch.com/docs/learn/self_hosted/configure_meilisearch_at_launch.md): Configure Meilisearch at launch with command-line options, environment variables, or a configuration file. - [Enterprise and Community editions](https://www.meilisearch.com/docs/learn/self_hosted/enterprise_edition.md): Self-hosted users can choose between the Community Edition and the Enterprise Edition. The Community edition is free under the MIT license, while Enterprise offers advanced features under a BUSL license. - [Getting started with self-hosted Meilisearch](https://www.meilisearch.com/docs/learn/self_hosted/getting_started_with_self_hosted_meilisearch.md): Learn how to install Meilisearch, index a dataset, and perform your first search. - [Install Meilisearch locally](https://www.meilisearch.com/docs/learn/self_hosted/install_meilisearch_locally.md): Use Meilisearch with either Meilisearch Cloud, another cloud service, or install it locally. - [Supported operating systems](https://www.meilisearch.com/docs/learn/self_hosted/supported_os.md): Meilisearch officially supports Windows, MacOS, and many Linux distributions. - [Meilisearch Cloud teams](https://www.meilisearch.com/docs/learn/teams/teams.md): Meilisearch Cloud teams helps collaboration between project stakeholders with different skillsets and responsibilities. - [Migrating from Algolia to Meilisearch](https://www.meilisearch.com/docs/learn/update_and_migration/algolia_migration.md): This guide will take you step-by-step through the creation of a Node.js script to upload data indexed by Algolia to Meilisearch. - [Migrating to Meilisearch Cloud — Meilisearch Documentation](https://www.meilisearch.com/docs/learn/update_and_migration/migrating_cloud.md): Meilisearch Cloud is the recommended way of using Meilisearch. This guide walks you through migrating Meilisearch from a self-hosted installation to Meilisearch Cloud. - [Update to the latest Meilisearch version](https://www.meilisearch.com/docs/learn/update_and_migration/updating.md): Learn how to migrate to the latest Meilisearch release. - [Cancel tasks](https://www.meilisearch.com/docs/reference/api/async-task-management/cancel-tasks.md): Cancel enqueued and/or processing [tasks](https://www.meilisearch.com/docs/learn/async/asynchronous_operations). You must provide at least one filter (e.g. `uids`, `indexUids`, `statuses`) to specify which tasks to cancel. - [Delete tasks](https://www.meilisearch.com/docs/reference/api/async-task-management/delete-tasks.md): Permanently delete [tasks](https://docs.meilisearch.com/learn/advanced/asynchronous_operations.html) matching the given filters. You must provide at least one filter (e.g. `uids`, `indexUids`, `statuses`) to specify which tasks to delete. - [Get batch](https://www.meilisearch.com/docs/reference/api/async-task-management/get-batch.md): Meilisearch groups compatible tasks ([asynchronous operations](https://www.meilisearch.com/docs/learn/async/asynchronous_operations)) into batches for efficient processing. - [Get task](https://www.meilisearch.com/docs/reference/api/async-task-management/get-task.md): Retrieve a single [task](https://www.meilisearch.com/docs/learn/async/asynchronous_operations) by its uid. - [Get task's documents](https://www.meilisearch.com/docs/reference/api/async-task-management/get-tasks-documents.md): Retrieve the list of documents that were processed or affected by a given [task](https://www.meilisearch.com/docs/learn/async/asynchronous_operations). Only available for document-related tasks. - [List batches](https://www.meilisearch.com/docs/reference/api/async-task-management/list-batches.md): Meilisearch groups compatible tasks ([asynchronous operations](https://www.meilisearch.com/docs/learn/async/asynchronous_operations)) into batches for efficient processing. - [List tasks](https://www.meilisearch.com/docs/reference/api/async-task-management/list-tasks.md): The `/tasks` route returns information about [asynchronous operations](https://docs.meilisearch.com/learn/advanced/asynchronous_operations.html) (indexing, document updates, settings changes, and so on). - [Authorization](https://www.meilisearch.com/docs/reference/api/authorization.md): How to authenticate with the Meilisearch API using API keys and the Authorization header. - [Create dump](https://www.meilisearch.com/docs/reference/api/backups/create-dump.md): Trigger a dump creation process. When complete, a dump file is written to the [dump directory](https://www.meilisearch.com/docs/learn/self_hosted/configure_meilisearch_at_launch#dump-directory). The directory is created if it does not exist. - [Create snapshot](https://www.meilisearch.com/docs/reference/api/backups/create-snapshot.md): Trigger a snapshot creation process. When complete, a snapshot file is written to the snapshot directory. The directory is created if it does not exist. - [Delete a chat workspace](https://www.meilisearch.com/docs/reference/api/chats/delete-a-chat-workspace.md) - [Get a chat workspace](https://www.meilisearch.com/docs/reference/api/chats/get-a-chat-workspace.md) - [Get settings of a chat workspace](https://www.meilisearch.com/docs/reference/api/chats/get-settings-of-a-chat-workspace.md) - [List chat workspaces](https://www.meilisearch.com/docs/reference/api/chats/list-chat-workspaces.md) - [Request a chat completion](https://www.meilisearch.com/docs/reference/api/chats/request-a-chat-completion.md) - [Reset the settings of a chat workspace](https://www.meilisearch.com/docs/reference/api/chats/reset-the-settings-of-a-chat-workspace.md) - [Update settings of a chat workspace](https://www.meilisearch.com/docs/reference/api/chats/update-settings-of-a-chat-workspace.md) - [Add or replace documents](https://www.meilisearch.com/docs/reference/api/documents/add-or-replace-documents.md): Add a list of documents or replace them if they already exist. - [Add or update documents](https://www.meilisearch.com/docs/reference/api/documents/add-or-update-documents.md): Add a list of documents or update them if they already exist. - [Delete all documents](https://www.meilisearch.com/docs/reference/api/documents/delete-all-documents.md): Permanently delete all documents in the specified index. Settings and index metadata are preserved. - [Delete document](https://www.meilisearch.com/docs/reference/api/documents/delete-document.md): Delete a single document by its [primary key](https://www.meilisearch.com/docs/learn/getting_started/primary_key). - [Delete documents by batch](https://www.meilisearch.com/docs/reference/api/documents/delete-documents-by-batch.md): Delete multiple documents in one request by providing an array of [primary key](https://www.meilisearch.com/docs/learn/getting_started/primary_key) values. - [Delete documents by filter](https://www.meilisearch.com/docs/reference/api/documents/delete-documents-by-filter.md): Delete all documents in the index that match the given filter expression. - [Edit documents by function](https://www.meilisearch.com/docs/reference/api/documents/edit-documents-by-function.md): Use a [RHAI function](https://rhai.rs/book/engine/hello-world.html) to edit one or more documents directly in Meilisearch. The function receives each document and returns the modified document. - [Get document](https://www.meilisearch.com/docs/reference/api/documents/get-document.md): Retrieve a single document by its [primary key](https://www.meilisearch.com/docs/learn/getting_started/primary_key) value. - [List documents with GET](https://www.meilisearch.com/docs/reference/api/documents/list-documents-with-get.md): Retrieve documents in batches using query parameters for offset, limit, and optional filtering. Suited for browsing or exporting index contents. - [List documents with POST](https://www.meilisearch.com/docs/reference/api/documents/list-documents-with-post.md): Retrieve a set of documents with optional filtering, sorting, and pagination. Use the request body to specify filters, sort order, and which fields to return. - [Configure experimental features](https://www.meilisearch.com/docs/reference/api/experimental-features/configure-experimental-features.md): Enable or disable experimental features at runtime. - [Configure network topology](https://www.meilisearch.com/docs/reference/api/experimental-features/configure-network-topology.md): Add or remove remote nodes from the network. Changes apply to the current instance’s view of the cluster. - [Get network topology](https://www.meilisearch.com/docs/reference/api/experimental-features/get-network-topology.md): Return the list of Meilisearch instances currently known to this node (self and remotes). - [List experimental features](https://www.meilisearch.com/docs/reference/api/experimental-features/list-experimental-features.md): Return all experimental features that can be toggled via this API, and whether each one is currently enabled or disabled. - [Network control](https://www.meilisearch.com/docs/reference/api/experimental-features/network-control.md): Send messages to control the progress of a network topology change task. - [Export to a remote Meilisearch](https://www.meilisearch.com/docs/reference/api/export/export-to-a-remote-meilisearch.md): Trigger an export that sends documents and settings from this instance to a remote Meilisearch server. Configure the remote URL and optional API key in the request body. - [Search in facets](https://www.meilisearch.com/docs/reference/api/facet-search/search-in-facets.md): Search for facet values within a given facet. - [Headers](https://www.meilisearch.com/docs/reference/api/headers.md): Content-Type, Content-Encoding, Accept-Encoding, and Meili-Include-Metadata headers for the Meilisearch API. - [Get health](https://www.meilisearch.com/docs/reference/api/health/get-health.md): The health check endpoint enables you to periodically test the health of your Meilisearch instance. Returns a simple status indicating that the server is available. - [Compact index](https://www.meilisearch.com/docs/reference/api/indexes/compact-index.md): Trigger a compaction process on the specified index. - [Create index](https://www.meilisearch.com/docs/reference/api/indexes/create-index.md): Create a new index with an optional [primary key](https://www.meilisearch.com/docs/learn/getting_started/primary_key). - [Delete index](https://www.meilisearch.com/docs/reference/api/indexes/delete-index.md): Permanently delete an index and all its documents, settings, and task history. - [Get index](https://www.meilisearch.com/docs/reference/api/indexes/get-index.md): Retrieve the metadata of a single index: its uid, [primary key](https://www.meilisearch.com/docs/learn/getting_started/primary_key), and creation/update timestamps. - [Get stats of index](https://www.meilisearch.com/docs/reference/api/indexes/get-stats-of-index.md): Return statistics for a single index: document count, database size, indexing status, and field distribution. - [List all indexes](https://www.meilisearch.com/docs/reference/api/indexes/list-all-indexes.md): Returns a paginated list of indexes. Use the `offset` and `limit` query parameters to page through results. - [List index fields](https://www.meilisearch.com/docs/reference/api/indexes/list-index-fields.md): Returns a paginated list of fields in the index with their metadata: whether they are displayed, searchable, sortable, filterable, distinct, have a custom ranking rule (asc/desc), and for filterable fields the sort order for facet values. - [Swap indexes](https://www.meilisearch.com/docs/reference/api/indexes/swap-indexes.md): Swap the documents, settings, and task history of two or more indexes. - [Update index](https://www.meilisearch.com/docs/reference/api/indexes/update-index.md): Update the [primary key](https://www.meilisearch.com/docs/learn/getting_started/primary_key) or uid of an index. - [Create API key](https://www.meilisearch.com/docs/reference/api/keys/create-api-key.md): Create a new API key with the specified name, description, actions, and index scopes. The key value is returned only once at creation time; store it securely. - [Delete API key](https://www.meilisearch.com/docs/reference/api/keys/delete-api-key.md): Permanently delete the specified API key. The key will no longer be valid for authentication. - [Get API key](https://www.meilisearch.com/docs/reference/api/keys/get-api-key.md): Retrieve a single API key by its `uid` or by its `key` value. - [List API keys](https://www.meilisearch.com/docs/reference/api/keys/list-api-keys.md): Return all API keys configured on the instance. Results are paginated and can be filtered by offset and limit. The key value itself is never returned after creation. - [Update API key](https://www.meilisearch.com/docs/reference/api/keys/update-api-key.md): Update the name and description of an API key. - [Retrieve logs](https://www.meilisearch.com/docs/reference/api/logs/retrieve-logs.md): Stream logs over HTTP. The format of the logs depends on the configuration specified in the payload. The logs are sent as multi-part, and the stream never stops, so ensure your client can handle a long-lived connection. To stop receiving logs, call the `DELETE /logs/stream` route. - [Stop retrieving logs](https://www.meilisearch.com/docs/reference/api/logs/stop-retrieving-logs.md): Call this route to make the engine stop sending logs to the client that opened the `POST /logs/stream` connection. - [Update target of the console logs](https://www.meilisearch.com/docs/reference/api/logs/update-target-of-the-console-logs.md): Configure at runtime the level of the console logs written to stderr (e.g. debug, info, warn, error). - [Perform a multi-search](https://www.meilisearch.com/docs/reference/api/multi-search/perform-a-multi-search.md): Run multiple search queries in a single API request. - [OpenAPI specifications](https://www.meilisearch.com/docs/reference/api/openapi.md): Meilisearch OpenAPI specifications and where to find them. - [Pagination](https://www.meilisearch.com/docs/reference/api/pagination.md): How Meilisearch paginates GET routes and the structure of paginated responses. - [Requests](https://www.meilisearch.com/docs/reference/api/requests.md): Parameters, requests & response bodies, and data types for the Meilisearch API. - [Search with GET](https://www.meilisearch.com/docs/reference/api/search/search-with-get.md): Search for documents matching a query in the given index. - [Search with POST](https://www.meilisearch.com/docs/reference/api/search/search-with-post.md): Search for documents matching a query in the given index. - [Get chat](https://www.meilisearch.com/docs/reference/api/settings/get-chat.md): Returns the current value of the `chat` setting for the index. - [Get dictionary](https://www.meilisearch.com/docs/reference/api/settings/get-dictionary.md): Returns the current value of the `dictionary` setting for the index. - [Get displayedAttributes](https://www.meilisearch.com/docs/reference/api/settings/get-displayedattributes.md): Returns the current value of the `displayedAttributes` setting for the index. - [Get distinctAttribute](https://www.meilisearch.com/docs/reference/api/settings/get-distinctattribute.md): Returns the current value of the `distinctAttribute` setting for the index. - [Get embedders](https://www.meilisearch.com/docs/reference/api/settings/get-embedders.md): Returns the current value of the `embedders` setting for the index. - [Get faceting](https://www.meilisearch.com/docs/reference/api/settings/get-faceting.md): Returns the current value of the `faceting` setting for the index. - [Get facetSearch](https://www.meilisearch.com/docs/reference/api/settings/get-facetsearch.md): Returns the current value of the `facetSearch` setting for the index. - [Get filterableAttributes](https://www.meilisearch.com/docs/reference/api/settings/get-filterableattributes.md): Returns the current value of the `filterableAttributes` setting for the index. - [Get localizedAttributes](https://www.meilisearch.com/docs/reference/api/settings/get-localizedattributes.md): Returns the current value of the `localizedAttributes` setting for the index. - [Get nonSeparatorTokens](https://www.meilisearch.com/docs/reference/api/settings/get-nonseparatortokens.md): Returns the current value of the `nonSeparatorTokens` setting for the index. - [Get pagination](https://www.meilisearch.com/docs/reference/api/settings/get-pagination.md): Returns the current value of the `pagination` setting for the index. - [Get prefixSearch](https://www.meilisearch.com/docs/reference/api/settings/get-prefixsearch.md): Returns the current value of the `prefixSearch` setting for the index. - [Get proximityPrecision](https://www.meilisearch.com/docs/reference/api/settings/get-proximityprecision.md): Returns the current value of the `proximityPrecision` setting for the index. - [Get rankingRules](https://www.meilisearch.com/docs/reference/api/settings/get-rankingrules.md): Returns the current value of the `rankingRules` setting for the index. - [Get searchableAttributes](https://www.meilisearch.com/docs/reference/api/settings/get-searchableattributes.md): Returns the current value of the `searchableAttributes` setting for the index. - [Get searchCutoffMs](https://www.meilisearch.com/docs/reference/api/settings/get-searchcutoffms.md): Returns the current value of the `searchCutoffMs` setting for the index. - [Get separatorTokens](https://www.meilisearch.com/docs/reference/api/settings/get-separatortokens.md): Returns the current value of the `separatorTokens` setting for the index. - [Get sortableAttributes](https://www.meilisearch.com/docs/reference/api/settings/get-sortableattributes.md): Returns the current value of the `sortableAttributes` setting for the index. - [Get stopWords](https://www.meilisearch.com/docs/reference/api/settings/get-stopwords.md): Returns the current value of the `stopWords` setting for the index. - [Get synonyms](https://www.meilisearch.com/docs/reference/api/settings/get-synonyms.md): Returns the current value of the `synonyms` setting for the index. - [Get typoTolerance](https://www.meilisearch.com/docs/reference/api/settings/get-typotolerance.md): Returns the current value of the `typoTolerance` setting for the index. - [List all settings](https://www.meilisearch.com/docs/reference/api/settings/list-all-settings.md): Returns all settings of the index. Each setting is returned with its current value or the default if not set. - [Reset all settings](https://www.meilisearch.com/docs/reference/api/settings/reset-all-settings.md): Resets all settings of the index to their default values. - [Reset chat](https://www.meilisearch.com/docs/reference/api/settings/reset-chat.md): Resets the `chat` setting to its default value. - [Reset dictionary](https://www.meilisearch.com/docs/reference/api/settings/reset-dictionary.md): Resets the `dictionary` setting to its default value. - [Reset displayedAttributes](https://www.meilisearch.com/docs/reference/api/settings/reset-displayedattributes.md): Resets the `displayedAttributes` setting to its default value. - [Reset distinctAttribute](https://www.meilisearch.com/docs/reference/api/settings/reset-distinctattribute.md): Resets the `distinctAttribute` setting to its default value. - [Reset embedders](https://www.meilisearch.com/docs/reference/api/settings/reset-embedders.md): Resets the `embedders` setting to its default value. - [Reset faceting](https://www.meilisearch.com/docs/reference/api/settings/reset-faceting.md): Resets the `faceting` setting to its default value. - [Reset facetSearch](https://www.meilisearch.com/docs/reference/api/settings/reset-facetsearch.md): Resets the `facetSearch` setting to its default value. - [Reset filterableAttributes](https://www.meilisearch.com/docs/reference/api/settings/reset-filterableattributes.md): Resets the `filterableAttributes` setting to its default value. - [Reset localizedAttributes](https://www.meilisearch.com/docs/reference/api/settings/reset-localizedattributes.md): Resets the `localizedAttributes` setting to its default value. - [Reset nonSeparatorTokens](https://www.meilisearch.com/docs/reference/api/settings/reset-nonseparatortokens.md): Resets the `nonSeparatorTokens` setting to its default value. - [Reset pagination](https://www.meilisearch.com/docs/reference/api/settings/reset-pagination.md): Resets the `pagination` setting to its default value. - [Reset prefixSearch](https://www.meilisearch.com/docs/reference/api/settings/reset-prefixsearch.md): Resets the `prefixSearch` setting to its default value. - [Reset proximityPrecision](https://www.meilisearch.com/docs/reference/api/settings/reset-proximityprecision.md): Resets the `proximityPrecision` setting to its default value. - [Reset rankingRules](https://www.meilisearch.com/docs/reference/api/settings/reset-rankingrules.md): Resets the `rankingRules` setting to its default value. - [Reset searchableAttributes](https://www.meilisearch.com/docs/reference/api/settings/reset-searchableattributes.md): Resets the `searchableAttributes` setting to its default value. - [Reset searchCutoffMs](https://www.meilisearch.com/docs/reference/api/settings/reset-searchcutoffms.md): Resets the `searchCutoffMs` setting to its default value. - [Reset separatorTokens](https://www.meilisearch.com/docs/reference/api/settings/reset-separatortokens.md): Resets the `separatorTokens` setting to its default value. - [Reset sortableAttributes](https://www.meilisearch.com/docs/reference/api/settings/reset-sortableattributes.md): Resets the `sortableAttributes` setting to its default value. - [Reset stopWords](https://www.meilisearch.com/docs/reference/api/settings/reset-stopwords.md): Resets the `stopWords` setting to its default value. - [Reset synonyms](https://www.meilisearch.com/docs/reference/api/settings/reset-synonyms.md): Resets the `synonyms` setting to its default value. - [Reset typoTolerance](https://www.meilisearch.com/docs/reference/api/settings/reset-typotolerance.md): Resets the `typoTolerance` setting to its default value. - [Update all settings](https://www.meilisearch.com/docs/reference/api/settings/update-all-settings.md): Updates one or more settings for the index. Only the fields sent in the body are changed. Pass null for a setting to reset it to its default. If the index does not exist, it is created. - [Update chat](https://www.meilisearch.com/docs/reference/api/settings/update-chat.md): Updates the `chat` setting for the index. Send the new value in the request body; send null to reset to default. - [Update dictionary](https://www.meilisearch.com/docs/reference/api/settings/update-dictionary.md): Updates the `dictionary` setting for the index. Send the new value in the request body; send null to reset to default. - [Update displayedAttributes](https://www.meilisearch.com/docs/reference/api/settings/update-displayedattributes.md): Updates the `displayedAttributes` setting for the index. Send the new value in the request body; send null to reset to default. - [Update distinctAttribute](https://www.meilisearch.com/docs/reference/api/settings/update-distinctattribute.md): Updates the `distinctAttribute` setting for the index. Send the new value in the request body; send null to reset to default. - [Update embedders](https://www.meilisearch.com/docs/reference/api/settings/update-embedders.md): Updates the `embedders` setting for the index. Send the new value in the request body; send null to reset to default. - [Update faceting](https://www.meilisearch.com/docs/reference/api/settings/update-faceting.md): Updates the `faceting` setting for the index. Send the new value in the request body; send null to reset to default. - [Update facetSearch](https://www.meilisearch.com/docs/reference/api/settings/update-facetsearch.md): Updates the `facetSearch` setting for the index. Send the new value in the request body; send null to reset to default. - [Update filterableAttributes](https://www.meilisearch.com/docs/reference/api/settings/update-filterableattributes.md): Updates the `filterableAttributes` setting for the index. Send the new value in the request body; send null to reset to default. - [Update localizedAttributes](https://www.meilisearch.com/docs/reference/api/settings/update-localizedattributes.md): Updates the `localizedAttributes` setting for the index. Send the new value in the request body; send null to reset to default. - [Update nonSeparatorTokens](https://www.meilisearch.com/docs/reference/api/settings/update-nonseparatortokens.md): Updates the `nonSeparatorTokens` setting for the index. Send the new value in the request body; send null to reset to default. - [Update pagination](https://www.meilisearch.com/docs/reference/api/settings/update-pagination.md): Updates the `pagination` setting for the index. Send the new value in the request body; send null to reset to default. - [Update prefixSearch](https://www.meilisearch.com/docs/reference/api/settings/update-prefixsearch.md): Updates the `prefixSearch` setting for the index. Send the new value in the request body; send null to reset to default. - [Update proximityPrecision](https://www.meilisearch.com/docs/reference/api/settings/update-proximityprecision.md): Updates the `proximityPrecision` setting for the index. Send the new value in the request body; send null to reset to default. - [Update rankingRules](https://www.meilisearch.com/docs/reference/api/settings/update-rankingrules.md): Updates the `rankingRules` setting for the index. Send the new value in the request body; send null to reset to default. - [Update searchableAttributes](https://www.meilisearch.com/docs/reference/api/settings/update-searchableattributes.md): Updates the `searchableAttributes` setting for the index. Send the new value in the request body; send null to reset to default. - [Update searchCutoffMs](https://www.meilisearch.com/docs/reference/api/settings/update-searchcutoffms.md): Updates the `searchCutoffMs` setting for the index. Send the new value in the request body; send null to reset to default. - [Update separatorTokens](https://www.meilisearch.com/docs/reference/api/settings/update-separatortokens.md): Updates the `separatorTokens` setting for the index. Send the new value in the request body; send null to reset to default. - [Update sortableAttributes](https://www.meilisearch.com/docs/reference/api/settings/update-sortableattributes.md): Updates the `sortableAttributes` setting for the index. Send the new value in the request body; send null to reset to default. - [Update stopWords](https://www.meilisearch.com/docs/reference/api/settings/update-stopwords.md): Updates the `stopWords` setting for the index. Send the new value in the request body; send null to reset to default. - [Update synonyms](https://www.meilisearch.com/docs/reference/api/settings/update-synonyms.md): Updates the `synonyms` setting for the index. Send the new value in the request body; send null to reset to default. - [Update typoTolerance](https://www.meilisearch.com/docs/reference/api/settings/update-typotolerance.md): Updates the `typoTolerance` setting for the index. Send the new value in the request body; send null to reset to default. - [Get similar documents with GET](https://www.meilisearch.com/docs/reference/api/similar-documents/get-similar-documents-with-get.md): Retrieve documents similar to a reference document identified by its id. - [Get similar documents with POST](https://www.meilisearch.com/docs/reference/api/similar-documents/get-similar-documents-with-post.md): Retrieve documents similar to a reference document identified by its id. - [Get Prometheus metrics](https://www.meilisearch.com/docs/reference/api/stats/get-prometheus-metrics.md): Return metrics for the engine in Prometheus format. This is an [experimental feature](https://www.meilisearch.com/docs/learn/experimental/overview) and must be enabled before use. - [Get stats of all indexes](https://www.meilisearch.com/docs/reference/api/stats/get-stats-of-all-indexes.md): Return statistics for the Meilisearch instance and for each index. Includes database size, last update time, document counts, and indexing status per index. - [Get version](https://www.meilisearch.com/docs/reference/api/version/get-version.md): Return the current Meilisearch version, including the commit SHA and build date. - [Create webhook](https://www.meilisearch.com/docs/reference/api/webhooks/create-webhook.md): Register a new webhook to receive task completion notifications. You can optionally set custom headers (e.g. for authentication) and configure the callback URL. - [Delete webhook](https://www.meilisearch.com/docs/reference/api/webhooks/delete-webhook.md): Permanently remove a webhook by its UUID. The webhook will no longer receive task notifications. - [Get webhook](https://www.meilisearch.com/docs/reference/api/webhooks/get-webhook.md): Retrieve a single webhook by its UUID. - [List webhooks](https://www.meilisearch.com/docs/reference/api/webhooks/list-webhooks.md): Return all webhooks registered on the instance. Each webhook is returned with its URL, optional headers, and UUID (the key value is never returned). - [Update webhook](https://www.meilisearch.com/docs/reference/api/webhooks/update-webhook.md): Update the URL or headers of an existing webhook identified by its UUID. - [Error codes](https://www.meilisearch.com/docs/reference/errors/error_codes.md): Consult this page for an exhaustive list of errors you may encounter when using the Meilisearch API. - [Errors](https://www.meilisearch.com/docs/reference/errors/overview.md): Consult this page for an overview of how Meilisearch reports and formats error objects. ## OpenAPI Specs - [meilisearch-openapi-mintlify](https://www.meilisearch.com/docs/assets/open-api/meilisearch-openapi-mintlify.json) - [meilisearch-openapi](https://www.meilisearch.com/docs/assets/open-api/meilisearch-openapi.json) - [package](https://www.meilisearch.com/docs/package.json) - [package-lock](https://www.meilisearch.com/docs/package-lock.json) - [docs-scraper.config](https://www.meilisearch.com/docs/docs-scraper.config.json) - [videogames](https://www.meilisearch.com/docs/assets/datasets/videogames.json) - [stories](https://www.meilisearch.com/docs/assets/datasets/stories.json) - [restaurants](https://www.meilisearch.com/docs/assets/datasets/restaurants.json) - [movies](https://www.meilisearch.com/docs/assets/datasets/movies.json) - [kitchenware](https://www.meilisearch.com/docs/assets/datasets/kitchenware.json) - [crm-tickets](https://www.meilisearch.com/docs/assets/datasets/crm-tickets.json) - [crm-profiles](https://www.meilisearch.com/docs/assets/datasets/crm-profiles.json) - [crm-chats](https://www.meilisearch.com/docs/assets/datasets/crm-chats.json) - [books](https://www.meilisearch.com/docs/assets/datasets/books.json) - [.code-samples.meilisearch](https://www.meilisearch.com/docs/.code-samples.meilisearch.yaml) Built with [Mintlify](https://mintlify.com).