Search API Client for Python
Algolia Python Client

API-first search and discovery for your Python applications.

Utilize the Algolia open-source Python API client to index your data, configure your search, add analytics and much more.  

Algolia is an API-First Search and Discovery platform that empowers builders to compose experiences at scale. Explore Algolia

Features

  • Gives API access to all Algolia functionality, settings, advanced features, and ML/AI products
  • Asynchronous methods built on top of Asyncio
  • Background retry strategy to ensure uptime
  • Seamless batching via iterators to optimize number of network calls
  • Zero downtime reindexing feature
  • Thin & minimal low-level HTTP client to interact with Algolia's API
  • Fully “pythonic”, follows modern Python while supporting Python 2

Version

  • Supports Python: 2.7, 3.4, 3.5, 3.6, 3.7, 3.8

Related Integrations

Key links


Get started

Install (get a free account here.)

1npm install algoliasearch

Index

1const objects = [{
2  firstname: 'Jimmie',
3  lastname: 'Barninger',
4  objectID: 'myID1'
5}, {
6  firstname: 'Warren',
7  lastname: 'Speach',
8  objectID: 'myID2'
9}];
10
11index.saveObjects(objects).then(({ objectIDs }) => {
12  console.log(objectIDs);
13});

Search

1from algoliasearch.search_client import SearchClient
2​
3client = SearchClient.create("AppId", "AdminAPIKey")
4index = client.init_index("index_name")
5​
6# index records
7records = [
8    {"objectID": "myID1", "firstname": "Jimmie", "lastname": "Barninger"},
9    {"objectID": "myID2", "firstname": "Warren", "lastname": "Speach"},
10]
11index.save_objects(records).wait()
12​
13# only query string
14res = index.search('Jim')
15print(res)
16​
17# or with params
18res = index.search('Jim', {
19    'attributesToRetrieve': [ 'firstname', 'lastname' ],
20    'hitsPerPage': 50
21})
22print(res)
Get started for freeExplore all developer docs

Built with Python on Algolia

Showcase
Sample Applications

Image Search OCR - Delivery Scanner

This app lets you scan a shipping label with your phone and sends a Slack message to the recipient of the package

  • javascript
  • nodejs
  • go
  • python