canonical: https://jentic.com/apis/meilisearch.com/meilisearch-main

# Meilisearch v1.0

Jentic publishes the only available OpenAPI specification for Meilisearch v1.0, keeping it validated and agent-ready. Meilisearch is an open-source search engine that delivers fast typo-tolerant full-text search with built-in ranking rules, faceting, and synonyms. The 1.0 API surface exposes 65 endpoints across indexes, documents, search, settings, tasks, key management, stats, and dumps. Use it to build search experiences with millisecond response times, manage per-index ranking rules, and run multi-tenant search through scoped API keys.

## For AI agents

Index documents and run typo-tolerant search against Meilisearch indexes so an agent can deliver fast structured search results without operating a heavyweight search cluster.

## Scope

Does not handle log analytics, vector search at very large scale, or hosted SaaS billing - use for typo-tolerant document search and index management on Meilisearch only.

## Capabilities

- Create and configure indexes with primary keys for document identity
- Add, update, and delete documents in batches against an index
- Run typo-tolerant full-text search with filters and facets in one request
- Configure ranking rules, searchable attributes, and stop-words per index
- Manage tenant-scoped API keys with action and index restrictions
- Inspect tasks to monitor the progress of index updates and document ingestions
- Snapshot and restore data via dumps for backup or environment promotion

## Use cases

### In-Product Catalogue Search

Embed typo-tolerant catalogue search inside a SaaS product without operating Elasticsearch. Meilisearch's /indexes/{index}/search endpoint returns ranked results in milliseconds, and per-index settings let teams tune searchable attributes and synonyms per market or audience. Product teams use this to ship a high-quality search experience in days rather than weeks.

Example prompt: Send a search request to /indexes/products/search with q=running shoes and filter=category=apparel and return the top 20 ranked results.

### Document Ingest from a Source-of-Truth Database

Stream rows from Postgres or another source-of-truth into Meilisearch by batching POSTs to /indexes/{index}/documents. The /tasks endpoint exposes a task id per ingest so a pipeline can confirm completion before swapping traffic. Data engineers use this pattern to keep the search index within a few seconds of the operational store.

Example prompt: POST a batch of 1,000 product documents to /indexes/products/documents, capture the returned task id, and poll /tasks/{taskId} until status is succeeded.

### Multi-Tenant Search with Scoped Keys

Serve multiple customers from a single Meilisearch instance by issuing scoped API keys that restrict actions and indexes per tenant. /keys lets an agent mint, list, and revoke keys, while ranking-rule and synonym settings can be tuned per index. Platform teams use this to keep search costs flat as they grow tenant counts.

Example prompt: POST to /keys to mint a new key restricted to actions=search and indexes=tenant_42_products, then return the key uid for distribution.

### Agent-Driven Index Reconfiguration

Hand an SRE agent the ability to roll out new ranking rules or synonyms across indexes without manual edits. Through Jentic the agent searches by intent, loads the settings schema, and applies the change inside a guarded workflow. This converts a multi-step ops task into a single audited agent run.

Example prompt: Update /indexes/products/settings/synonyms with a new mapping, then run a verification search via /indexes/products/search to confirm recall.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /indexes | List all indexes |
| POST | /indexes/{indexUid}/search | Run a search against an index |
| POST | /indexes/{indexUid}/documents | Add or update documents |
| GET | /indexes/{indexUid}/settings | Read index settings including ranking rules |
| GET | /tasks | List tasks for asynchronous index operations |
| GET | /keys | List API keys |
| POST | /dumps | Create a dump for backup |
| GET | /health | Check instance health |

## Key resources

- **Indexes** — Create, configure, and delete search indexes
- **Documents** — Add, update, and delete documents in an index in batches
- **Search** — Run typo-tolerant full-text search with filtering and faceting
- **Settings** — Configure ranking rules, searchable attributes, synonyms, and typo tolerance per index
- **Tasks** — Inspect and cancel asynchronous tasks created by index updates
- **Key Management** — Mint, list, and revoke scoped API keys for multi-tenant access
- **Dumps** — Snapshot and restore data for backup or environment promotion

## Why Jentic

- **Setup:** Wiring Meilisearch by hand means pointing at your instance host, sending the master or scoped key as a bearer header, and hand-coding index, document, and search calls plus task polling. Through Jentic you install once, import Meilisearch from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** Meilisearch puts the index id in the URL path (/indexes/{indexUid}/...), so a rule can pin your agent to one index: it can search and read documents there and nothing else. You choose the operations it may call, so index deletion or dump creation is included only if you add it.
- **Credential handling:** Your Meilisearch API key is stored once, encrypted, by your own Jentic One instance and injected as the Authorization Bearer header at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'search a Meilisearch index' or 'add documents to an index', and Jentic returns the matching /indexes/{indexUid}/search operation with its query and filter schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Meilisearch v1.0 (alternate spec)** — Sibling spec for the same Meilisearch 1.0 API surface from a different source.
- **Algolia Search API** — Algolia is a hosted search service with a richer SaaS feature set and managed scaling.
- **Elastic Kibana API** — Elastic offers a heavier search and analytics platform that complements Meilisearch's lighter footprint.
- **OpenAI API** — Use OpenAI to generate embeddings or summaries for documents you store in Meilisearch.

## FAQ

### Why is there no official OpenAPI spec for Meilisearch v1.0?

Meilisearch publishes API reference docs but not a maintained OpenAPI specification at this version. Jentic generates and maintains this spec so that AI agents and developers can call Meilisearch v1.0 via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Meilisearch v1.0 API use?

Meilisearch supports an Authorization: Bearer header carrying either a master key or a scoped API key minted via /keys. The 1.0 spec captures the endpoint surface; through Jentic the master or scoped key is stored encrypted in the vault and injected at execution time.

### Can I run typo-tolerant search with the Meilisearch API?

Yes. /indexes/{indexUid}/search runs typo-tolerant ranking by default; behaviour is tunable per index via /indexes/{indexUid}/settings/typo-tolerance for minimum word size and disabling typos on selected attributes.

### What are the rate limits for the Meilisearch API?

Meilisearch does not impose hard rate limits in the open-source build - limits are bounded by your instance's CPU and memory. Indexing operations are queued as tasks; poll /tasks/{taskUid} to confirm completion before issuing dependent calls through Jentic.

### How do I add documents to an index through Jentic?

Search Jentic for add documents to a Meilisearch index, load the schema for POST /indexes/{indexUid}/documents, and execute with the JSON document array. Jentic returns the task uid which you poll via /tasks/{taskUid} to confirm enqueued ingestion succeeded.

### Can I configure synonyms or ranking rules per index?

Yes. Each index has dedicated settings endpoints under /indexes/{indexUid}/settings, including /synonyms, /ranking-rules, /searchable-attributes, /stop-words, and /filterable-attributes, so you can tune relevance per dataset.

### Can I limit what my agent is allowed to do with the Meilisearch API?

Yes. Because Meilisearch puts the index id in the URL path (/indexes/{indexUid}/...), your self-hosted Jentic One instance lets you write a rule that pins the agent to a single index, so it can search and read documents there and nothing else. You decide which operations it may call, so destructive actions like index deletion or dump creation via /dumps are available only if you explicitly add them. The Meilisearch key is held by your own Jentic One instance and injected at execution time, so the agent never sees the credential and can only run the operations your rules permit.
