Skip to main content

The python async client for MeiliSearch API.

Project description


Asynchronous MeiliSearch API client that is 100% compatible with MeiliSearch Python

upstream commit hash: 38d862efb55dc68b0c52b509722cfa4c519d156a

Getting Started

Add Documents

import asyncio
import ameilisearch

async def main():
    documents = [
        { 'id': 1, 'title': 'Carol', 'genres': ['Romance', 'Drama'] },
        { 'id': 2, 'title': 'Wonder Woman', 'genres': ['Action', 'Adventure'] },
        { 'id': 3, 'title': 'Life of Pi', 'genres': ['Adventure', 'Drama'] },
        { 'id': 4, 'title': 'Mad Max: Fury Road', 'genres': ['Adventure', 'Science Fiction'] },
        { 'id': 5, 'title': 'Moana', 'genres': ['Fantasy', 'Action']},
        { 'id': 6, 'title': 'Philadelphia', 'genres': ['Drama'] },

    async with ameilisearch.Client("", 'masterKey') as client:
        async with client.index("movies") as index:
            # If the index 'movies' does not exist, MeiliSearch creates it when you first add the documents.
            await index.add_documents(documents) # => { "updateId": 0 }


Differences from synchronous clients

Existing API clients worked with requests.

ameilisearch works with aiohttp.

Users need to manage client sessions.

The http instance is in two places: Client and Index.

Use the async with syntax to close the session immediately after use, or must close the session using await :client_or_index_instance:.http.session.close() after using it all.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ameilisearch-0.2.0.tar.gz (13.0 kB view hashes)

Uploaded Source

Built Distribution

ameilisearch-0.2.0-py3-none-any.whl (15.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page