Table of Contents
Algolia helps businesses across industries quickly create relevant, scalable, and lightning fast search and discovery experiences.
API Overview
Algolia is a powerful search and discovery platform that enables businesses to deliver relevant search experiences to their users. It provides a comprehensive suite of features, including instant search, type-ahead suggestions, faceted navigation, and advanced analytics. Algolia's user-friendly interface and robust API make it easy for developers to integrate search functionality into their applications. With its scalable architecture and high availability, Algolia ensures that search results are delivered quickly and reliably, even during peak traffic.
Algolia's API overview provides extensive documentation, ensuring developers have all the necessary information to build and integrate search functionality. The REST APIs offer a comprehensive set of endpoints for managing indices, documents, and search queries. Webhooks allow developers to receive real-time notifications of events, such as index updates or search requests. To prevent excessive API usage, Algolia implements rate limits, which can be adjusted based on the specific needs of each application.
API Request Limits
Free
100,000 operations per day
Basic
1,000,000 operations per day
Advanced
10,000,000 operations per day
Enterprise
Custom limits
APIs
Method: get
Description: Search an index for a query term.
Endpoint: search
Parameters: query, params, analyticsTags, facetFilters, filter, facetQuery, answers, tagFilters, optionalFilters, distinct, facets, hitsPerPage, attributesToRetrieve, attributesToHighlight, attributesToSnippet, minWordSizefor1Typo, minWordSizefor2Typos, removeStopWords, synonyms, replaceSynonymsInHighlight, highlightPreTag, highlightPostTag, snippetEllipsisText, numberOfWords, offset, maxValuesPerFacet, page, lazyLoading, facetsExhaustive, minProximity, responseFields, ruleContexts, queryRules, alternativesAsExact, getRankingInfo, explain, analytics, sumOrFiltersScores, sumOrFilters, facetOrdering, diversity, numericFilters, allowTyposOnNumericTokens, ignorePlurals, advancedSyntax, replaceSynonymsInQuery, optionalWords, disjunctiveFacets, generateBridgingQueries, minProximity, coveo, unique, matchFilters
Method: get
Description: Get the facet values for a query term.
Endpoint: search/values
Parameters: facetName, facetQuery, params, analyticsTags, facetFilters, filter, facetQuery, answers, tagFilters, optionalFilters, distinct, facets, hitsPerPage, attributesToRetrieve, attributesToHighlight, attributesToSnippet, minWordSizefor1Typo, minWordSizefor2Typos, removeStopWords, synonyms, replaceSynonymsInHighlight, highlightPreTag, highlightPostTag, snippetEllipsisText, numberOfWords, offset, maxValuesPerFacet, page, lazyLoading, facetsExhaustive, minProximity, responseFields, ruleContexts, queryRules, alternativesAsExact, getRankingInfo, explain, analytics, sumOrFiltersScores, sumOrFilters, facetOrdering, diversity, numericFilters, allowTyposOnNumericTokens, ignorePlurals, advancedSyntax, replaceSynonymsInQuery, optionalWords, disjunctiveFacets, generateBridgingQueries, minProximity, coveo, unique, matchFilters
Method: get
Description: Get the attribute values for a query term.
Endpoint: search/attributes
Parameters: attributeName, facetQuery, params, analyticsTags, facetFilters, filter, facetQuery, answers, tagFilters, optionalFilters, distinct, facets, hitsPerPage, attributesToRetrieve, attributesToHighlight, attributesToSnippet, minWordSizefor1Typo, minWordSizefor2Typos, removeStopWords, synonyms, replaceSynonymsInHighlight, highlightPreTag, highlightPostTag, snippetEllipsisText, numberOfWords, offset, maxValuesPerFacet, page, lazyLoading, facetsExhaustive, minProximity, responseFields, ruleContexts, queryRules, alternativesAsExact, getRankingInfo, explain, analytics, sumOrFiltersScores, sumOrFilters, facetOrdering, diversity, numericFilters, allowTyposOnNumericTokens, ignorePlurals, advancedSyntax, replaceSynonymsInQuery, optionalWords, disjunctiveFacets, generateBridgingQueries, minProximity, coveo, unique, matchFilters
Method: get
Description: Get the facet values for a query prefix.
Endpoint: search/facetValues
Parameters: facetName, prefix, params, analyticsTags, facetFilters, filter, facetQuery, answers, tagFilters, optionalFilters, distinct, facets, hitsPerPage, attributesToRetrieve, attributesToHighlight, attributesToSnippet, minWordSizefor1Typo, minWordSizefor2Typos, removeStopWords, synonyms, replaceSynonymsInHighlight, highlightPreTag, highlightPostTag, snippetEllipsisText, numberOfWords, offset, maxValuesPerFacet, page, lazyLoading, facetsExhaustive, minProximity, responseFields, ruleContexts, queryRules, alternativesAsExact, getRankingInfo, explain, analytics, sumOrFiltersScores, sumOrFilters, facetOrdering, diversity, numericFilters, allowTyposOnNumericTokens, ignorePlurals, advancedSyntax, replaceSynonymsInQuery, optionalWords, disjunctiveFacets, generateBridgingQueries, minProximity, coveo, unique, matchFilters
Method: get
Description: Get the attribute values for a query prefix.
Endpoint: search/attributeValues
Parameters: attributeName, prefix, params, analyticsTags, facetFilters, filter, facetQuery, answers, tagFilters, optionalFilters, distinct, facets, hitsPerPage, attributesToRetrieve, attributesToHighlight, attributesToSnippet, minWordSizefor1Typo, minWordSizefor2Typos, removeStopWords, synonyms, replaceSynonymsInHighlight, highlightPreTag, highlightPostTag, snippetEllipsisText, numberOfWords, offset, maxValuesPerFacet, page, lazyLoading, facetsExhaustive, minProximity, responseFields, ruleContexts, queryRules, alternativesAsExact, getRankingInfo, explain, analytics, sumOrFiltersScores, sumOrFilters, facetOrdering, diversity, numericFilters, allowTyposOnNumericTokens, ignorePlurals, advancedSyntax, replaceSynonymsInQuery, optionalWords, disjunctiveFacets, generateBridgingQueries, minProximity, coveo, unique, matchFilters
Method: get
Description: Search an index for a query term and retrieve the snippets.
Endpoint: search/snippet
Parameters: query, params, snippetAttrs, attributesToRetrieve, attributesToHighlight, highlightPreTag, highlightPostTag, snippetEllipsisText, maxSnippetLength
Method: get
Description: Search for a given index with the numeric facet filters.
Endpoint: search/numericFilters
Parameters: facetName, operator, ranges, params, analyticsTags, facetFilters, filter, facetQuery, answers, tagFilters, optionalFilters, distinct, facets, hitsPerPage, attributesToRetrieve, attributesToHighlight, attributesToSnippet, minWordSizefor1Typo, minWordSizefor2Typos, removeStopWords, synonyms, replaceSynonymsInHighlight, highlightPreTag, highlightPostTag, snippetEllipsisText, numberOfWords, offset, maxValuesPerFacet, page, lazyLoading, facetsExhaustive, minProximity, responseFields, ruleContexts, queryRules, alternativesAsExact, getRankingInfo, explain, analytics, sumOrFiltersScores, sumOrFilters, facetOrdering, diversity, numericFilters, allowTyposOnNumericTokens, ignorePlurals, advancedSyntax, replaceSynonymsInQuery, optionalWords, disjunctiveFacets, generateBridgingQueries, minProximity, coveo, unique, matchFilters
Method: get
Description: Search for a given index with the geographic facet filters.
Endpoint: search/geoFilters
Parameters: facetName, operator, ranges, params, analyticsTags, facetFilters, filter, facetQuery, answers, tagFilters, optionalFilters, distinct, facets, hitsPerPage, attributesToRetrieve, attributesToHighlight, attributesToSnippet, minWordSizefor1Typo, minWordSizefor2Typos, removeStopWords, synonyms, replaceSynonymsInHighlight, highlightPreTag, highlightPostTag, snippetEllipsisText, numberOfWords, offset, maxValuesPerFacet, page, lazyLoading, facetsExhaustive, minProximity, responseFields, ruleContexts, queryRules, alternativesAsExact, getRankingInfo, explain, analytics, sumOrFiltersScores, sumOrFilters, facetOrdering, diversity, numericFilters, allowTyposOnNumericTokens, ignorePlurals, advancedSyntax, replaceSynonymsInQuery, optionalWords, disjunctiveFacets, generateBridgingQueries, minProximity, coveo, unique, matchFilters
Method: get
Description: Search for a given index with the date facet filters.
Endpoint: search/dateFilters
Parameters: facetName, operator, ranges, params, analyticsTags, facetFilters, filter, facetQuery, answers, tagFilters, optionalFilters, distinct, facets, hitsPerPage, attributesToRetrieve, attributesToHighlight, attributesToSnippet, minWordSizefor1Typo, minWordSizefor2Typos, removeStopWords, synonyms, replaceSynonymsInHighlight, highlightPreTag, highlightPostTag, snippetEllipsisText, numberOfWords, offset, maxValuesPerFacet, page, lazyLoading, facetsExhaustive, minProximity, responseFields, ruleContexts, queryRules, alternativesAsExact, getRankingInfo, explain, analytics, sumOrFiltersScores, sumOrFilters, facetOrdering, diversity, numericFilters, allowTyposOnNumericTokens, ignorePlurals, advancedSyntax, replaceSynonymsInQuery, optionalWords, disjunctiveFacets, generateBridgingQueries, minProximity, coveo, unique, matchFilters
Method: get
Description: Search for a given index with the text facet filters.
Endpoint: search/textFilters
Parameters: facetName, operator, values, params, analyticsTags, facetFilters, filter, facetQuery, answers, tagFilters, optionalFilters, distinct, facets, hitsPerPage, attributesToRetrieve, attributesToHighlight, attributesToSnippet, minWordSizefor1Typo, minWordSizefor2Typos, removeStopWords, synonyms, replaceSynonymsInHighlight, highlightPreTag, highlightPostTag, snippetEllipsisText, numberOfWords, offset, maxValuesPerFacet, page, lazyLoading, facetsExhaustive, minProximity, responseFields, ruleContexts, queryRules, alternativesAsExact, getRankingInfo, explain, analytics, sumOrFiltersScores, sumOrFilters, facetOrdering, diversity, numericFilters, allowTyposOnNumericTokens, ignorePlurals, advancedSyntax, replaceSynonymsInQuery, optionalWords, disjunctiveFacets, generateBridgingQueries, minProximity, coveo, unique, matchFilters
Method: get
Description: Search for a given index with the filters.
Endpoint: search/filters
Parameters: facetName, operator, values, params, analyticsTags, facetFilters, filter, facetQuery, answers, tagFilters, optionalFilters, distinct, facets, hitsPerPage, attributesToRetrieve, attributesToHighlight, attributesToSnippet, minWordSizefor1Typo, minWordSize
FAQ
How do I authenticate to the Algolia API?
You can authenticate using an API key, which can be created in the Algolia dashboard.
What is the rate limit for the Algolia API?
The rate limit is 1000 requests per second per API key.
How can I create a sandbox account?
You can create a sandbox account by signing up for a free Algolia trial.
How can I get a developer account?
You can create a developer account by signing up for the Algolia Developer Program.
How do I handle pagination for search results?
You can use the 'page' and 'hitsPerPage' parameters to specify the page number and number of results to return.