fahorro APIfahorro.com ↗
Access Farmacias del Ahorro's product catalog, prices, categories, and promotions via 10 endpoints covering search, filtering, SKU lookup, and product details.
What is the fahorro API?
The fahorro.com API provides structured access to the Farmacias del Ahorro product catalog through 10 endpoints covering search, category browsing, filtering, and individual product details. The search_products endpoint returns SKU, title, current price, brand, image URL, and URL key for each result. Additional endpoints expose category trees, active promotions, private-label products, and batch SKU lookups for up to 50 barcodes at a time.
curl -X GET 'https://api.parse.bot/scraper/0b481c35-f26e-4181-868c-ccef7dee72c4/search_products?page=1&limit=24&query=aspirina' \ -H 'X-API-Key: $PARSE_API_KEY'
Full-text keyword search across the product catalog. Returns paginated results from the Empathy.co search API. Each result includes SKU, title, current/previous price, brand, image URL, and URL key for detail lookup. Pagination via page number; facets and stats are included alongside results.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| limit | integer | Max results per page. |
| queryrequired | string | Search keyword (e.g. 'aspirina', 'vitamina c'). |
{
"type": "object",
"fields": {
"content": "array of product objects with sku, ecommTitle, currentPrice, ecommBrand, ecommImageFullUrl, ecommUrlKey",
"numFound": "integer total number of matching products",
"pagination": "object with start, rows, and total fields"
},
"sample": {
"data": {
"content": [
{
"sku": "7501008499047",
"ownBrand": false,
"ecommBrand": "ASPIRINA",
"ecommTitle": "Aspirina Analgesico Para Dolor de Cabeza y Fiebre 20 Tabletas 500 mg",
"ecommUrlKey": "aspirina-500-mg-20-tabletas",
"currentPrice": 29,
"previousPrice": 38,
"ecommImageFullUrl": "https://www.fahorro.com/media/catalog/product/7/5/7501008499047_5.jpg"
}
],
"numFound": 9,
"pagination": {
"rows": 24,
"start": 0,
"total": 9
}
},
"status": "success"
}
}About the fahorro API
Search and Browse
The search_products endpoint accepts a query string (e.g. 'aspirina', 'vitamina c') and returns paginated results via page and limit parameters. Each product object in the content array includes sku, ecommTitle, currentPrice, ecommBrand, ecommImageFullUrl, and ecommUrlKey. The numFound field gives the total match count; pagination returns start, rows, and total for offset-based navigation. get_category_products follows the same response shape but browses by numeric category_id instead of a keyword — use get_categories to retrieve the full category tree and valid IDs.
Filtering and Facets
Before filtering, call get_category_filters with a category_id to retrieve available facets — brand names, boolean filters, and price range statistics (facetCurrentPrice with min and max). Pass those values to filter_products, which supports brand (must exactly match facetEcommBrand values), price_min, price_max, promotions_only, and optionally a query string. When query is omitted, filter_products browses by category_id and defaults to category 7404 (Farmacia) if neither is provided.
Product Details and SKU Lookup
get_product_details accepts either a full url or a url_key slug from any search or browse result. It returns name, brand, price, sku, description, an images array, and an attributes object containing specification key-value pairs such as active ingredient, dosage form, and units. For bulk price checks, lookup_skus accepts a comma- or newline-separated list of up to 50 13-digit barcode strings and returns per-SKU found, not_found, and failed counts alongside each item's product data.
Promotions and Private Label
get_promotions returns all products in the Farmacia category that currently carry active promotions, without requiring any parameters. get_marca_propia_products returns items where ownBrand is true — the Marca Farmacias del Ahorro private-label range. get_suggestions returns globally trending search terms as an array of objects with a title_raw field, useful for discovering currently popular product searches.
The fahorro API is a managed, monitored endpoint for fahorro.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when fahorro.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official fahorro.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Monitor price changes on specific medications by polling
search_productsorlookup_skuswith known barcode SKUs. - Build a promotion tracker that ingests the
get_promotionsresponse and alerts when new discounted products appear. - Populate a product comparison tool using
get_product_detailsattributes such as dosage form, active ingredient, and unit count. - Catalog the full Marca Farmacias del Ahorro private-label assortment with
get_marca_propia_productsto benchmark own-brand pricing. - Discover brand availability in a category by calling
get_category_filtersand reading thefacetEcommBrandfacet values and counts. - Batch-validate a distributor's barcode list against the live Farmacias del Ahorro catalog using
lookup_skuswith up to 50 SKUs per call. - Surface trending health product searches by reading
title_rawvalues fromget_suggestionsto inform content or ad keyword strategies.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Farmacias del Ahorro have an official public developer API?+
What does `get_product_details` return beyond price and name?+
get_product_details returns sku, brand, price, a description string, an images array of full image URLs, and an attributes object containing product specification key-value pairs (for example, dosage form, active ingredient, or net content). Supply either a full url or a url_key slug from any search or browse result.Does `get_suggestions` return completions specific to the query I provide?+
query parameter, get_suggestions returns globally trending search terms across the site rather than completions matched to the input string. It is best used to discover currently popular product searches rather than as an autocomplete source.Does the API cover stock availability or store-level inventory?+
Is pagination available on all listing endpoints, and what is the maximum page size?+
search_products, get_category_products, filter_products, get_promotions, get_marca_propia_products) return a pagination object with start, rows, and total fields and accept page and limit parameters. The lookup_skus endpoint accepts at most 50 SKUs per call; latency and cost grow linearly with the number of SKUs submitted.