Meilisearch.Indexes (meilisearch v0.20.0) View Source
Collection of functions used to manage indexes.
Link to this section Summary
Functions
Create an index
Delete an index
Check if index exists
Get information about an index
List all indexes
Update an index with new primary key. Will fail if primary key has already been set
Link to this section Functions
Specs
create(String.t(), Keyword.t()) :: Meilisearch.HTTP.response()
Create an index
primary_key
can be passed as an option.
Examples
iex> Meilisearch.Indexes.create("meilisearch_test")
{:ok,
%{
"createdAt" => "2020-05-23T06:20:18.394281328Z",
"name" => "meilisearch_test",
"primaryKey" => nil,
"uid" => "meilisearch_test",
"updatedAt" => "2020-05-23T06:20:18.394292399Z"
}
}
iex> Meilisearch.create("meilisearch_test", primary_key: "key_name")
{:ok,
%{
"createdAt" => "2020-05-23T06:20:18.394281328Z",
"name" => "meilisearch_test",
"primaryKey" => "key_name",
"uid" => "meilisearch_test",
"updatedAt" => "2020-05-23T06:20:18.394292399Z"
}
}
Specs
delete(String.t()) :: Meilisearch.HTTP.response()
Delete an index
Examples
iex> Meilisearch.Indexes.delete("meilisearch_test")
{:ok, nil}
iex> Meilisearch.delete("nonexistent_index")
{:error, 404, Index meilisearch_test not found"}
Specs
Check if index exists
Examples
iex> Meilisearch.Indexes.exists?("meilisearch_test")
{:ok, true}
iex> Meilisearch.Indexes.exists?("nonexistent_index")
{:ok, false}
Specs
get(String.t()) :: Meilisearch.HTTP.response()
Get information about an index
Example
iex> Meilisearch.Indexes.get("meilisearch_test")
{:ok,
%{
"createdAt" => "2020-05-23T06:20:18.394281328Z",
"name" => "meilisearch_test",
"primaryKey" => nil,
"uid" => "meilisearch_test",
"updatedAt" => "2020-05-23T06:20:18.394292399Z"
}
}
Specs
list() :: Meilisearch.HTTP.response()
List all indexes
Example
iex> Meilisearch.Indexes.list()
{:ok, [
%{
"createdAt" => "2020-05-23T06:20:18.394281328Z",
"name" => "meilisearch_test",
"primaryKey" => nil,
"uid" => "meilisearch_test",
"updatedAt" => "2020-05-23T06:20:18.394292399Z"
}
]}
Specs
update(String.t(), [{:primary_key, String.t()}]) :: Meilisearch.HTTP.response()
Update an index with new primary key. Will fail if primary key has already been set
primary_key
option is required.
Examples
iex> Meilisearch.Indexes.update("meilisearch_test", primary_key: "new_key")
{:ok,
%{
"primaryKey" => "new_primary_key",
"createdAt" => "2020-05-25T04:30:10.681720067Z",
"name" => "meilisearch_test",
"uid" => "meilisearch_test",
"updatedAt" => "2020-05-25T04:30:10.685540577Z"
}
}