Algolia API Scraper
Pricing
from $0.50 / 1,000 scraped items
Algolia API Scraper
Generalised scraper for any Algolia-powered search index: scrape hits or discover facets and their values directly via the Algolia Search REST API.
A generalised Algolia API scraper for extracting search results and discovering facets from any website that uses Algolia as its search backend — e-commerce catalogs, documentation sites, marketplaces, directories, and more. Instead of scraping rendered HTML, this Actor talks directly to the site's Algolia index over the Algolia Search REST API, so extraction is fast, reliable, and returns the exact structured data the site itself uses. Run it on the Apify platform for scheduling, API access, and monitoring without managing any infrastructure.
Why use Algolia API Scraper?
Thousands of sites (documentation portals, online stores, job boards, real estate listings) use Algolia under the hood for instant search. Once you have the site's Algolia applicationId, a search-only apiKey, and the indexName (all visible in the site's browser network requests), you can:
- Pull the full catalog of a site without crawling pages one by one.
- Apply the exact same filters, facets, and query syntax the site's own search UI uses.
- Discover which attributes are filterable/facetable on an index — and what values exist for each — before building a larger scraping or monitoring pipeline.
- Feed structured, ready-to-use JSON straight into spreadsheets, databases, or downstream automations via Apify's integrations.
How to use Algolia API Scraper
- Open the site you want to extract data from and inspect its network requests (DevTools → Network → filter for
algolia.netoralgolianet.com) while performing a search. - Note down the Application ID (from the request host, e.g.
ABC123DEF-dsn.algolia.net), the API Key (headerX-Algolia-API-Key), and the index name (in the request URL or body). - Paste those three values into the Actor's input, optionally along with a search query, filters, and facets.
- Click Start and let the Actor page through the index and push every hit to the dataset — or enable Discover facets only to get a fast overview of the index's facetable attributes first.
Input
Configure the Actor via the Input tab. Key fields:
| Field | Description |
|---|---|
algoliaAppId | Algolia Application ID |
algoliaApiKey | Search-only Algolia API key |
indexName | Name of the index to query |
searchQuery | Free-text query (empty = match all) |
filters | Algolia filter expression, e.g. category:Shoes AND price < 50 |
facetFilters / numericFilters | Structured filter arrays |
facets | Facet attributes to get counts for; ["*"] discovers all of them |
discoverFacetsOnly | Skip item scraping, only return facet values/counts |
hitsPerPage / maxItems | Pagination size and overall item cap |
extraQueryParams | Any other raw Algolia SearchParams field, for advanced use |
Example input for facet discovery:
{"algoliaAppId": "ABC123DEF","algoliaApiKey": "aaaabbbbccccdddd11112222","indexName": "products","facets": ["*"],"discoverFacetsOnly": true}
Output
Each scraped record is pushed to the dataset exactly as Algolia returns it (plus its objectID). Example item:
{"objectID": "12345","title": "Running Shoes","category": "Shoes","price": 79.99}
When discoverFacetsOnly is enabled, the dataset instead contains a single item with the discovered facets:
{"facets": {"category": { "Shoes": 512, "Shirts": 340 },"brand": { "Nike": 210, "Adidas": 180 }},"facets_stats": {},"nbHits": 852}
The same facet data is also saved to the key-value store under the FACETS key for quick reference. You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.
Data table
| Field | Description |
|---|---|
objectID | Algolia's unique identifier for the record |
| (all other fields) | Whatever attributes the source index stores — varies per site |
Cost estimation
This Actor makes lightweight JSON API calls (no browser rendering), so it is inexpensive to run. A full scrape of an index with tens of thousands of records typically finishes in well under a minute of compute time. Facet discovery runs a single request and is essentially free. Apify's free tier is generally enough for occasional runs; larger or scheduled scrapes will consume more compute units proportional to the number of pages fetched.
Tips and advanced options
- Set
hitsPerPageto the maximum (1000) to minimize the number of requests. - Use
maxItemsto cap a run when you only need a sample. - Use
discoverFacetsOnlyfirst on a new index to understand what filters are available, then build a targetedfilters/facetFiltersquery for the real scrape. - Pass any additional Algolia parameter (e.g.
distinct,restrictSearchableAttributes,optionalFilters) viaextraQueryParams.
FAQ, disclaimers, and support
This Actor only queries indexes using credentials you supply — it does not bypass authentication or access private data. Only use it against indexes and API keys you are authorized to query, and respect the target site's Terms of Service. Algolia may change or rotate search-only keys; if the Actor stops working, re-check the site's current applicationId/apiKey/indexName. For issues or feature requests, use the Actor's Issues tab.