How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Algolia Search API

Core indexing and search API for adding, updating and deleting records and querying them with typo-tolerant, faceted, geo-aware and rule-driven search served from globally distributed search nodes. The largest surface in the estate at 78 operations, and the one carrying the retry strategy, asynchronous-task and API-key ACL semantics the rest of the platform inherits.

This API exposes 78 operations across 60 paths, and defines 243 schemas. It is described by OpenAPI 3.2.0, at version 1.0.0.

Requests are made against 5 base URLs: https://{appId}.algolia.net, https://{appId}-1.algolianet.com, https://{appId}-2.algolianet.com, https://{appId}-3.algolianet.com, https://{appId}-dsn.algolia.net.

78 operations 60 paths 243 schemas 8 DELETE32 GET30 POST8 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
1.0.0
Base URL
https://{appid}-dsn.algolia.net
Authentication
API Key, API Key
Resource Areas
1

Authentication & Security 2

Algolia Search API declares 2 security schemes for authenticating requests. An API key is passed in the header as x-algolia-application-id (appId). An API key is passed in the header as x-algolia-api-key (apiKey). By default, every request must be authenticated.

  • appId — Your Algolia application ID.
  • apiKey — Your Algolia API key with the necessary permissions to make the request. Permissions are controlled through access control lists (ACL) and access restrictions.…

Paths & Operations 78

Across 60 paths, the API surfaces 78 operations — 8 DELETE, 32 GET, 30 POST, 8 PUT. Each is listed below with its method, path, parameters, and response codes.

search 78
GET
/{path}
Send requests to the Algolia REST API
customGet 2 params → 200400402403404
POST
/{path}
Send requests to the Algolia REST API
customPost 2 params body → 200400402403404
PUT
/{path}
Send requests to the Algolia REST API
customPut 2 params body → 200400402403404
DELETE
/{path}
Send requests to the Algolia REST API
customDelete 2 params → 200400402403404
POST
/1/indexes/{indexName}/query
Search an index
searchSingleIndex 1 param body → 200400402403404
POST
/1/indexes/*/queries
Search multiple queries
search body → 200400402403404
POST
/1/indexes/{indexName}/facets/{facetName}/query
Search for facet values
searchForFacetValues 2 params body → 200400402403404
POST
/1/indexes/{indexName}/browse
Browse for records
browse 1 param body → 200400402403404
POST
/1/indexes/{indexName}
Add a new record (with auto-generated object ID)
saveObject 1 param body → 201400402403404
DELETE
/1/indexes/{indexName}
Delete an index
deleteIndex 1 param → 200400402403404
GET
/1/indexes/{indexName}/{objectID}
Retrieve a record
getObject 3 params → 200400402403404
PUT
/1/indexes/{indexName}/{objectID}
Add or replace a record
addOrUpdateObject 2 params body → 200400402403404
DELETE
/1/indexes/{indexName}/{objectID}
Delete a record
deleteObject 2 params → 200400402403404
POST
/1/indexes/{indexName}/deleteByQuery
Delete records matching a filter
deleteBy 1 param body → 200400402403404
POST
/1/indexes/{indexName}/clear
Delete all records from an index
clearObjects 1 param → 200400402403404
POST
/1/indexes/{indexName}/{objectID}/partial
Add or update attributes
partialUpdateObject 3 params body → 200400402403404
POST
/1/indexes/{indexName}/batch
Batch indexing operations on one index
batch 1 param body → 200400402403404
POST
/1/indexes/*/batch
Batch indexing operations on multiple indices
multipleBatch body → 200400402403404
POST
/1/indexes/*/objects
Retrieve records
getObjects body → 200400402403404
GET
/1/indexes/{indexName}/settings
Retrieve index settings
getSettings 2 params → 200400402403404
PUT
/1/indexes/{indexName}/settings
Update index settings
setSettings 2 params body → 200400402403404
GET
/1/indexes/{indexName}/synonyms/{objectID}
Retrieve a synonym
getSynonym 2 params → 200400402403404
PUT
/1/indexes/{indexName}/synonyms/{objectID}
Create or replace a synonym
saveSynonym 3 params body → 200400402403404
DELETE
/1/indexes/{indexName}/synonyms/{objectID}
Delete a synonym
deleteSynonym 3 params → 200400402403404
POST
/1/indexes/{indexName}/synonyms/batch
Create or replace synonyms
saveSynonyms 3 params body → 200400402403404
POST
/1/indexes/{indexName}/synonyms/clear
Delete all synonyms
clearSynonyms 2 params → 200400402403404
POST
/1/indexes/{indexName}/synonyms/search
Search for synonyms
searchSynonyms 1 param body → 200400402403404
GET
/1/keys
List API keys
listApiKeys → 200400402403404
POST
/1/keys
Create an API key
addApiKey body → 200400402403404
GET
/1/keys/{key}
Retrieve API key permissions
getApiKey 1 param → 200400402403404
PUT
/1/keys/{key}
Update an API key
updateApiKey 1 param body → 200400402403404
DELETE
/1/keys/{key}
Delete an API key
deleteApiKey 1 param → 200400402403404
POST
/1/keys/{key}/restore
Restore an API key
restoreApiKey 1 param → 200400402403404
GET
/1/indexes/{indexName}/rules/{objectID}
Retrieve a rule
getRule 2 params → 200400402403404
PUT
/1/indexes/{indexName}/rules/{objectID}
Create or replace a rule
saveRule 3 params body → 200400402403404
DELETE
/1/indexes/{indexName}/rules/{objectID}
Delete a rule
deleteRule 3 params → 200400402403404
POST
/1/indexes/{indexName}/rules/batch
Create or update rules
saveRules 3 params body → 200400402403404
POST
/1/indexes/{indexName}/rules/clear
Delete all rules
clearRules 2 params → 200400402403404
POST
/1/indexes/{indexName}/rules/search
Search for rules
searchRules 1 param body → 200400402403404
POST
/1/dictionaries/{dictionaryName}/batch
Add or delete dictionary entries
batchDictionaryEntries 1 param body → 200400402403404
POST
/1/dictionaries/{dictionaryName}/search
Search dictionary entries
searchDictionaryEntries 1 param body → 200400402403404
GET
/1/dictionaries/*/settings
Retrieve dictionary settings
getDictionarySettings → 200400402403404
PUT
/1/dictionaries/*/settings
Update dictionary settings
setDictionarySettings body → 200400402403404
GET
/1/dictionaries/*/languages
List available languages
getDictionaryLanguages → 200400402403404
POST
/1/clusters/mappingdeprecated
Assign or move a user ID
assignUserId 1 param body → 200400402403404
GET
/1/clusters/mappingdeprecated
List user IDs
listUserIds 2 params → 200400402403404
POST
/1/clusters/mapping/batchdeprecated
Assign multiple userIDs
batchAssignUserIds 1 param body → 200400402403404
GET
/1/clusters/mapping/topdeprecated
Get top user IDs
getTopUserIds → 200400402403404
GET
/1/clusters/mapping/{userID}deprecated
Retrieve user ID
getUserId 1 param → 200400402403404
DELETE
/1/clusters/mapping/{userID}deprecated
Delete user ID
removeUserId 1 param → 200400402403404
GET
/1/clustersdeprecated
List clusters
listClusters → 200400402403404
POST
/1/clusters/mapping/searchdeprecated
Search for user IDs
searchUserIds body → 200400402403404
GET
/1/clusters/mapping/pendingdeprecated
Get migration and user mapping status
hasPendingMappings 1 param → 200400402403404
GET
/1/security/sources
List allowed sources
getSources → 200400402403404
PUT
/1/security/sources
Replace allowed sources
replaceSources body → 200400402403404
POST
/1/security/sources/append
Add a source
appendSource body → 200400402403404
DELETE
/1/security/sources/{source}
Delete a source
deleteSource 1 param → 200400402403404
GET
/1/logs
Retrieve log entries
getLogs 4 params → 200400402403404
GET
/1/task/{taskID}
Check application task status
getAppTask 1 param → 200400402403
GET
/1/indexes/{indexName}/task/{taskID}
Check task status
getTask 2 params → 200400402403404
POST
/1/indexes/{indexName}/operation
Copy or move an index
operationIndex 1 param body → 200400402403404
GET
/1/indexes
List indices
listIndices 2 params → 200400402403404
GET
/waitForApiKey
Wait for an API key operation
waitForApiKey 3 params → 200400
GET
/waitForTask
Wait for operation to complete
waitForTask 2 params → 200400
GET
/waitForAppTask
Wait for application-level operation to complete
waitForAppTask 1 param → 200400
GET
/browseObjects
Get all records from an index
browseObjects 2 params → 204400
GET
/generateSecuredApiKey
Create secured API keys
generateSecuredApiKey 2 params → 200400
GET
/accountCopyIndex
Copies the given sourceIndexName records, rules and synonyms to an other Algolia application for the given destinationIndexName
accountCopyIndex 5 params → 400403404
GET
/replaceAllObjects
Replace all records in an index
replaceAllObjects 4 params → 200400
GET
/replaceAllObjectsWithTransformation
Replace all records in an index
replaceAllObjectsWithTransformation 4 params → 200400
GET
/chunkedBatch
Replace all records in an index
chunkedBatch 5 params → 200400
GET
/saveObjects
Saves the given array of objects in the given index
saveObjects 5 params → 200400
GET
/saveObjectsWithTransformation
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/conne…
saveObjectsWithTransformation 5 params → 200400
POST
/deleteObjects
Deletes every records for the given objectIDs
deleteObjects 5 params → 200400
POST
/partialUpdateObjects
Replaces object content of all the given objects according to their respective objectID field
partialUpdateObjects 6 params → 200400
POST
/partialUpdateObjectsWithTransformation
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/conne…
partialUpdateObjectsWithTransformation 6 params → 200400
GET
/indexExists
Check if an index exists or not
indexExists 1 param → 200
GET
/setClientApiKey
Switch the API key used to authenticate requests
setClientApiKey 1 param → 204

Schemas 243

The contract defines 243 schemas that model the data the API accepts and returns. The most detailed are indexSettingsAsSearchParams (41 properties), baseSearchParamsWithoutQuery (31 properties), baseSearchResponse (26 properties), baseIndexSettings (20 properties). Each schema is shown below with its type and property counts.

filters
string
Filter expression to only include items that match the filter criteria in the response. You can use these filter expressions: - Numeric filters. , where is one…
aroundLatLngViaIP
boolean
Whether to obtain the coordinates from the request's IP address.
facetOrdering
object
Order of facet names and facet values in your UI.
2 properties
Event
object
An event describe a step of the task execution flow.
7 properties 6 required
anchoring
string
Which part of the search query the pattern should match: - startsWith. The pattern must match the beginning of the query. - endsWith. The pattern must match th…
searchTypeDefault
string
- default: perform a search query - facet [searches for facet values](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/search-for-fa…
categoryPrediction_bin
string
Confidence level of the category prediction.
widgets
object
Widgets returned from any rules that are applied to the current search.
1 property
source
object
Source.
2 properties 1 required
dictionaryType
string
autoFilteringResult
object
Result of automatic filtering applied by Query Categorization.
4 properties
maxValuesPerFacet
integer
Maximum number of facet values to return for each facet.
createdAtTimestamp
integer
Timestamp when the object was created, in milliseconds since the Unix epoch.
fetchedIndexAbTestTarget
object
A/B test target criteria. Only present for v2 and later tests.
1 property 1 required
reRankingApplyFilter
Restrict [Dynamic Re-Ranking](https://www.algolia.com/doc/guides/algolia-ai/re-ranking) to records that match these filters.
rankingInfo
object
Object with detailed information about the record's ranking.
13 properties 5 required
searchDictionaryEntriesResponse
object
4 properties 4 required
baseSearchParams
searchParamsQuery
object
1 property
promotePosition
integer
Position in the search results where you want to show the promoted records.
id
string
Unique identifier of a synonym object.
analytics
boolean
Whether this search will be included in Analytics.
IndexSettings_advancedSyntaxFeatures
array
Advanced search syntax features you want to support - exactPhrase. Phrases in quotes must match exactly. For example, sparkly blue "iPhone case" only returns r…
searchForHitsOptions
object
3 properties 1 required
highlightedValue
string
Highlighted attribute value, including HTML tags.
deleteByParams
object
8 properties
optionalFilters
Filters to promote or demote records in the search results. Optional filters work like facet filters, but they don't exclude records from the search results. R…
synonymHits
array
Matching synonyms.
aroundRadius
Maximum radius for a search around a central location. This parameter works in combination with the aroundLatLng and aroundLatLngViaIP parameters. By default,…
CreatedAt
string
Date and time when the resource was created, in RFC 3339 format.
ignorePlurals
Treat singular, plurals, and other forms of declensions as equivalent. Only use this feature for the languages used in your index.
parameters_page
integer
Requested page of the API response. Algolia uses page and hitsPerPage to control how search results are displayed ([paginated](https://www.algolia.com/doc/guid…
dictionaryEntryType
string
Whether a dictionary entry is provided by Algolia (standard), or has been added by you (custom).
condition
object
5 properties
replaceSynonymsInHighlight
boolean
Whether to replace a highlighted word with the matched synonym By default, the original words are highlighted even if a synonym matches. For example, with home…
restrictHighlightAndSnippetArrays
boolean
Whether to restrict highlighting and snippeting to items that at least partially matched the search query. By default, all items are highlighted and snippeted.
EventType
string
minimumAroundRadius
integer
Minimum radius (in meters) for a search around a location when aroundRadius isn't set.
languages
object
Dictionary language.
3 properties 3 required
disableTypoToleranceOnAttributes
array
Attributes for which you want to turn off [typo tolerance](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance). Attribu…
searchExtensions
object
Additional parameters for Algolia AI features. Used to enable [Query Categorization](https://www.algolia.com/doc/guides/algolia-ai/query-categorization/) and o…
1 property
synonyms
boolean
Whether to take into account an index's synonyms for this search.
userID
string
Unique identifier of the user who makes the search request.
snippetResultMap
object
Snippets that show the context around a matching search query.
aroundPrecisionFromValue
array
fetchedIndex
object
14 properties 9 required
facetFilters
Filter the search by facet values, so that only records with the same facet values are retrieved. Prefer using the filters parameter, which supports all filter…
insideBoundingBoxArray
array
Coordinates for a rectangular area in which to search. Each bounding box is defined by the two opposite points of its diagonal, and expressed as latitude and l…
mode
string
Search mode the index will use to query for results. This setting only applies to indices, for which Algolia enabled NeuralSearch for you.
removeStopWords
Removes stop words from the search query. Stop words are common words like articles, conjunctions, prepositions, or pronouns that have little or no meaning on…
keyString
string
API key.
snippetResult
searchResponse
nbRecords
integer
Number of records in the cluster.
highlightResultArray
array
Surround words that match the query with HTML tags for highlighting.
baseIndexSettings
object
20 properties
acl
string
Access control list permissions.
paramsAsString
string
Search parameters as a URL-encoded query string.
taskID
integer
Unique identifier of a task. A successful API response means that a task was added to a queue. It might not run immediately. You can check the task's progress…
percentileComputation
boolean
Whether to include this search when calculating processing-time percentiles.
relevancyStrictness
integer
Relevancy threshold below which less relevant results aren't included in the results You can only set relevancyStrictness on [virtual replica indices](https://…
snippetResultArray
array
Snippets that show the context around a matching search query.
baseSearchResponse
object
26 properties
GetTaskResponse
object
1 property 1 required
page
integer
Page of search results to retrieve.
ErrorBase
object
Error.
1 property
standardEntry
processingTimeMS
integer
Time the server took to process the request, in milliseconds.
minProximity
integer
Minimum proximity score for two matching words This adjusts the [Proximity ranking criterion](https://www.algolia.com/doc/guides/managing-results/relevance-ove…
EventStatus
allowTyposOnNumericTokens
boolean
Whether to allow typos on numbers in the search query Turn off this setting to reduce the number of irrelevant matches when searching in large sets of similar…
fetchedIndexAbTest
object
A/B test metadata. Only present if the index is part of an active A/B test.
5 properties 2 required
sortRemainingBy
string
Order of facet values that aren't explicitly positioned with the order setting. - count. Order remaining facet values by decreasing count. The count is the num…
bannerImageUrl
object
URL for an image to show inside a banner.
1 property
responseExtensions
object
AI-generated metadata returned alongside search results. Present when Algolia AI features such as [Query Categorization](https://www.algolia.com/doc/guides/alg…
1 property
searchResult
SearchPagination
object
4 properties
parameters_query
string
Search query for rules.
baseSearchParamsWithoutQuery
object
31 properties
disableExactOnAttributes
array
Searchable attributes for which you want to [turn off the Exact ranking criterion](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/…
advancedSyntaxFeatures
string
indexSettingsAsSearchParams
object
41 properties
consequence
object
Effect of the rule. For more information, see [Consequences](https://www.algolia.com/doc/guides/managing-results/rules/rules-overview/consequences).
6 properties
renderingContent
object
Extra data that can be used in the search UI. You can use this to control aspects of your search UI, such as the order of facet names and values without changi…
3 properties
context
string
An additional restriction that only triggers the rule, when the search has the same value as ruleContexts parameter. For example, if context: mobile, the rule…
snippetResultOption
object
Snippets that show the context around a matching search query.
2 properties 2 required
PublishedAt
string
Date and time when the resource was published, in RFC 3339 format.
batchWriteParams
object
Batch parameters.
1 property 1 required
settingsResponse
queryCategorization
object
Query Categorization prediction returned by the AI model. This field is empty when the model cannot categorize the query. See [Query Categorization](https://ww…
5 properties
categoryPrediction
object
2 properties
WatchResponse
object
6 properties 1 required
editType
string
Type of edit.
fetchedIndexAbTestVariant
object
A/B test variant for an index.
4 properties 1 required
personalizationImpact
integer
Impact that Personalization should have on this search The higher this value is, the more Personalization determines the ranking compared to other factors. For…
matchLevel
string
Whether the whole query string matches or only a part.
SearchForFacets
taskStatus
string
Task status, published if the task is completed, notPublished otherwise.
updatedAt
string
Date and time when the object was updated, in RFC 3339 format.
clusterName
string
Cluster name.
deletedAt
string
Date and time when the object was deleted, in RFC 3339 format.
facetingAfterDistinct
boolean
Whether faceting should be applied after deduplication with distinct This leads to accurate facet counts when using faceting in combination with distinct. It's…
facets
object
Order of facet names.
1 property
responseFields
array
Properties to include in the API response of search and browse requests By default, all response properties are included. To reduce the response size, you can…
naturalLanguages
array
ISO language codes that adjust settings that are useful for processing natural language queries (as opposed to keyword searches) - Sets removeStopWords and ign…
supportedLanguage
string
ISO code for a supported language.
searchForFacetsOptions
object
5 properties 3 required
replaceAllObjectsWithTransformationResponse
object
3 properties 3 required
objectIDs
array
Unique record identifiers.
autoFilteringFilterEntry
apiKeyOperation
string
action
string
Which indexing operation to perform: - addObject: adds records to an index. Equivalent to the "Add a new record (with auto-generated object ID)" operation. - u…
matchedGeoLocation
object
3 properties
searchResponsePartial
Partial search response returned when the responseFields parameter excludes fields like hits. Contains all possible search response properties but none are req…
hit
object
Search result. A hit is a record from your index, augmented with special attributes for highlighting, snippeting, and ranking.
5 properties 1 required
parameters_hitsPerPage
integer
Maximum number of hits per page. Algolia uses page and hitsPerPage to control how search results are displayed ([paginated](https://www.algolia.com/doc/guides/…
distinct
Determines how many records of a group are included in the search results. Records with the same value for the attributeForDistinct attribute are considered a…
automaticFacetFilters
Filter to be applied to the search. You can use this to respond to search queries that match a facet value. For example, if users search for "comedy", which ma…
updatedAtResponse
object
Response, taskID, and update timestamp.
2 properties 2 required
searchExtensionsQueryCategorization
object
Parameters for the [Query Categorization](https://www.algolia.com/doc/guides/algolia-ai/query-categorization/) AI feature.
2 properties
searchHits
object
4 properties 1 required
analyticsTags
array
Tags to apply to the query for [segmenting analytics data](https://www.algolia.com/doc/guides/search-analytics/guides/segments).
order
array
Explicit order of facets or facet values. This setting lets you always show specific facets or facet values at the top of the list.
redirectURL
object
The redirect rule container.
1 property
securedApiKeyRestrictions
object
6 properties
addApiKeyResponse
object
2 properties 2 required
highlightResultMap
object
Surround words that match the query with HTML tags for highlighting.
booleanString
string
bannerImage
object
Image to show inside a banner.
2 properties
baseGetApiKeyResponse
object
2 properties 2 required
aroundRadiusAll
string
Return all records with a valid geoloc attribute. Don't filter by distance.
banner
object
Banner with image and link to redirect users.
2 properties
nbPages
integer
Number of pages of results.
aroundPrecision
Precision of a coordinate-based search in meters to group results with similar distances. The Geo ranking criterion considers all matches within the same range…
scopeType
string
standardEntries
object
Key-value pairs of [supported language ISO codes](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in…
3 properties
minWordSizefor1Typo
integer
Minimum number of characters a word in the search query must contain to accept matches with [one typo](https://www.algolia.com/doc/guides/managing-results/opti…
IndexSettings_alternativesAsExact
array
Determine which plurals and synonyms should be considered an exact matches By default, Algolia treats singular and plural forms of a word, and single-word syno…
consequenceQuery
Replace or edit the search query. If consequenceQuery is a string, the entire search query is replaced with that string. If consequenceQuery is an object, it d…
highlightResultOption
object
Surround words that match the query with HTML tags for highlighting.
4 properties 3 required
snippetEllipsisText
string
String used as an ellipsis indicator when a snippet is truncated.
browseResponse
RunID
string
Universally unique identifier (UUID) of a task run.
ruleContexts
array
Assigns a rule context to the search query [Rule contexts](https://www.algolia.com/doc/guides/managing-results/rules/rules-overview/how-to/customize-search-res…
ruleID
string
Unique identifier of a rule object.
maxFacetHits
integer
Maximum number of facet values to return when [searching for facet values](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/search-f…
values
object
Order of facet values. One object for each facet.
browseParams
RedirectRuleIndexMetadata
object
5 properties 5 required
listIndicesResponse
object
2 properties 1 required
aroundLatLng
string
Coordinates for the center of a circle, expressed as a comma-separated string of latitude and longitude. Only records included within a circle around this cent…
enableABTest
boolean
Whether to enable A/B testing for this search.
alternativesAsExact
string
promote
SynonymType
string
Synonym type.
personalization
object
3 properties
bannerLink
object
Link for a banner defined in the Merchandising Studio.
1 property
apiKey
object
API key object.
8 properties 1 required
searchParamsString
object
Search parameters as query string.
1 property
consequenceQueryObject
object
2 properties
SearchQuery
clickAnalytics
boolean
Whether to include a queryID attribute in the response The query ID is a unique identifier for a search query and is required for tracking [click and conversio…
queryLanguages
array
Languages for language-specific query processing steps such as plurals, stop-word removal, and word-detection dictionaries. This setting sets a default list of…
searchSynonymsResponse
object
2 properties 2 required
searchParamsObject
Each parameter value, including the query must not be larger than 512 bytes.
indexName
string
Index name (case-sensitive).
browseParamsObject
numericFilters
Filter by numeric facets. Prefer using the filters parameter, which supports all filter types and combinations with boolean operators. You can use numeric comp…
attributesToHighlight
array
Attributes to highlight By default, all searchable attributes are highlighted. Use to highlight all attributes or use an empty array [] to turn off highlightin…
searchForFacetValuesResponse
object
3 properties 2 required
minWordSizefor2Typos
integer
Minimum number of characters a word in the search query must contain to accept matches with [two typos](https://www.algolia.com/doc/guides/managing-results/opt…
consequenceParams
searchParams
batchResponse
object
2 properties 2 required
logType
string
automaticFacetFilter
object
Filter or optional filter to be applied to the search.
3 properties 1 required
advancedSyntax
boolean
Whether to support phrase matching and excluding words from search queries Use the advancedSyntaxFeatures parameter to control which feature is supported.
length
integer
Number of hits to retrieve (used in combination with offset).
decompoundQuery
boolean
Whether to split compound words in the query into their building blocks For more information, see [Word segmentation](https://www.algolia.com/doc/guides/managi…
enableRules
boolean
Whether to enable rules.
distinctSeqID
integer
optionalWords
Words that should be considered optional when found in the query. By default, records must match all words in the search query to be included in the search res…
tagFilters
Filter the search by values of the special tags attribute. Prefer using the filters parameter, which supports all filter types and combinations with boolean op…
timeRange
object
2 properties
searchTypeFacet
string
- default: perform a search query - facet [searches for facet values](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/search-for-fa…
sumOrFiltersScores
boolean
Whether to sum all filter scores If true, all filter scores are summed. Otherwise, the maximum filter score is kept. For more information, see [filter scores](…
params
object
Parameters to apply to this search. You can use all search parameters, plus special automaticFacetFilters, automaticOptionalFacetFilters, and query.
4 properties
userData
An object with custom data. You can store up to 32kB as custom data.
restrictSearchableAttributes
array
Restricts a search to a subset of your searchable attributes. Attribute names are case-sensitive.
highlightPostTag
string
HTML tag to insert after the highlighted parts in all highlighted results and snippets.
objectID
string
Unique record identifier.
removeWordsIfNoResults
string
Strategy for removing words from the query when it doesn't return any results. This helps to avoid returning empty search results. - none. No words are removed…
nbHits
integer
Number of results (hits).
createdAt
string
Date and time when the object was created, in RFC 3339 format.
dataSize
integer
Data size taken by all the users assigned to the cluster.
typoTolerance
Whether [typo tolerance](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance) is enabled and how it is applied. If typo…
userToken
string
Unique pseudonymous or anonymous user identifier. This helps with analytics and click and conversion events. For more information, see [user token](https://www…
queryType
string
Determines if and how query words are interpreted as prefixes. By default, only the last query word is treated as a prefix (prefixLast). To turn off prefix sea…
operationType
string
Operation to perform on the index.
queryCategorization_type
string
Classification of the query scope.
synonymHit
object
Synonym object.
8 properties 2 required
EventID
string
Universally unique identifier (UUID) of an event.
enableReRanking
boolean
Whether this search will use [Dynamic Re-Ranking](https://www.algolia.com/doc/guides/algolia-ai/re-ranking) This setting only has an effect if you activated Dy…
hitsPerPage
integer
Number of hits per page.
indexSettings
Index settings.
insidePolygon
array
Coordinates of a polygon in which to search. Polygons are defined by 3 to 10,000 points. Each point is represented by its latitude and longitude. Provide multi…
SearchForHits
dictionaryAction
string
Actions to perform.
cursor
object
1 property
exactOnSingleWordQuery
string
Determines how the [Exact ranking criterion](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/override-search-engine-defaults/in-dep…
attributesToRetrieve
array
Attributes to include in the API response To reduce the size of your response, you can retrieve only some of the attributes. Attribute names are case-sensitive…
enablePersonalization
boolean
Whether to enable Personalization.
sortFacetValuesBy
string
Order in which to retrieve facet values - count. Facet values are retrieved by decreasing count. The count is the number of matching records containing this fa…
insideBoundingBox
highlightPreTag
string
HTML tag to insert before the highlighted parts in all highlighted results and snippets.
typoToleranceEnum
string
- min. Return matches with the lowest number of typos. For example, if you have matches without typos, only include those. But if there are no matches without…
facetQuery
string
Text to search inside the facet's values.
getApiKeyResponse
getRankingInfo
boolean
Whether the search response should include detailed ranking information.
value
object
3 properties
dictionaryEntryState
string
Whether a dictionary entry is active.
attributesToSnippet
array
Attributes for which to enable snippets. Attribute names are case-sensitive Snippets provide additional context to matched words. If you enable snippets, they…
userId
object
Unique user ID.
4 properties 4 required
similarQuery
string
Keywords to be used instead of the search query to conduct a more broader search Using the similarQuery parameter changes other settings - queryType is set to…
hierarchyPathEntry
object
3 properties
promoteObjectIDs
object
Records to promote.
2 properties 2 required
banners
array
Banners defined in the Merchandising Studio for a given search.
edit
object
3 properties
dictionaryEntry
object
Dictionary entry.
7 properties 1 required
hide
array
Hide facet values.
searchStrategy
string
Strategy for multiple search queries: - none. Run all queries. - stopIfEnoughMatches. Run the queries one by one, stopping as soon as a query matches at least…
BrowsePagination
object
4 properties
optionalWordsArray
array
List of [optional words](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/empty-or-insufficient-results/creating-a-list-of-optional-…
dictionaryLanguage
attributeCriteriaComputedByMinProximity
boolean
Whether the best matching attribute should be determined by minimum proximity This setting only affects ranking if the Attribute ranking criterion comes before…
query
string
Search query.
highlightResult
rule
object
Rule object.
9 properties 2 required
WithPrimary
object
1 property
replaceAllObjectsResponse
object
3 properties 3 required
semanticSearch
object
Settings for the semantic search part of NeuralSearch. Only used when mode is neuralSearch.
1 property
promoteObjectID
object
Record to promote.
2 properties 2 required
sources
array
Sources.

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

algolia-search-api-openapi.yml Raw ↑
Where this information came from

This is an independent, third-party profile of Algolia Search API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.