# Quick Start

MeiliSearch is very simple to install and deploy. It requires very little configuration to be up and running. Follow this step-by-step guide to get started!

# Deploy the Server

You can deploy the server on your own machine. By default, the server will listen to port 7700 for HTTP requests.

# Create an Index and upload documents

MeiliSearch can serve multiple indexes, with different kinds of documents.

It is required to create an index before sending documents to it.

$ curl -i -X POST '' \
  --data '{
    "uid": "movies"

This uid is the :index_uid identifier used in all indexes/:index_uid routes.

Now that the server knows about your brand new index, you're ready to send it some data.

If you need a test dataset, use this sample.

$ curl -i -X POST '' \
  --data @datasets/movies/movies.json


If you get a Could not infer a primary key error, see detailed information about the primary key here.

# Search for Documents

The search engine is now aware of your documents and can serve those via an HTTP server.

$ curl ''
  "hits": [
      "id": "29751",
      "title": "Batman Unmasked: The Psychology of the Dark Knight",
      "poster": "https://image.tmdb.org/t/p/w1280/jjHu128XLARc2k4cJrblAvZe0HE.jpg",
      "overview": "Delve into the world of Batman and the vigilante justice tha",
      "release_date": "2008-07-15"
      "id": "471474",
      "title": "Batman: Gotham by Gaslight",
      "poster": "https://image.tmdb.org/t/p/w1280/7souLi5zqQCnpZVghaXv0Wowi0y.jpg",
      "overview": "ve Victorian Age Gotham City, Batman begins his war on crime",
      "release_date": "2018-01-12"
  "offset": 0,
  "limit": 2,
  "processingTimeMs": 1,
  "query": "botman"


The jq command line tool can be a great help for reading the server responses.