Falabella Scraper at a glance
Falabella Scraper is a ready-to-run Apify actor from abotapi for collecting web data. Its documented output includes kind, product id, sku id, product and brand, which you can export as JSON, CSV or Excel or read through the Apify API. It costs $2.00 per 1,000 results on the Apify Free plan and from $1.20 on paid plans, with smaller per-run or optional feature charges listed on Apify.
- Runs on
- Apify cloud: console, API, schedules and integrations
- Data type
- Web data
- Pricing
- $2.00 per 1,000 results (Free plan), from $1.20 on paid plans
- Output
- Documented below · JSON, CSV, Excel
- Inputs
- 21 options
Scrape Falabella, Latin America's leading retail marketplace: products with local prices, discounts, ratings and seller info across the Chile, Colombia and Peru storefronts. Search keywords or paste links, and monitor price changes with recurring updates.
What Falabella Scraper can do
- Three storefronts in one actor. Chile, Colombia and Peru, each with its own catalogue, currency and connection.
- Two ways in. Run keyword searches on one storefront, or paste your own links: product pages, category pages, keyword collections, brand pages or search result pages.
- Full listing data on every row. Price, was-price, discount, rating, review count, seller and the card's own badges (official seller, sponsored, best seller, installments, shipping flags).
- Optional detail reads. Switch on the description, full specification table, category path, stock state, loyalty points, warranty code and the seller's registered business details, only when you need them.
- Built for monitoring. Recurring updates label every record NEW, UPDATED, REAPPEARED or EXPIRED, so a scheduled run returns only what changed.
- Resume support. Continue an interrupted run from its run id without paying for the same rows twice.
Choose what to collect
These inputs let you configure Falabella Scraper - Products, Prices, Sellers & Reviews. Open the actor on Apify to enter your values and review the current options.
| Input | What it controls |
|---|---|
modestring · required | Where to collect from: a keyword search on one storefront, or your own product and listing links. |
marketstring | Which country storefront to search. Each market is its own catalogue with its own currency and its own product ids. |
queriesarray | Only read when mode = keyword search. One entry per search; each search is walked forward, and all searches share the record cap. The alias "term" is also accepted. |
termstring | Alias of Search terms for a single keyword. Used only when Search terms is empty. |
sortstring | Order in which products are returned for each search. |
urlsarray | Only read when mode = my own links. Paste listing links (a search, a keyword collection, a category or a brand page; a ?page=N link starts the walk at that page and a pasted sort is kept) or product page links. Each link is read and labelled with its own storefront's country and currency, and connects through that country. Left untouched, links mode scrapes one example of each supported link shape. |
fetchDetailsboolean | Open each product's own page and add the description, specification table, category path, stock state, seller legal details and extra images to the record. Off by default: a run without it is much cheaper and still carries prices, discounts, ratings and seller names. |
Show 14 more inputs
| Input | What it controls |
|---|---|
maxItemsinteger | Stop after this many records across the whole run. Defaults to 20; set 0 to remove the limit (the walk then ends when the catalogue runs out, capped by the per-source page guard). |
maxPagesinteger | Runaway guard: an upper bound on how much is read for any single search or listing walk. Leave 0 to go as deep as the source serves, with the record cap above as the only real limit. |
concurrencyinteger | Accepted for compatibility; pages are read one at a time to stay polite to the storefront. |
retriesinteger | Accepted for compatibility; the connection ladder decides its own retries. |
timeoutSecsinteger | Wall-clock budget for one page, across all retries and connection fallbacks (the fallback connection tier needs about 40 seconds for a product page, so values below 45 cannot serve pages the site refuses on the first connection). |
resumeFromRunIdstring | Paste the run id (or dataset id) of an earlier run of this Actor to continue it. Records that run already returned are skipped, so an interrupted large collection can finish without paying for the same rows twice. Leave empty for a normal run. |
incrementalModeboolean | Turn this on for daily or weekly monitoring. The first run returns everything as NEW. Later runs return only NEW, UPDATED and REAPPEARED records, each labelled in a changeType column. Prices and rating counts move constantly on a marketplace, so a record whose only difference is a price still counts as UPDATED. Leave off for a normal one-off run. |
stateKeystring | Optional. Name this monitoring campaign to keep its memory stable, or to deliberately share one memory across differently configured runs. Leave empty and the memory is keyed on the run setup automatically. |
emitUnchangedboolean | Off by default. Turn on to also return records that have not changed since the last run, labelled UNCHANGED. This returns, and bills, rows you already have. |
emitExpiredboolean | Off by default. Turn on to also return records that were present before and are no longer found, labelled EXPIRED. Only produced when a run covered its whole setup, so a capped or continued run never reports records as gone. This returns, and bills, extra rows. |
ignoreFieldsForChangesarray | Optional. Field names whose changes should not make a record count as UPDATED, for example rating or totalReviews. Nested values can be addressed with dots, for example sellerDetails.isVerified. Ignored fields are still returned in the row; they only stop triggering an UPDATED label. Leave empty to watch every field. |
mcpConnectorsarray | Optionally send results into the apps you already use, via Model Context Protocol (MCP) connectors. Authorize one under Apify, Settings, API & Integrations, then select it here. Notion gets a rich page-per-item export; other connectors get a best-effort write or digest. Leave empty to skip; never changes the dataset output. |
notionParentPageUrlstring | URL or id of the Notion page under which item pages are created. Required to enable the Notion export; ignored by other connectors. |
maxNotifyListingsinteger | Cap on items written to each connector per run. Does not affect the dataset. |
Fields in the output
The documented dataset includes the fields below. Availability can depend on the source page and selected mode.
recordTypeKindidProduct idskuIdSKU idnameProductbrandBrandurlLinkimageUrlImagecurrencyCurrencypricePricepriceDisplayPrice (display)oldPriceWasdiscountPercentDiscount %Show 51 more fields
ratingAverageRatingratingCountRatingssellerIdSeller idsellerNameSellersellerVerifiedVerified sellerofficialSellerOfficial sellersponsoredSponsoredbestSellerBest sellerinstallmentsInstallmentsshippingOptionsShippingmarketMarketmarketHostStorefrontdescriptionDescriptionlongDescriptionLong descriptionspecificationsSpecificationscategoriesCategory pathoutOfStockOut of stockstockUnitsStock unitscmrPointsLoyalty pointswarrantyIdWarranty idsellerDetailsSeller detailsimagesImagessourceTypeSource typesourceIdSourcesourceUrlSource linkpositionPositionscrapedAtScraped atchangeTypeChangechangedFieldsChanged fieldsfirstSeenAtFirst seenlastSeenAtLast seenproduct_idproduct_idsku_idsku_idoffering_idoffering_idseller_nameseller_nameseller_idseller_idinternet_priceinternet_pricenormal_pricenormal_pricediscount_labeldiscount_labelis_sponsoredis_sponsoredis_best_selleris_best_sellerratingratingtotal_reviewstotal_reviewscategory_idcategory_idbadgesbadgesshipping_labelsshipping_labelspromotionspromotionsimageimageraw_productraw_productsearch_termsearch_termscraped_atscraped_atExample output
An example from this actor’s documentation. Values are illustrative; this is not a fresh live result.
{
"recordType": "product",
"id": "300000001",
"skuId": "300000002",
"name": "Mochila de muestra",
"brand": "MARCA MUESTRA",
"url": "https://www.falabella.com/falabella-cl/product/300000001/producto-de-muestra",
"imageUrl": "https://media.falabella.com/falabellaCL/300000002_01/public",
"currency": "CLP",
"price": 22990,
"priceDisplay": "$ 22.990",
"oldPrice": 27990,
"discountPercent": 18,
"ratingAverage": 4.6,
"ratingCount": 128,
"sellerId": "S00042",
"sellerName": "Tienda de muestra",
"officialSeller": true,
"sponsored": false,
"bestSeller": true,
"market": "CL",
"marketHost": "www.falabella.com",
"description": "Descripcion del producto de muestra.",
"specifications": [
{
"name": "Color",
"value": "Azul"
}
],
"changeType": "NEW"
}Ways to use this data
- Price monitoring teams: track price and discount changes on a set of products or categories over time, with recurring updates flagging exactly what moved.
- Marketplace analysts: compare the same categories and keywords across the Chilean, Colombian and Peruvian storefronts.
- Brand and seller managers: watch a competitor's catalogue, ratings and seller badges across all three markets.
- Deal and content sites: surface discounted, sponsored and best-seller items by category or keyword for a feed or newsletter.
- Data teams: assemble structured product catalogues (price, brand, ratings, specifications) for pricing or demand models.
Before you run
Start with a small input and check the resulting records against your expected fields. Source content and actor options can change; the current Apify listing is the reference for availability and pricing.
Questions about this actor
What data does Falabella Scraper return?
The documented output for Falabella Scraper includes kind, product id, sku id, product, brand, link, image and currency. Availability of each field depends on the source page and the selected mode.
How much does Falabella Scraper cost?
It costs $2.00 per 1,000 results on the Apify Free plan and from $1.20 on paid plans, with smaller per-run or optional feature charges listed on Apify. The Apify listing shows the current rate for every plan.
Can I get only new or changed products on a schedule?
Yes. Schedule the actor from the Schedules tab and turn on Recurring updates. Each run then returns only new, updated and reappeared records; unchanged ones are not returned or billed unless you turn that on too.
Why did a run fail instead of returning an empty dataset?
If every page is refused, the run stops with a clear message so "no results for this search" is never confused with "nothing could be read". Run it again in a few minutes. A genuinely empty search still succeeds, with zero rows and a visible note on the run.
Why does a resumed or capped run never report EXPIRED products?
Recurring updates only marks a product gone after a run that scanned its whole configured scope end to end. A resumed run, a run stopped by Max records, or a run where a source failed never qualifies, because none of them actually confirmed the product is gone; the stored baseline for that product is left untouched until a later, complete run says otherwise.
Can a product be marked EXPIRED by mistake?
No. If the storefront answers "page not found" for page 2 or later of a search or listing, the actor logs a warning and treats the walk as incomplete, so no EXPIRED rows are produced for that run. A product is only marked gone after a run that read its whole search or listing to the end.
