Algolia Search

Algolia Search

The Algolia Search API lets you search, configure, and manage your indices and records.

Client libraries

Use Algolia's API clients and libraries to reliably integrate Algolia's APIs with your apps. The official API clients are covered by Algolia's Service Level Agreement.

See: Algolia's ecosystem

Base URLs

The base URLs for requests to the Search API are:

Both URLs provide high availability by distributing requests with load balancing.

All requests must use HTTPS.

Retry strategy

To guarantee high availability, implement a retry strategy for all API requests using the URLs of your servers as fallbacks:

These URLs use a different DNS provider than the primary URLs. You should randomize this list to ensure an even load across the three servers.

All Algolia API clients implement this retry strategy.

Authentication

To authenticate your API requests, add these headers:

You can find your application ID and API key in the Algolia dashboard.

Request format

Depending on the endpoint, request bodies are either JSON objects or arrays of JSON objects,

Parameters

Parameters are passed as query parameters for GET and DELETE requests, and in the request body for POST and PUT requests.

Query parameters must be URL-encoded. Non-ASCII characters must be UTF-8 encoded. Plus characters (+) are interpreted as spaces. Arrays as query parameters must be one of:

Response status and errors

The Search API returns JSON responses. Since JSON doesn't guarantee any specific ordering, don't rely on the order of attributes in the API response.

Successful responses return a 2xx status. Client errors return a 4xx status. Server errors are indicated by a 5xx status. Error responses have a message property with more information.

Version

The current version of the Search API is version 1, as indicated by the /1/ in each endpoint's URL.

Operations

Add or delete dictionary entries
List available languages
Retrieve dictionary settings
Update dictionary settings
Batch indexing operations on multiple indices
List indices
Batch indexing operations on one index
Delete all records from an index
Delete records matching a filter
Add or replace a record
Add a new record (with auto-generated object ID)
Retrieve index settings
Update index settings
Create or replace synonyms
Retrieve records
Search multiple indices
List API keys
Delete an API key
Retrieve API key permissions
Update an API key
Restore an API key
Create an API key
Retrieve log entries
List allowed sources
Replace allowed sources
Check application task status
Copies the given sourceIndexName records, rules and synonyms to an other Algolia application for the given destinationIndexName
Get all records from an index
Replace all records in an index
Deletes every records for the given objectIDs
Create secured API keys
Check if an index exists or not
Replaces object content of all the given objects according to their respective objectID field
Save objects to an Algolia index by leveraging the Transformation pipeline setup using the Push connector (https://www.algolia.com/doc/guides/sending-and-managing-data/send-and-update-your-data/connectors/push)
Send requests to the Algolia REST API
Send requests to the Algolia REST API
Send requests to the Algolia REST API
Send requests to the Algolia REST API
Replace all records in an index
Replace all records in an index
Saves the given array of objects in the given index
Save objects to an Algolia index by leveraging the Transformation pipeline setup using the Push connector (https://www.algolia.com/doc/guides/sending-and-managing-data/send-and-update-your-data/connectors/push)
Switch the API key used to authenticate requests
Wait for an API key operation
Wait for application-level operation to complete
Wait for operation to complete