The Python API client
Algolia’s Python API client lets you use Algolia’s APIs from your Python app. Compared to using the APIs directly, using the Python API client has these benefits:
-
Network retry strategy. The API client automatically retries connecting to another Algolia server, if the connection fails. Thanks to that, using the API clients is covered by Algolia’s SLA.
-
Reindexing. The API clients let you reindex your records in a single operation.
-
Automatic batching. When you add records to your index, the API client automatically batches your records to make fewer API requests.
Algolia’s Python API client is open source. Find the source code on GitHub.
Do you want to integrate Algolia into your Django app? Use Algolia’s Django integration to get started even quicker.
You’re reading documentation for version 3 of the Python API client. Earlier versions are no longer supported. For upgrading to version 3, see the upgrade guide
Quickstart sample app
To download and run a self-contained example, see the Python quickstart on GitHub.
Install the Python API client
The Algolia Python API client requires Python 3.4 or later.
Install the latest version of the Python API client with pip:
1
python -m pip install --upgrade algoliasearch
Test your installation
If you haven’t already, create an Algolia account and create a new Algolia app to get started.
To test whether you can connect to Algolia, run a simple program that adds a record to a new index, searches the index, and print the results.
-
Copy the following code sample into a text editor. If you’re signed in, the code samples below show your Algolia application ID. If you’re not signed in, replace
YourApplicationID
with your Algolia application ID andYourWriteAPIKey
with your Write API Key. You can find both in your Algolia account.Copy1 2 3 4 5 6 7 8 9 10 11 12 13 14
# hello_algolia.py from algoliasearch.search_client import SearchClient # Connect and authenticate with your Algolia app client = SearchClient.create("YourApplicationID", "YourWriteAPIKey") # Create a new index and add a record index = client.init_index("test_index") record = {"objectID": 1, "name": "test_record"} index.save_object(record).wait() # Search the index and print the results results = index.search("test_record") print(results["hits"][0])
-
Save the file as
hello_algolia.py
. Go to the directory with the file you just created and run inside a terminal:Copy1
python hello_algolia.py
-
If the program ran successfully, you should see:
Copy1
{'name': 'test_record', 'objectID': '1', '_highlightResult': ... }
You can inspect your index now in the Algolia dashboard.
Next steps
Now you can interact with the Algolia Search API, you can look at the available methods, for example, for search or indexing.
Other APIs, for example for Algolia Recommend or Analytics, come with their own clients. To get an overview, see Initialize the API client.