{"id":13495040,"url":"https://github.com/meilisearch/meilisearch-js","last_synced_at":"2025-05-13T19:03:24.387Z","repository":{"id":36977729,"uuid":"212378409","full_name":"meilisearch/meilisearch-js","owner":"meilisearch","description":"TypeScript client for Meilisearch","archived":false,"fork":false,"pushed_at":"2025-05-01T07:22:38.000Z","size":13059,"stargazers_count":791,"open_issues_count":34,"forks_count":91,"subscribers_count":16,"default_branch":"main","last_synced_at":"2025-05-08T21:12:52.261Z","etag":null,"topics":["javascript","meilisearch","nodejs","sdk","typescript"],"latest_commit_sha":null,"homepage":"https://www.meilisearch.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/meilisearch.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-10-02T15:37:57.000Z","updated_at":"2025-05-06T22:50:14.000Z","dependencies_parsed_at":"2023-12-11T03:24:06.714Z","dependency_job_id":"cbb55b9f-32f6-4a6b-88ab-bc499c5f44a0","html_url":"https://github.com/meilisearch/meilisearch-js","commit_stats":{"total_commits":1703,"total_committers":87,"mean_commits":19.57471264367816,"dds":0.8144450968878449,"last_synced_commit":"0736f38ac18acc3145ce430337115141904cb46e"},"previous_names":[],"tags_count":110,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meilisearch%2Fmeilisearch-js","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meilisearch%2Fmeilisearch-js/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meilisearch%2Fmeilisearch-js/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/meilisearch%2Fmeilisearch-js/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/meilisearch","download_url":"https://codeload.github.com/meilisearch/meilisearch-js/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254010793,"owners_count":21998993,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["javascript","meilisearch","nodejs","sdk","typescript"],"created_at":"2024-07-31T19:01:30.643Z","updated_at":"2025-05-13T19:03:24.359Z","avatar_url":"https://github.com/meilisearch.png","language":"TypeScript","funding_links":[],"categories":["TypeScript","Integrations"],"sub_categories":["Official Integrations"],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/meilisearch/integration-guides/main/assets/logos/meilisearch_js.svg\" alt=\"Meilisearch-JavaScript\" width=\"200\" height=\"200\" /\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eMeilisearch JavaScript\u003c/h1\u003e\n\n\u003ch4 align=\"center\"\u003e\n  \u003ca href=\"https://github.com/meilisearch/meilisearch\"\u003eMeilisearch\u003c/a\u003e |\n  \u003ca href=\"https://www.meilisearch.com/cloud?utm_campaign=oss\u0026utm_source=github\u0026utm_medium=meilisearch-js\"\u003eMeilisearch Cloud\u003c/a\u003e |\n  \u003ca href=\"https://www.meilisearch.com/docs\"\u003eDocumentation\u003c/a\u003e |\n  \u003ca href=\"https://discord.meilisearch.com\"\u003eDiscord\u003c/a\u003e |\n  \u003ca href=\"https://roadmap.meilisearch.com/tabs/1-under-consideration\"\u003eRoadmap\u003c/a\u003e |\n  \u003ca href=\"https://www.meilisearch.com\"\u003eWebsite\u003c/a\u003e |\n  \u003ca href=\"https://www.meilisearch.com/docs/faq\"\u003eFAQ\u003c/a\u003e\n\u003c/h4\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://www.npmjs.com/package/meilisearch\"\u003e\u003cimg src=\"https://img.shields.io/npm/v/meilisearch.svg\" alt=\"npm version\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/meilisearch/meilisearch-js/actions\"\u003e\u003cimg src=\"https://github.com/meilisearch/meilisearch-js/workflows/Tests/badge.svg\" alt=\"Tests\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://codecov.io/gh/meilisearch/meilisearch-js\"\u003e\u003cimg src=\"https://codecov.io/github/meilisearch/meilisearch-js/coverage.svg?branch=main\" alt=\"Codecov\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/prettier/prettier\"\u003e\u003cimg src=\"https://img.shields.io/badge/styled_with-prettier-ff69b4.svg\" alt=\"Prettier\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/meilisearch/meilisearch-js/blob/main/LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/badge/license-MIT-informational\" alt=\"License\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/meilisearch/meilisearch-js/queue\"\u003e\u003cimg alt=\"Merge Queues enabled\" src=\"https://img.shields.io/badge/Merge_Queues-enabled-%2357cf60?logo=github\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e⚡ The Meilisearch API client written for JavaScript\u003c/p\u003e\n\n**Meilisearch JavaScript** is the Meilisearch API client for JavaScript developers.\n\n**Meilisearch** is an open-source search engine. [Learn more about Meilisearch.](https://github.com/meilisearch/meilisearch)\n\n## Table of Contents \u003c!-- omit in TOC --\u003e\n\n- [📖 Documentation](#-documentation)\n- [🔧 Installation](#-installation)\n- [🚀 Getting started](#-getting-started)\n- [🤖 Compatibility with Meilisearch](#-compatibility-with-meilisearch)\n- [💡 Learn more](#-learn-more)\n- [⚙️ Contributing](#️-contributing)\n- [📜 API resources](#-api-resources)\n\n## 📖 Documentation\n\nThis readme and [Meilisearch JS documentation website](https://meilisearch.github.io/meilisearch-js/) contains all the information you need to start using this Meilisearch SDK.\n\nFor general information on how to use Meilisearch—such as our API reference, tutorials, guides, and in-depth articles—refer to our [main documentation website](https://www.meilisearch.com/docs/).\n\n## 🔧 Installation\n\nThis package is published to [npm](https://www.npmjs.com/package/meilisearch).\n\nInstalling with `npm`:\n\n```sh\nnpm i meilisearch\n```\n\n\u003e [!NOTE]\n\u003e\n\u003e Node.js\n\u003e [LTS and Maintenance versions](https://github.com/nodejs/Release?tab=readme-ov-file#release-schedule)\n\u003e are supported and tested. Other versions may or may not work.\n\nOther runtimes, like Deno and Bun, aren't tested, but if they do not work with\nthis package, please open an issue.\n\n### Run Meilisearch \u003c!-- omit in toc --\u003e\n\n⚡️ **Launch, scale, and streamline in minutes with Meilisearch Cloud**—no maintenance, no commitment, cancel anytime. [Try it free now](https://cloud.meilisearch.com/login?utm_campaign=oss\u0026utm_source=github\u0026utm_medium=meilisearch-js).\n\n🪨  Prefer to self-host? [Download and deploy](https://www.meilisearch.com/docs/learn/self_hosted/getting_started_with_self_hosted_meilisearch?utm_campaign=oss\u0026utm_source=github\u0026utm_medium=meilisearch-js) our fast, open-source search engine on your own infrastructure.\n\n### Import \u003c!-- omit in toc --\u003e\n\nAfter installing `meilisearch-js`, you must import it into your application. There are many ways of doing that depending on your development environment.\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003ch4\u003e⚠️ If any issues arise importing \u003ccode\u003emeilisearch/token\u003c/code\u003e\u003c/h4\u003e\u003c/summary\u003e\n\n- [TypeScript \u003e= 4.7](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-4-7.html)\n  is required\n- [`tsconfig.json` has to be set up correctly](https://www.typescriptlang.org/docs/handbook/modules/reference.html#packagejson-exports)\n  - take a look at\n    [Centralized Recommendations for TSConfig bases](https://github.com/tsconfig/bases?tab=readme-ov-file)\n\n\u003c/details\u003e\n\n\u003e [!WARNING]\n\u003e\n\u003e - [default export](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/export#using_the_default_export)\n\u003e   is deprecated and will be removed in a future version |\n\u003e   [Issue](https://github.com/meilisearch/meilisearch-js/issues/1789)\n\u003e - regarding usage of package's UMD version via `script src`, exports will stop\n\u003e   being directly available on the\n\u003e   [global object](https://developer.mozilla.org/en-US/docs/Glossary/Global_object)\n\u003e   | [Issue](https://github.com/meilisearch/meilisearch-js/issues/1806)\n\n#### `import` syntax \u003c!-- omit in toc --\u003e\n\nUsage in an ES module environment:\n\n```js\nimport { MeiliSearch } from \"meilisearch\";\n\nconst client = new MeiliSearch({\n  host: \"http://127.0.0.1:7700\",\n  apiKey: \"masterKey\",\n});\n```\n\n#### `\u003cscript\u003e` tag \u003c!-- omit in toc --\u003e\n\nThis package also contains a [UMD](https://stackoverflow.com/a/77284527) bundled\nversion, which in this case is meant to be used in a\n[`script src`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script#src)\ntag:\n\n```html\n\u003cscript src=\"https://www.unpkg.com/meilisearch/dist/umd/index.min.js\"\u003e\u003c/script\u003e\n\u003cscript\u003e\n    const client = new meilisearch.MeiliSearch(/* ... */);\n    // ...\n\u003c/script\u003e\n```\n\nBut keep in mind that each CDN ([JSDELIVR](https://www.jsdelivr.com),\n[ESM.SH](https://esm.sh/), etc.) provide more ways to import packages, make sure\nto read their documentation.\n\n#### `require` syntax \u003c!-- omit in toc --\u003e\n\nUsage in a back-end node.js or another environment supporting CommonJS modules:\n\n```js\nconst { MeiliSearch } = require(\"meilisearch\");\n\nconst client = new MeiliSearch({\n  host: \"http://127.0.0.1:7700\",\n  apiKey: \"masterKey\",\n});\n```\n\n#### React Native \u003c!-- omit in toc --\u003e\n\nTo use `meilisearch-js` with React Native, you must also install [react-native-url-polyfill](https://www.npmjs.com/package/react-native-url-polyfill).\n\n#### Deno\u003c!-- omit in toc --\u003e\n\nUsage in a Deno environment:\n\n```js\nimport { MeiliSearch } from \"npm:meilisearch\";\n\nconst client = new MeiliSearch({\n  host: \"http://127.0.0.1:7700\",\n  apiKey: \"masterKey\",\n});\n```\n\n## 🚀 Getting started\n\nTake a look at the [playground](./playgrounds/javascript/src/meilisearch.ts) for a concrete example.\n\n### Add documents \u003c!-- omit in toc --\u003e\n\n```js\nconst { MeiliSearch } = require('meilisearch')\n// Or if you are in a ES environment\nimport { MeiliSearch } from 'meilisearch'\n\n;(async () =\u003e {\n  const client = new MeiliSearch({\n    host: 'http://127.0.0.1:7700',\n    apiKey: 'masterKey',\n  })\n\n  // An index is where the documents are stored.\n  const index = client.index('movies')\n\n  const documents = [\n      { id: 1, title: 'Carol', genres: ['Romance', 'Drama'] },\n      { id: 2, title: 'Wonder Woman', genres: ['Action', 'Adventure'] },\n      { id: 3, title: 'Life of Pi', genres: ['Adventure', 'Drama'] },\n      { id: 4, title: 'Mad Max: Fury Road', genres: ['Adventure', 'Science Fiction'] },\n      { id: 5, title: 'Moana', genres: ['Fantasy', 'Action']},\n      { id: 6, title: 'Philadelphia', genres: ['Drama'] },\n  ]\n\n  // If the index 'movies' does not exist, Meilisearch creates it when you first add the documents.\n  let response = await index.addDocuments(documents)\n\n  console.log(response) // =\u003e { \"uid\": 0 }\n})()\n```\n\nTasks such as document addition always return a unique identifier. You can use this identifier `taskUid` to check the status (`enqueued`, `canceled`, `processing`, `succeeded` or `failed`) of a [task](https://www.meilisearch.com/docs/reference/api/tasks).\n\n### Basic search \u003c!-- omit in toc --\u003e\n\n```javascript\n// Meilisearch is typo-tolerant:\nconst search = await index.search('philoudelphia')\nconsole.log(search)\n```\n\nOutput:\n\n```json\n{\n  \"hits\": [\n    {\n      \"id\": \"6\",\n      \"title\": \"Philadelphia\",\n      \"genres\": [\"Drama\"]\n    }\n  ],\n  \"offset\": 0,\n  \"limit\": 20,\n  \"estimatedTotalHits\": 1,\n  \"processingTimeMs\": 1,\n  \"query\": \"philoudelphia\"\n}\n```\n\n### Using search parameters \u003c!-- omit in toc --\u003e\n\n`meilisearch-js` supports all [search parameters](https://www.meilisearch.com/docs/reference/api/search#search-parameters) described in our main documentation website.\n\n```javascript\nawait index.search(\n  'wonder',\n  {\n    attributesToHighlight: ['*']\n  }\n)\n```\n\n```json\n{\n  \"hits\": [\n    {\n      \"id\": 2,\n      \"title\": \"Wonder Woman\",\n      \"genres\": [\"Action\", \"Adventure\"],\n      \"_formatted\": {\n        \"id\": \"2\",\n        \"title\": \"\u003cem\u003eWonder\u003c/em\u003e Woman\",\n        \"genres\": [\"Action\", \"Adventure\"]\n      }\n    }\n  ],\n  \"offset\": 0,\n  \"limit\": 20,\n  \"estimatedTotalHits\": 1,\n  \"processingTimeMs\": 0,\n  \"query\": \"wonder\"\n}\n```\n\n### Custom search with filters \u003c!-- omit in toc --\u003e\n\nTo enable filtering, you must first add your attributes to the [`filterableAttributes` index setting](https://www.meilisearch.com/docs/reference/api/settings#filterable-attributes).\n\n```js\nawait index.updateFilterableAttributes([\n    'id',\n    'genres'\n  ])\n```\n\nYou only need to perform this operation once per index.\n\nNote that Meilisearch rebuilds your index whenever you update `filterableAttributes`. Depending on the size of your dataset, this might take considerable time. You can track the process using the [tasks API](https://www.meilisearch.com/docs/reference/api/tasks)).\n\nAfter you configured `filterableAttributes`, you can use the [`filter` search parameter](https://www.meilisearch.com/docs/reference/api/search#filter) to refine your search:\n\n```js\nawait index.search(\n  'wonder',\n  {\n    filter: ['id \u003e 1 AND genres = Action']\n  }\n)\n```\n\n```json\n{\n  \"hits\": [\n    {\n      \"id\": 2,\n      \"title\": \"Wonder Woman\",\n      \"genres\": [\"Action\",\"Adventure\"]\n    }\n  ],\n  \"offset\": 0,\n  \"limit\": 20,\n  \"estimatedTotalHits\": 1,\n  \"processingTimeMs\": 0,\n  \"query\": \"wonder\"\n}\n```\n\n### Placeholder search \u003c!-- omit in toc --\u003e\n\nPlaceholder search makes it possible to receive hits based on your parameters without having any query (`q`). For example, in a movies database you can run an empty query to receive all results filtered by `genre`.\n\n```javascript\nawait index.search(\n  '',\n  {\n    filter: ['genres = fantasy'],\n    facets: ['genres']\n  }\n)\n```\n\n```json\n{\n  \"hits\": [\n    {\n      \"id\": 2,\n      \"title\": \"Wonder Woman\",\n      \"genres\": [\"Action\",\"Adventure\"]\n    },\n    {\n      \"id\": 5,\n      \"title\": \"Moana\",\n      \"genres\": [\"Fantasy\",\"Action\"]\n    }\n  ],\n  \"offset\": 0,\n  \"limit\": 20,\n  \"estimatedTotalHits\": 2,\n  \"processingTimeMs\": 0,\n  \"query\": \"\",\n  \"facetDistribution\": {\n    \"genres\": {\n      \"Action\": 2,\n      \"Fantasy\": 1,\n      \"Adventure\": 1\n    }\n  }\n}\n```\n\nNote that to enable faceted search on your dataset you need to add `genres` to the `filterableAttributes` index setting. For more information on filtering and faceting, [consult our documentation settings](https://www.meilisearch.com/docs/learn/fine_tuning_results/faceted_search).\n\n#### Abortable search \u003c!-- omit in toc --\u003e\n\nYou can abort a pending search request by providing an [AbortSignal](https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal) to the request.\n\n```js\nconst controller = new AbortController()\n\nindex\n  .search('wonder', {}, {\n    signal: controller.signal,\n  })\n  .then((response) =\u003e {\n    /** ... */\n  })\n  .catch((e) =\u003e {\n    /** Catch AbortError here. */\n  })\n\ncontroller.abort()\n```\n\n### Using Meilisearch behind a proxy \u003c!-- omit in toc --\u003e\n\n#### Custom request config \u003c!-- omit in toc --\u003e\n\nYou can provide a custom request configuration. for example, with custom headers.\n\n```ts\nconst client: MeiliSearch = new MeiliSearch({\n  host: 'http://localhost:3000/api/meilisearch/proxy',\n  requestConfig: {\n    headers: {\n      Authorization: AUTH_TOKEN\n    },\n    // OR\n    credentials: 'include'\n  }\n})\n```\n\n#### Custom http client \u003c!-- omit in toc --\u003e\n\nYou can use your own HTTP client, for example, with [`axios`](https://github.com/axios/axios).\n\n```ts\nconst client: MeiliSearch = new MeiliSearch({\n  host: 'http://localhost:3000/api/meilisearch/proxy',\n  httpClient: async (url, opts) =\u003e {\n    const response = await $axios.request({\n      url,\n      data: opts?.body,\n      headers: opts?.headers,\n      method: (opts?.method?.toLocaleUpperCase() as Method) ?? 'GET'\n    })\n\n    return response.data\n  }\n})\n```\n\n## 🤖 Compatibility with Meilisearch\n\nThis package guarantees compatibility with [version v1.x of Meilisearch](https://github.com/meilisearch/meilisearch/releases/latest), but some features may not be present. Please check the [issues](https://github.com/meilisearch/meilisearch-js/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22+label%3Aenhancement) for more info.\n\n## 💡 Learn more\n\nThe following sections in our main documentation website may interest you:\n\n- **Manipulate documents**: see the [API references](https://www.meilisearch.com/docs/reference/api/documents) or read more about [documents](https://www.meilisearch.com/docs/learn/core_concepts/documents).\n- **Search**: see the [API references](https://www.meilisearch.com/docs/reference/api/search) or follow our guide on [search parameters](https://www.meilisearch.com/docs/reference/api/search#search-parameters).\n- **Manage the indexes**: see the [API references](https://www.meilisearch.com/docs/reference/api/indexes) or read more about [indexes](https://www.meilisearch.com/docs/learn/core_concepts/indexes).\n- **Configure the index settings**: see the [API references](https://www.meilisearch.com/docs/reference/api/settings) or follow our guide on [settings parameters](https://www.meilisearch.com/docs/reference/api/settings#settings_parameters).\n\nThis repository also contains [more examples](./examples).\n\n## ⚙️ Contributing\n\nWe welcome all contributions, big and small! If you want to know more about this SDK's development workflow or want to contribute to the repo, please visit our [contributing guidelines](/CONTRIBUTING.md) for detailed instructions.\n\n## 📜 API resources\n\n### Search \u003c!-- omit in toc --\u003e\n\n#### [Make a search request](https://www.meilisearch.com/docs/reference/api/search)\n\n```ts\nclient.index\u003cT\u003e('xxx').search(query: string, options: SearchParams = {}, config?: Partial\u003cRequest\u003e): Promise\u003cSearchResponse\u003cT\u003e\u003e\n```\n\n#### [Make a search request using the GET method (slower than the search method)](https://www.meilisearch.com/docs/reference/api/search#search-in-an-index-with-get-route)\n\n```ts\nclient.index\u003cT\u003e('xxx').searchGet(query: string, options: SearchParams = {}, config?: Partial\u003cRequest\u003e): Promise\u003cSearchResponse\u003cT\u003e\u003e\n```\n\n### Multi Search\n\n#### [Make multiple search requests](https://www.meilisearch.com/docs/reference/api/multi_search#multi-search)\n\n```ts\nclient.multiSearch(queries?: MultiSearchParams, config?: Partial\u003cRequest\u003e): Promise\u003cPromise\u003cMultiSearchResponse\u003cT\u003e\u003e\u003e\n```\n\n`multiSearch` uses the `POST` method when performing its request to Meilisearch.\n\n### Search For Facet Values\n\n#### [Search for facet values](https://www.meilisearch.com/docs/reference/api/facet_search#perform-a-facet-search)\n\n```ts\nclient.index\u003cT\u003e('myIndex').searchForFacetValues(params: SearchForFacetValuesParams, config?: Partial\u003cRequest\u003e): Promise\u003cSearchForFacetValuesResponse\u003e\n```\n\n### Documents \u003c!-- omit in toc --\u003e\n\n#### [Add or replace multiple documents](https://www.meilisearch.com/docs/reference/api/documents#add-or-replace-documents)\n\n```ts\nclient.index('myIndex').addDocuments(documents: Document\u003cT\u003e[]): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Add or replace multiple documents in string format](https://www.meilisearch.com/docs/reference/api/documents#add-or-update-documents)\n\n```ts\nclient.index('myIndex').addDocumentsFromString(documents: string, contentType: ContentType, queryParams: RawDocumentAdditionOptions): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Add or replace multiple documents in batches](https://www.meilisearch.com/docs/reference/api/documents#add-or-replace-documents)\n\n```ts\nclient.index('myIndex').addDocumentsInBatches(documents: Document\u003cT\u003e[], batchSize = 1000): Promise\u003cEnqueuedTask[]\u003e\n```\n\n#### [Add or update multiple documents](https://www.meilisearch.com/docs/reference/api/documents#add-or-update-documents)\n\n```ts\nclient.index('myIndex').updateDocuments(documents: Array\u003cDocument\u003cPartial\u003cT\u003e\u003e\u003e): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Add or update multiple documents in string format](https://www.meilisearch.com/docs/reference/api/documents#add-or-update-documents)\n\n```ts\nclient.index('myIndex').updateDocumentsFromString(documents: string, contentType: ContentType, queryParams: RawDocumentAdditionOptions): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Add or update multiple documents in batches](https://www.meilisearch.com/docs/reference/api/documents#add-or-update-documents)\n\n```ts\nclient.index('myIndex').updateDocumentsInBatches(documents: Array\u003cDocument\u003cPartial\u003cT\u003e\u003e\u003e, batchSize = 1000): Promise\u003cEnqueuedTask[]\u003e\n```\n\n#### [Get Documents](https://www.meilisearch.com/docs/reference/api/documents#get-documents)\n\n```ts\nclient.index.getDocuments(parameters: DocumentsQuery = {}): Promise\u003cDocumentsResults\u003cT\u003e\u003e\u003e\n```\n\n#### [Get one document](https://www.meilisearch.com/docs/reference/api/documents#get-one-document)\n\n```ts\nclient.index('myIndex').getDocument(documentId: string): Promise\u003cDocument\u003cT\u003e\u003e\n```\n\n#### [Delete one document](https://www.meilisearch.com/docs/reference/api/documents#delete-one-document)\n\n```ts\nclient.index('myIndex').deleteDocument(documentId: string | number): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Delete multiple documents](https://www.meilisearch.com/docs/reference/api/documents#delete-documents)\n\n```ts\nclient.index('myIndex').deleteDocuments(params: DocumentsDeletionQuery | DocumentsIds): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Delete all documents](https://www.meilisearch.com/docs/reference/api/documents#delete-all-documents)\n\n```ts\nclient.index('myIndex').deleteAllDocuments(): Promise\u003cTypes.EnqueuedTask\u003e\n```\n\n### Tasks \u003c!-- omit in toc --\u003e\n\n#### [Get all tasks](https://www.meilisearch.com/docs/reference/api/tasks#get-all-tasks)\n\n```ts\nclient.getTasks(parameters: TasksQuery): Promise\u003cTasksResults\u003e\n```\n\n#### [Get one task](https://www.meilisearch.com/docs/reference/api/tasks)\n\n```ts\nclient.getTask(uid: number): Promise\u003cTask\u003e\n```\n\n#### [Delete tasks](https://www.meilisearch.com/docs/reference/api/tasks#delete-tasks)\n\n```ts\nclient.deleteTasks(parameters: DeleteTasksQuery = {}): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Cancel tasks](https://www.meilisearch.com/docs/reference/api/tasks#cancel-tasks)\n\n```ts\nclient.cancelTasks(parameters: CancelTasksQuery = {}): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Get all tasks of an index](https://www.meilisearch.com/docs/reference/api/tasks#get-all-tasks-by-index)\n\n```ts\nclient.index('myIndex').getTasks(parameters: TasksQuery): Promise\u003cTasksResults\u003e\n```\n\n#### [Get one task of an index](https://www.meilisearch.com/docs/reference/api/tasks)\n\n```ts\nclient.index('myIndex').getTask(uid: number): Promise\u003cTask\u003e\n```\n\n#### Wait for one task\n\n```ts\nclient.tasks.waitForTask(uid: number, { timeout?: number, interval?: number }): Promise\u003cTask\u003e\n```\n\n#### Wait for multiple tasks\n\n```ts\nclient.tasks.waitForTasks(uids: number[], { timeout?: number, interval?: number }): Promise\u003cTask[]\u003e\n```\n\n### Batches \u003c!-- omit in toc --\u003e\n\n#### [Get one batch](https://www.meilisearch.com/docs/reference/api/batches#get-one-batch)\n\n```ts\nclient.getBatch(uid: number): Promise\u003cBatch\u003e\n```\n\n#### [Get all batches](https://www.meilisearch.com/docs/reference/api/batchess#get-batches)\n\n```ts\nclient.getBatches(parameters: BatchesQuery = {}): Promise\u003cBatchesResults\u003e\n```\n\n### Indexes \u003c!-- omit in toc --\u003e\n\n#### [Get all indexes in Index instances](https://www.meilisearch.com/docs/reference/api/indexes#list-all-indexes)\n\n```ts\nclient.getIndexes(parameters: IndexesQuery): Promise\u003cIndexesResults\u003cIndex[]\u003e\u003e\n```\n\n#### [Get all indexes](https://www.meilisearch.com/docs/reference/api/indexes#list-all-indexes)\n\n```ts\nclient.getRawIndexes(parameters: IndexesQuery): Promise\u003cIndexesResults\u003cIndexObject[]\u003e\u003e\n```\n\n\n#### [Create a new index](https://www.meilisearch.com/docs/reference/api/indexes#create-an-index)\n\n```ts\nclient.createIndex\u003cT\u003e(uid: string, options?: IndexOptions): Promise\u003cEnqueuedTask\u003e\n```\n\n#### Create a local reference to an index\n\n```ts\nclient.index\u003cT\u003e(uid: string): Index\u003cT\u003e\n```\n\n#### [Get an index instance completed with information fetched from Meilisearch](https://www.meilisearch.com/docs/reference/api/indexes#get-one-index)\n\n```ts\nclient.getIndex\u003cT\u003e(uid: string): Promise\u003cIndex\u003cT\u003e\u003e\n```\n\n#### [Get the raw index JSON response from Meilisearch](https://www.meilisearch.com/docs/reference/api/indexes#get-one-index)\n\n```ts\nclient.getRawIndex(uid: string): Promise\u003cIndexObject\u003e\n```\n\n#### [Get an object with information about the index](https://www.meilisearch.com/docs/reference/api/indexes#get-one-index)\n\n```ts\nclient.index('myIndex').getRawInfo(): Promise\u003cIndexObject\u003e\n```\n\n#### [Update Index](https://www.meilisearch.com/docs/reference/api/indexes#update-an-index)\n\n##### Using the client\n\n```ts\nclient.updateIndex(uid: string, options: IndexOptions): Promise\u003cEnqueuedTask\u003e\n```\n\n##### Using the index object\n\n```ts\nclient.index('myIndex').update(data: IndexOptions): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Delete index](https://www.meilisearch.com/docs/reference/api/indexes#delete-an-index)\n\n##### Using the client\n```ts\nclient.deleteIndex(uid): Promise\u003cvoid\u003e\n```\n\n##### Using the index object\n```ts\nclient.index('myIndex').delete(): Promise\u003cvoid\u003e\n```\n\n#### [Get specific index stats](https://www.meilisearch.com/docs/reference/api/stats#get-stats-of-an-index)\n\n```ts\nclient.index('myIndex').getStats(): Promise\u003cIndexStats\u003e\n```\n\n##### Return Index instance with updated information\n\n```ts\nclient.index('myIndex').fetchInfo(): Promise\u003cIndex\u003e\n```\n\n##### Get Primary Key of an Index\n\n```ts\nclient.index('myIndex').fetchPrimaryKey(): Promise\u003cstring | undefined\u003e\n```\n\n##### Swap two indexes\n\n```ts\nclient.swapIndexes(params: SwapIndexesParams): Promise\u003cEnqueuedTask\u003e\n```\n\n### Settings \u003c!-- omit in toc --\u003e\n\n#### [Get settings](https://www.meilisearch.com/docs/reference/api/settings#get-settings)\n\n```ts\nclient.index('myIndex').getSettings(): Promise\u003cSettings\u003e\n```\n\n#### [Update settings](https://www.meilisearch.com/docs/reference/api/settings#update-settings)\n\n```ts\nclient.index('myIndex').updateSettings(settings: Settings): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset settings](https://www.meilisearch.com/docs/reference/api/settings#reset-settings)\n\n```ts\nclient.index('myIndex').resetSettings(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Pagination Settings\n\n#### [Get pagination](https://www.meilisearch.com/docs/reference/api/settings#get-pagination-settings)\n\n```ts\nclient.index('myIndex').getPagination(): Promise\u003cPaginationSettings\u003e\n```\n\n#### [Update pagination](https://www.meilisearch.com/docs/reference/api/settings#update-pagination-settings)\n\n```ts\nclient.index('myIndex').updatePagination(pagination: PaginationSettings): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset pagination](https://www.meilisearch.com/docs/reference/api/settings#reset-pagination-settings)\n\n```ts\nclient.index('myIndex').resetPagination(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Synonyms \u003c!-- omit in toc --\u003e\n\n#### [Get synonyms](https://www.meilisearch.com/docs/reference/api/settings#get-synonyms)\n\n```ts\nclient.index('myIndex').getSynonyms(): Promise\u003cSynonyms\u003e\n```\n\n#### [Update synonyms](https://www.meilisearch.com/docs/reference/api/settings#update-synonyms)\n\n```ts\nclient.index('myIndex').updateSynonyms(synonyms: Synonyms): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset synonyms](https://www.meilisearch.com/docs/reference/api/settings#reset-synonyms)\n\n```ts\nclient.index('myIndex').resetSynonyms(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Stop words \u003c!-- omit in toc --\u003e\n\n#### [Get stop words](https://www.meilisearch.com/docs/reference/api/settings#get-stop-words)\n\n```ts\nclient.index('myIndex').getStopWords(): Promise\u003cstring[]\u003e\n```\n\n#### [Update stop words](https://www.meilisearch.com/docs/reference/api/settings#update-stop-words)\n\n```ts\nclient.index('myIndex').updateStopWords(stopWords: string[] | null ): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset stop words](https://www.meilisearch.com/docs/reference/api/settings#reset-stop-words)\n\n```ts\nclient.index('myIndex').resetStopWords(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Ranking rules \u003c!-- omit in toc --\u003e\n\n#### [Get ranking rules](https://www.meilisearch.com/docs/reference/api/settings#get-ranking-rules)\n\n```ts\nclient.index('myIndex').getRankingRules(): Promise\u003cstring[]\u003e\n```\n\n#### [Update ranking rules](https://www.meilisearch.com/docs/reference/api/settings#update-ranking-rules)\n\n```ts\nclient.index('myIndex').updateRankingRules(rankingRules: string[] | null): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset ranking rules](https://www.meilisearch.com/docs/reference/api/settings#reset-ranking-rules)\n\n```ts\nclient.index('myIndex').resetRankingRules(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Distinct Attribute \u003c!-- omit in toc --\u003e\n\n#### [Get distinct attribute](https://www.meilisearch.com/docs/reference/api/settings#get-distinct-attribute)\n\n```ts\nclient.index('myIndex').getDistinctAttribute(): Promise\u003cstring | void\u003e\n```\n\n#### [Update distinct attribute](https://www.meilisearch.com/docs/reference/api/settings#update-distinct-attribute)\n\n```ts\nclient.index('myIndex').updateDistinctAttribute(distinctAttribute: string | null): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset distinct attribute](https://www.meilisearch.com/docs/reference/api/settings#reset-distinct-attribute)\n\n```ts\nclient.index('myIndex').resetDistinctAttribute(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Searchable attributes \u003c!-- omit in toc --\u003e\n\n#### [Get searchable attributes](https://www.meilisearch.com/docs/reference/api/settings#get-searchable-attributes)\n\n```ts\nclient.index('myIndex').getSearchableAttributes(): Promise\u003cstring[]\u003e\n```\n\n#### [Update searchable attributes](https://www.meilisearch.com/docs/reference/api/settings#update-searchable-attributes)\n\n```ts\nclient.index('myIndex').updateSearchableAttributes(searchableAttributes: string[] | null): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset searchable attributes](https://www.meilisearch.com/docs/reference/api/settings#reset-searchable-attributes)\n\n```ts\nclient.index('myIndex').resetSearchableAttributes(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Displayed attributes \u003c!-- omit in toc --\u003e\n\n#### [Get displayed attributes](https://www.meilisearch.com/docs/reference/api/settings#get-displayed-attributes)\n\n```ts\nclient.index('myIndex').getDisplayedAttributes(): Promise\u003cstring[]\u003e\n```\n\n#### [Update displayed attributes](https://www.meilisearch.com/docs/reference/api/settings#update-displayed-attributes)\n\n```ts\nclient.index('myIndex').updateDisplayedAttributes(displayedAttributes: string[] | null): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset displayed attributes](https://www.meilisearch.com/docs/reference/api/settings#reset-displayed-attributes)\n\n```ts\nclient.index('myIndex').resetDisplayedAttributes(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Filterable attributes \u003c!-- omit in toc --\u003e\n\n#### [Get filterable attributes](https://www.meilisearch.com/docs/reference/api/settings#get-filterable-attributes)\n\n```ts\nclient.index('myIndex').getFilterableAttributes(): Promise\u003cstring[]\u003e\n```\n\n#### [Update filterable attributes](https://www.meilisearch.com/docs/reference/api/settings#update-filterable-attributes)\n\n```ts\nclient.index('myIndex').updateFilterableAttributes(filterableAttributes: string[] | null): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset filterable attributes](https://www.meilisearch.com/docs/reference/api/settings#reset-filterable-attributes)\n\n```ts\nclient.index('myIndex').resetFilterableAttributes(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Sortable attributes \u003c!-- omit in toc --\u003e\n\n#### [Get sortable attributes](https://www.meilisearch.com/docs/reference/api/settings#get-sortable-attributes)\n\n```ts\nclient.index('myIndex').getSortableAttributes(): Promise\u003cstring[]\u003e\n```\n\n#### [Update sortable attributes](https://www.meilisearch.com/docs/reference/api/settings#update-sortable-attributes)\n\n```ts\nclient.index('myIndex').updateSortableAttributes(sortableAttributes: string[] | null): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset sortable attributes](https://www.meilisearch.com/docs/reference/api/settings#reset-sortable-attributes)\n\n```ts\nclient.index('myIndex').resetSortableAttributes(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Faceting \u003c!-- omit in toc --\u003e\n\n#### [Get faceting](https://www.meilisearch.com/docs/reference/api/settings#get-faceting-settings)\n\n```ts\nclient.index('myIndex').getFaceting(): Promise\u003cFaceting\u003e\n```\n\n#### [Update faceting](https://www.meilisearch.com/docs/reference/api/settings#update-faceting-settings)\n\n```ts\nclient.index('myIndex').updateFaceting(faceting: Faceting): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset faceting](https://www.meilisearch.com/docs/reference/api/settings#reset-faceting-settings)\n\n```ts\nclient.index('myIndex').resetFaceting(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Typo tolerance \u003c!-- omit in toc --\u003e\n\n#### [Get typo tolerance](https://www.meilisearch.com/docs/reference/api/settings#get-typo-tolerance-settings)\n\n```ts\nclient.index('myIndex').getTypoTolerance(): Promise\u003cTypoTolerance\u003e\n```\n\n#### [Update typo tolerance](https://www.meilisearch.com/docs/reference/api/settings#update-typo-tolerance-settings)\n\n```ts\nclient.index('myIndex').updateTypoTolerance(typoTolerance: TypoTolerance | null): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset typo tolerance](https://www.meilisearch.com/docs/reference/api/settings#reset-typo-tolerance-settings)\n\n```ts\nclient.index('myIndex').resetTypoTolerance(): Promise\u003cEnqueuedTask\u003e\n```\n\n\n### Separator tokens \u003c!-- omit in toc --\u003e\n\n#### [Get separator tokens](https://www.meilisearch.com/docs/reference/api/settings#get-separator-tokens)\n\n```ts\nclient.index('myIndex').getSeparatorTokens(): Promise\u003cSeparatorTokens\u003e\n```\n\n#### [Update separator tokens](https://www.meilisearch.com/docs/reference/api/settings#update-separator-tokens)\n\n```ts\nclient.index('myIndex').updateSeparatorTokens(separatorTokens: SeparatorTokens | null): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset separator tokens](https://www.meilisearch.com/docs/reference/api/settings#reset-separator-tokens)\n\n```ts\nclient.index('myIndex').resetSeparatorTokens(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Non Separator tokens \u003c!-- omit in toc --\u003e\n\n#### [Get non separator tokens](https://www.meilisearch.com/docs/reference/api/settings#get-non-separator-tokens)\n\n```ts\nclient.index('myIndex').getNonSeparatorTokens(): Promise\u003cNonSeparatorTokens\u003e\n```\n\n#### [Update non separator tokens](https://www.meilisearch.com/docs/reference/api/settings#update-non-separator-tokens)\n\n```ts\nclient.index('myIndex').updateNonSeparatorTokens(nonSeparatorTokens: NonSeparatorTokens | null): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset non separator tokens](https://www.meilisearch.com/docs/reference/api/settings#reset-non-separator-tokens)\n\n```ts\nclient.index('myIndex').resetNonSeparatorTokens(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Dictionary \u003c!-- omit in toc --\u003e\n\n#### [Get dictionary](https://www.meilisearch.com/docs/reference/api/settings#get-dictionary)\n\n```ts\nclient.index('myIndex').getDictionary(): Promise\u003cDictionary\u003e\n```\n\n#### [Update dictionary](https://www.meilisearch.com/docs/reference/api/settings#update-dictionary)\n\n```ts\nclient.index('myIndex').updateDictionary(dictionary: Dictionary | null): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset dictionary](https://www.meilisearch.com/docs/reference/api/settings#reset-dictionary)\n\n```ts\nclient.index('myIndex').resetDictionary(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Proximity Precision \u003c!-- omit in toc --\u003e\n\n#### [Get proximity precision](https://www.meilisearch.com/docs/reference/api/settings#get-proximity-precision-settings)\n\n```ts\nclient.index('myIndex').getProximityPrecision(): Promise\u003cProximityPrecision\u003e\n```\n\n#### [Update proximity precision](https://www.meilisearch.com/docs/reference/api/settings#update-proximity-precision-settings)\n\n```ts\nclient.index('myIndex').updateProximityPrecision(proximityPrecision: ProximityPrecision): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset proximity precision](https://www.meilisearch.com/docs/reference/api/settings#reset-proximity-precision-settings)\n\n```ts\nclient.index('myIndex').resetProximityPrecision(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Facet search settings \u003c!-- omit in toc --\u003e\n\n#### [Get facet search settings](https://www.meilisearch.com/docs/reference/api/settings#get-facet-search-settings)\n\n```ts\nclient.index('myIndex').getFacetSearch(): Promise\u003cboolean\u003e\n```\n\n#### [Update facet search settings](https://www.meilisearch.com/docs/reference/api/settings#update-facet-search-settings)\n\n```ts\nclient.index('myIndex').updateFacetSearch(enabled: boolean): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset facet search settings](https://www.meilisearch.com/docs/reference/api/settings#reset-facet-search-settings)\n\n```ts\nclient.index('myIndex').resetFacetSearch(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Prefix search settings \u003c!-- omit in toc --\u003e\n\n#### [Get prefix search settings](https://www.meilisearch.com/docs/reference/api/settings#get-prefix-search-settings)\n\n```ts\nclient.index('myIndex').getPrefixSearch(): Promise\u003cPrefixSearch\u003e\n```\n\n#### [Update prefix search settings](https://www.meilisearch.com/docs/reference/api/settings#update-prefix-search-settings)\n\n```ts\nclient.index('myIndex').updatePrefixSearch(prefixSearch: PrefixSearch): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset prefix search settings](https://www.meilisearch.com/docs/reference/api/settings#reset-prefix-search-settings)\n\n```ts\nclient.index('myIndex').resetPrefixSearch(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Embedders \u003c!-- omit in toc --\u003e\n\n#### Get embedders\n\n```ts\nclient.index('myIndex').getEmbedders(): Promise\u003cEmbedders\u003e\n```\n\n#### Update embedders\n\n```ts\nclient.index('myIndex').updateEmbedders(embedders: Embedders): Promise\u003cEnqueuedTask\u003e\n```\n\n#### Reset embedders\n\n```ts\nclient.index('myIndex').resetEmbedders(): Promise\u003cEnqueuedTask\u003e\n```\n\n### SearchCutoffMs \u003c!-- omit in toc --\u003e\n\n#### [Get SearchCutoffMs](https://www.meilisearch.com/docs/reference/api/settings#get-search-cutoff)\n\n```ts\nclient.index('myIndex').getSearchCutoffMs(): Promise\u003cSearchCutoffMs\u003e\n```\n\n#### [Update SearchCutoffMs](https://www.meilisearch.com/docs/reference/api/settings#update-search-cutoff)\n\n```ts\nclient.index('myIndex').updateSearchCutoffMs(searchCutoffMs: SearchCutoffMs): Promise\u003cEnqueuedTask\u003e\n```\n\n#### [Reset SearchCutoffMs](https://www.meilisearch.com/docs/reference/api/settings#reset-search-cutoff)\n\n```ts\nclient.index('myIndex').resetSearchCutoffMs(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Keys \u003c!-- omit in toc --\u003e\n\n#### [Get keys](https://www.meilisearch.com/docs/reference/api/keys#get-all-keys)\n\n```ts\nclient.getKeys(parameters: KeysQuery): Promise\u003cKeysResults\u003e\n```\n\n#### [Get one key](https://www.meilisearch.com/docs/reference/api/keys#get-one-key)\n\n```ts\nclient.getKey(keyOrUid: string): Promise\u003cKey\u003e\n```\n\n#### [Create a key](https://www.meilisearch.com/docs/reference/api/keys#create-a-key)\n\n```ts\nclient.createKey(options: KeyCreation): Promise\u003cKey\u003e\n```\n\n#### [Update a key](https://www.meilisearch.com/docs/reference/api/keys#update-a-key)\n\n```ts\nclient.updateKey(keyOrUid: string, options: KeyUpdate): Promise\u003cKey\u003e\n```\n\n#### [Delete a key](https://www.meilisearch.com/docs/reference/api/keys#delete-a-key)\n\n```ts\nclient.deleteKey(keyOrUid: string): Promise\u003cvoid\u003e\n```\n\n### `isHealthy` \u003c!-- omit in toc --\u003e\n\n#### [Return `true` or `false` depending on the health of the server](https://www.meilisearch.com/docs/reference/api/health#get-health)\n\n```ts\nclient.isHealthy(): Promise\u003cboolean\u003e\n```\n\n### Health \u003c!-- omit in toc --\u003e\n\n#### [Check if the server is healthy](https://www.meilisearch.com/docs/reference/api/health#get-health)\n\n```ts\nclient.health(): Promise\u003cHealth\u003e\n```\n\n### Stats \u003c!-- omit in toc --\u003e\n\n#### [Get database stats](https://www.meilisearch.com/docs/reference/api/stats#get-stats-of-all-indexes)\n\n```ts\nclient.getStats(): Promise\u003cStats\u003e\n```\n\n### Version \u003c!-- omit in toc --\u003e\n\n#### [Get binary version](https://www.meilisearch.com/docs/reference/api/version#get-version-of-meilisearch)\n\n```ts\nclient.getVersion(): Promise\u003cVersion\u003e\n```\n\n### Dumps \u003c!-- omit in toc --\u003e\n\n#### [Trigger a dump creation process](https://www.meilisearch.com/docs/reference/api/dump#create-a-dump)\n\n```ts\nclient.createDump(): Promise\u003cEnqueuedTask\u003e\n```\n\n### Snapshots \u003c!-- omit in toc --\u003e\n\n#### [Trigger a snapshot on-demand process](https://www.meilisearch.com/docs/reference/api/snapshots#create-a-snapshot)\n\n```ts\nclient.createSnapshot(): Promise\u003cEnqueuedTask\u003e\n```\n\n---\n\nMeilisearch provides and maintains many SDKs and integration tools like this one. We want to provide everyone with an **amazing search experience for any kind of project**. For a full overview of everything we create and maintain, take a look at the [integration-guides](https://github.com/meilisearch/integration-guides) repository.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeilisearch%2Fmeilisearch-js","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmeilisearch%2Fmeilisearch-js","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeilisearch%2Fmeilisearch-js/lists"}