# MercadoLibre Scraper | Products Prices LatAm (`lentic_clockss/mercadolibre-scraper`) Actor

Scrape MercadoLibre and Mercado Livre across Latin America — ofertas, categories, search & products. Extract item IDs, titles, prices & permalinks from AR/MX/BR and more. Export Excel/CSV/JSON. Unofficial — not affiliated with MercadoLibre.

- **URL**: https://apify.com/lentic\_clockss/mercadolibre-scraper.md
- **Developed by:** [kane liu](https://apify.com/lentic_clockss) (community)
- **Categories:** E-commerce, Lead generation, Automation
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js/docs.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## MercadoLibre Scraper — Products, Offers & Categories (LatAm)

**Scrape MercadoLibre and Mercado Livre product listings across Latin American marketplaces — then download structured results as Excel, CSV, or JSON.**

Use this Actor as a practical **MercadoLibre / Mercado Livre data API** for LatAm price monitoring, category research, deal tracking, and catalog enrichment. Pick a country site (default `mercadolibre.com.ar`), choose a mode, and get Dataset rows with item IDs, titles, prices, currency, and permalinks.

- Scrape **Ofertas** deal lists (`/ofertas`) with optional filters and pagination
- Collect **category landings** (`/c/{slug}`) for phones, vehicles, real estate, supermarket, and more
- Cover **MercadoLibre** and **Mercado Livre** hosts across **Argentina, Mexico, Brazil, Chile, Colombia, Peru, Uruguay, Venezuela, Ecuador, Bolivia**, plus Central America TLDs
- Capture **item_id**, title, price, currency, permalink, and source surface
- Export to **Excel / CSV / JSON**, or connect Make, n8n, Zapier, Python, or the Apify API
- **Pay per event** — Actor start + each Dataset result; **platform usage is included** (you do not pay separate Apify compute on top)

> **Unofficial tool.** This Actor is not affiliated with, endorsed by, or sponsored by Mercado Libre S.R.L., MercadoLivre, or MercadoLibre brand sites. It collects publicly reachable listing surfaces and does **not** complete purchases or access private accounts.

---

### What does the MercadoLibre Scraper do?

MercadoLibre Scraper lets you **extract structured ecommerce listing data from MercadoLibre LatAm sites** without operating your own anti-bot browser fleet. Give it a country site and a mode (for example `ofertas` or `category`), then start a run.

Under the hood, the Actor:

1. Validates your input (mode, country site / siteId, category slug, filters, max results)
2. Enforces free-tier caps when you are on a free Apify plan
3. Calls a managed Cloud Run worker (`mercadolibre-com`) that opens public pages with residential egress
4. Parses guest-visible Nordic / poly-card listing signals into normalized records
5. Pushes Dataset rows ready for Excel / CSV / JSON export
6. Writes `RUN_SUMMARY` (and `ERROR_SUMMARY` on failure) to the key-value store

You run it like any other Apify Actor — schedule it, call it from the API, or plug it into automations.

---

### What MercadoLibre data can I extract?

| Data | Ofertas | Category `/c/` | Search listado* | Product PDP* | Categories API |
| --- | :---: | :---: | :---: | :---: | :---: |
| Item ID / product IDs | ✅ | ✅ | ✅ | ✅ | — |
| Title | ✅ | ✅ | ✅ | ✅ | Category names |
| Price / currency | ✅ | ✅ | ✅ | ✅ | — |
| Permalink / product URL | ✅ | ✅ | ✅ | ✅ | Category URLs |
| Site ID / country host | ✅ | ✅ | ✅ | ✅ | ✅ |
| Source surface / page | ✅ | ✅ | ✅ | ✅ | ✅ |
| Category tree nodes | — | — | — | — | ✅ |

\*Keyword **search** and **product** detail often land on MercadoLibre’s `/gz/account-verification` gate for anonymous sessions. When that happens the Actor returns an honest **blocked** diagnostic instead of fake SERP/PDP rows. Prefer **`ofertas`** and **`category`** for reliable collection.

---

### Why scrape MercadoLibre?

MercadoLibre (and Mercado Livre in Brazil) is the largest ecommerce marketplace network in Latin America. Teams scrape MercadoLibre to:

- Monitor **deal / OFERTAS** prices and promotions by country
- Track **category landing** assortments (phones, autos, real estate, grocery, and more)
- Enrich catalogs with **item IDs, titles, prices, and permalinks**
- Compare LatAm marketplace pricing across **AR / MX / BR / CL / CO** and additional hosts
- Feed BI dashboards, pricing tools, or AI agents with structured LatAm ecommerce rows

Compared with MercadoLibre Actors that only cover **one country**, **reviews-only**, or **seller-offer monitoring**, this Actor focuses on **multi-country listing surfaces** (ofertas + categories + search/product when reachable) in one input form.

---

### More Actors like this

Need another marketplace or a different vertical? Use a **dedicated Actor** below for structured fields. Use this Actor for **MercadoLibre / Mercado Livre** ofertas, categories, and listing surfaces across LatAm.

#### Similar e-commerce scrapers
- [Shopee Search Scraper](https://apify.com/lentic_clockss/shopee-search-scraper)
- [Lazada Scraper](https://apify.com/lentic_clockss/lazada-ph-search-results-collector)
- [Amazon Search Scraper](https://apify.com/lentic_clockss/amazon-search-results-collector)
- [SHEIN Product Scraper](https://apify.com/lentic_clockss/shein-scraper)
- [Temu Product Scraper](https://apify.com/lentic_clockss/temu-scraper)
- [1688 Global Product Search Scraper](https://apify.com/lentic_clockss/1688-global-scraper)
- [Coupang Product Scraper](https://apify.com/lentic_clockss/coupang-scraper)
- [Walmart Product Scraper](https://apify.com/lentic_clockss/walmart-scraper)
- [Etsy Scraper](https://apify.com/lentic_clockss/etsy-scraper)
- [Target Product Scraper](https://apify.com/lentic_clockss/target-scraper)
- [Allegro Scraper](https://apify.com/lentic_clockss/allegro-scraper)
- [Mercari Japan Scraper](https://apify.com/lentic_clockss/mercari-scraper)

#### Prefer another specialized scraper?
If your target has a specialized Actor below, use that first — usually cheaper and more structured than a generic scrape.

**Jobs & Freelance**
- [LinkedIn Jobs Scraper](https://apify.com/lentic_clockss/linkedin-jobs-scraper)
- [Indeed Jobs Scraper](https://apify.com/lentic_clockss/indeed-jobs-scraper)
- [Upwork Jobs Scraper](https://apify.com/lentic_clockss/upwork-jobs-scraper)
- [Glassdoor Scraper](https://apify.com/lentic_clockss/glassdoor-scraper)
- [Fiverr Gigs Scraper](https://apify.com/lentic_clockss/fiverr-programming-tech-gigs-scraper)
- [Bayt Jobs Scraper](https://apify.com/lentic_clockss/bayt-scraper)

**Real Estate**
- [Zillow & Zumper Scraper](https://apify.com/lentic_clockss/us-real-estate-scraper)
- [Realtor.com Scraper](https://apify.com/lentic_clockss/realtor-com-scraper)
- [Apartments.com Rental Scraper](https://apify.com/lentic_clockss/apartments-com-rental-scraper)
- [Rightmove Scraper](https://apify.com/lentic_clockss/rightmove-property-scraper)
- [Idealista Scraper](https://apify.com/lentic_clockss/idealista-scraper)
- [realestate.com.au Scraper](https://apify.com/lentic_clockss/realestate-com-au-scraper)

**Travel & Stays**
- [Booking.com Hotels Scraper](https://apify.com/lentic_clockss/booking-hotels-scraper)
- [Airbnb Listings Scraper](https://apify.com/lentic_clockss/airbnb-listings-scraper)
- [Expedia Scraper](https://apify.com/lentic_clockss/expedia-scraper)
- [TripAdvisor Scraper](https://apify.com/lentic_clockss/tripadvisor-scraper)

**Social & Content**
- [YouTube Research Scraper](https://apify.com/lentic_clockss/youtube-research-scraper)
- [TikTok Scraper](https://apify.com/lentic_clockss/tiktok-scraper)
- [Reddit Scraper](https://apify.com/lentic_clockss/reddit-scraper)
- [YouTube Shorts Scraper](https://apify.com/lentic_clockss/youtube-shorts-scraper)

**Ads Intelligence**
- [Facebook Ad Library Scraper](https://apify.com/lentic_clockss/facebook-ad-library-scraper)
- [TikTok Ads Scraper](https://apify.com/lentic_clockss/tiktok-ads-top-ads-actor)

**Local & Maps**
- [Google Maps Scraper](https://apify.com/lentic_clockss/google-maps-scraper)

#### General tools
- [Stealth Web Scraper](https://apify.com/lentic_clockss/stealth-web-scraper)
- [Email Risk Validator](https://apify.com/lentic_clockss/email-risk-validator)
- [Phone Number Intelligence](https://apify.com/lentic_clockss/phone-number-intelligence)

→ See the full catalog in [Related Actors](#related-actors) below, or browse [apify.com/lentic_clockss](https://apify.com/lentic_clockss).

---

### How to scrape MercadoLibre (no code required)

1. Create a free [Apify](https://apify.com/) account
2. Open [MercadoLibre Scraper](https://apify.com/lentic_clockss/mercadolibre-scraper)
3. Choose a **mode**: `ofertas` (default), `category`, `search`, `product`, or `categories`
4. Choose a **country site** (default `mercadolibre.com.ar`) or set `siteId` (`MLA`, `MLM`, `MLB`, …)
5. For category mode, enter a **categorySlug** (for example `celulares-y-telefonos`)
6. *(Optional)* Set `page`, `categoryId`, `containerId`, `price`, or `maxResults`
7. Click **Start** and download the Dataset as JSON, CSV, Excel, or JSONL

Start with `maxResults: 5–10` to verify the query, then scale up.

---

### How much does it cost to scrape MercadoLibre?

This Actor uses **pay-per-event** pricing. You are charged for:

| Event | Price |
| --- | --- |
| Actor Start (`apify-actor-start`) | **$0.005** per start |
| Result (`apify-default-dataset-item`) | **$3.00 / 1,000** results (**$0.003** each) |

**Platform usage costs are included** — you do **not** pay separate Apify compute/proxy usage for this Actor on top of the event prices above.

#### Example cost estimates

| Results collected | Approx. event cost* |
| --- | ---: |
| 100 | ~$0.31 |
| 1,000 | ~$3.01 |
| 10,000 | ~$30.01 |

\*Assumes one Actor start at default memory billing for start events, plus `$0.003` per Dataset item. Exact start billing can scale with allocated memory (one start event per GB, minimum one).

Free Apify trial credit can cover a small test run — try `maxResults: 5` first.

#### Free-tier caps (Actor developer limits)

| Cap | Value |
| --- | --- |
| Free Apify-plan runs of this Actor | **10** total |
| Free results / run | **200** |
| Paying Apify users | Unlimited runs (schema max still applies) |

These limits are enforced in Actor code (set by the Actor developer, not Apify). When the run cap is hit, the Actor finishes successfully with `RUN_SUMMARY.status = FREE_TIER_LIMIT` and a clear status message.

---

### Input

Open the **Input** tab for the full form. Common fields:

| Field | Description |
| --- | --- |
| `mode` | `ofertas`, `category`, `search`, `product`, `categories` |
| `countrySite` | Host such as `mercadolibre.com.ar` (default), `.com.mx`, `mercadolivre.com.br`, `.cl`, `.com.co`, … |
| `siteId` | Optional `MLA` / `MLM` / `MLB` / … (overrides `countrySite`) |
| `categorySlug` | Required for `category` (e.g. `celulares-y-telefonos`) |
| `categoryId` / `containerId` / `price` / `installments` | Optional ofertas filters |
| `page` | Ofertas page number |
| `keyword` / `keywords` | Search listado query (often verification-gated) |
| `productUrl` / `productId` / `itemId` / `userProductId` | Product mode identifiers |
| `maxResults` | Cap on emitted Dataset rows |
| `workerBaseUrl` | Advanced allowlisted worker override (optional) |

#### Input example (ofertas)

```json
{
  "mode": "ofertas",
  "countrySite": "mercadolibre.com.mx",
  "page": 1,
  "maxResults": 20
}
````

#### Input example (category)

```json
{
  "mode": "category",
  "countrySite": "mercadolibre.com.ar",
  "categorySlug": "celulares-y-telefonos",
  "maxResults": 20
}
```

***

### Output

Each Dataset item includes site metadata plus listing fields such as:

| Field | Description |
| --- | --- |
| `item_id` | MercadoLibre item id when present |
| `product_id` / `user_product_id` | Catalog / UP identifiers when present |
| `title` | Listing title |
| `price` / `currency` | Price signals |
| `permalink` | Public product / listing URL |
| `siteId` / `countrySite` | Marketplace site and host |
| `source_surface` | Surface used (ofertas, category, …) |
| `mode` / `scrapedAt` | Collection mode and timestamp |

Field presence depends on mode and what the public page exposes for that run.

***

### Coverage matrix

| Dimension | Coverage |
| --- | --- |
| Country sites | 18 hosts including AR / MX / BR / CL / CO / PE / UY / VE / EC / BO + Central America + PY |
| Modes | `ofertas` · `category` · `search` · `product` · `categories` |
| Verticals | Phones, vehicles, real estate, supermercado, etc. via `category` + slug (not separate Actors) |

**Preferred surfaces:** `/ofertas` and `/c/{slug}` for stable anonymous collection. Keyword SERP and some PDP URLs may return **blocked** when MercadoLibre shows account-verification.

***

### Architecture and proxy ownership

```text
Apify Actor (input, Dataset, free tier, Standby, PPE)
        │ HTTPS + WORKER_AUTH
        ▼
Cloud Run worker mercadolibre-com (Patchright + Chrome + Xvfb, parse, OpenAPI)
        ▼
MercadoLibre / Mercado Livre public listing pages
```

`WORKER_PROVIDES_PROXY=1` is enabled by default. The Actor does not mint or transmit `proxyUrl`; proxy/egress is configured on the worker (including egress-control). Set `WORKER_BASE_URL` and secret `WORKER_AUTH` in Actor settings.

Default run memory: **1024 MB** (min 512).

#### Standby / Live View

When the Actor runs in Standby mode, these HTTP paths are available (see `.actor/openapi.json`):

| Method | Path | Purpose |
| --- | --- | --- |
| `GET` | `/`, `/health` | Readiness / Actor health |
| `GET` | `/input-example` | Documentation-only sample input |
| `GET` | `/openapi.json`, `/schema` | OpenAPI document |
| `POST` | `/search`, `/v1/search` | Actor scrape request (`mode` in JSON) |

Batch Actor runs remain the primary path for Dataset export; Standby is for Live View / small HTTP calls. Live View OpenAPI only documents Actor-side paths.

***

### Run artifacts

| Key | Purpose |
| --- | --- |
| `INPUT_ECHO` | Normalized non-secret input and resolved worker source |
| `RUN_SUMMARY` | Worker, proxy source, free-tier, and record metrics |
| `ERROR_SUMMARY` | Structured failure before valid records are emitted |

***

### Integrations & API

- Schedule recurring MercadoLibre ofertas / category pulls from Apify Console
- Call the Actor from Python, Node.js, or `curl` via the [Apify API](https://docs.apify.com/api/v2)
- Connect to Make, n8n, Zapier, Google Sheets, or your BI stack

#### API example

```bash
curl -X POST "https://api.apify.com/v2/acts/lentic_clockss~mercadolibre-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "mode": "ofertas",
    "countrySite": "mercadolibre.com.ar",
    "page": 1,
    "maxResults": 20
  }'
```

***

### FAQ

#### Is login required?

No. The Actor targets publicly reachable listing surfaces via the managed worker.

#### Can it complete purchases or access seller accounts?

No. Checkout, messaging, and private account flows are intentionally excluded.

#### Why do search or product runs say blocked?

MercadoLibre often redirects anonymous keyword SERP / PDP traffic to `/gz/account-verification`. The Actor reports **blocked** instead of inventing results. Prefer `ofertas` or `category`.

#### Do I need a separate Actor per vertical (phones, cars, real estate)?

No. Use `mode=category` with the marketplace category slug for that vertical.

#### Do I pay Apify platform usage separately?

No for this Actor’s configured PPE plan — **User pays platform usage costs = No**. You pay the event prices above; platform usage is covered by the Actor developer.

***

### Legal & responsible use

Use this Actor only for lawful purposes and in line with MercadoLibre terms and applicable laws. You are responsible for how you store and use the data. Prefer low-volume smoke inputs first (`maxResults: 2–5`).

***

### Support

Questions or feature requests: open an issue on the Actor page in Apify Console or contact the developer through Apify.

### Related Actors

All **77** public Actors from \[[lentic\_clockss](https://apify.com/lentic_clockss)]. Click a name to open the Store detail page.

#### Jobs & Freelance

- [LinkedIn Jobs Scraper](https://apify.com/lentic_clockss/linkedin-jobs-scraper)
- [Bayt Jobs Scraper](https://apify.com/lentic_clockss/bayt-scraper)
- [Fiverr Gigs Scraper](https://apify.com/lentic_clockss/fiverr-programming-tech-gigs-scraper)
- [Freelancer.com Scraper](https://apify.com/lentic_clockss/freelancer-scraper)
- [Glassdoor Scraper](https://apify.com/lentic_clockss/glassdoor-scraper)
- [Himalayas Jobs Scraper](https://apify.com/lentic_clockss/himalayas-jobs-scraper)
- [Indeed Jobs Scraper](https://apify.com/lentic_clockss/indeed-jobs-scraper)
- [Jobicy Remote Jobs Scraper](https://apify.com/lentic_clockss/jobicy-remote-jobs-scraper)
- [RemoteOK Jobs Scraper](https://apify.com/lentic_clockss/remoteok-all-jobs-scraper)
- [SEEK Jobs Scraper](https://apify.com/lentic_clockss/seek-scraper)
- [Upwork Jobs Scraper](https://apify.com/lentic_clockss/upwork-jobs-scraper)

#### Real Estate

- [Zillow & Zumper Scraper](https://apify.com/lentic_clockss/us-real-estate-scraper)
- [Realtor.com Scraper](https://apify.com/lentic_clockss/realtor-com-scraper)
- [99.co Scraper](https://apify.com/lentic_clockss/ninetynine-co-sg-scraper)
- [Realtor.com Agents Scraper](https://apify.com/lentic_clockss/realtor-com-agents-scraper)
- [Apartments.com Rental Scraper](https://apify.com/lentic_clockss/apartments-com-rental-scraper)
- [Bayut Scraper](https://apify.com/lentic_clockss/bayut-uae-scraper)
- [Craigslist Housing Scraper](https://apify.com/lentic_clockss/craigslist-housing-scraper)
- [Daft.ie Scraper](https://apify.com/lentic_clockss/daft-property-scraper)
- [Dot Property Scraper](https://apify.com/lentic_clockss/dot-property-th-scraper)
- [FINN.no Scraper](https://apify.com/lentic_clockss/finn-scraper)
- [Funda Scraper](https://apify.com/lentic_clockss/funda-scraper)
- [Hepsiemlak Scraper](https://apify.com/lentic_clockss/hepsiemlak-scraper)
- [Idealista Scraper](https://apify.com/lentic_clockss/idealista-scraper)
- [Immobiliare.it Scraper](https://apify.com/lentic_clockss/immobiliare-property-scraper)
- [ImmoScout24 Scraper](https://apify.com/lentic_clockss/immobilienscout24-scraper)
- [Naver Land Scraper](https://apify.com/lentic_clockss/naver-land-scraper)
- [OpenSooq Scraper](https://apify.com/lentic_clockss/opensooq-real-estate-scraper)
- [Otodom Scraper](https://apify.com/lentic_clockss/otodom-scraper)
- [Property Finder Scraper](https://apify.com/lentic_clockss/property-finder-uae-scraper)
- [PropertyGuru Scraper](https://apify.com/lentic_clockss/propertyguru-sg-scraper)
- [realestate.com.au Scraper](https://apify.com/lentic_clockss/realestate-com-au-scraper)
- [Realtor.ca Scraper](https://apify.com/lentic_clockss/realtor-ca-scraper)
- [Rightmove Scraper](https://apify.com/lentic_clockss/rightmove-property-scraper)
- [SeLoger Scraper](https://apify.com/lentic_clockss/seloger-property-scraper)
- [SUUMO Scraper](https://apify.com/lentic_clockss/suumo-property-scraper)
- [Zillow Group Scraper](https://apify.com/lentic_clockss/zillow-group-scraper)

#### E-commerce

- [Shopee Search Scraper](https://apify.com/lentic_clockss/shopee-search-scraper)
- [E-commerce Scraper](https://apify.com/lentic_clockss/ecommerce-scraper)
- [1688 Global Product Search Scraper](https://apify.com/lentic_clockss/1688-global-scraper)
- [Allegro Scraper](https://apify.com/lentic_clockss/allegro-scraper)
- [Amazon Search Scraper](https://apify.com/lentic_clockss/amazon-search-results-collector)
- [ASOS Product Scraper](https://apify.com/lentic_clockss/asos-scraper)
- [Cdiscount Product Scraper](https://apify.com/lentic_clockss/cdiscount-scraper)
- [Costco Product Scraper](https://apify.com/lentic_clockss/costco-scraper)
- [Coupang Product Scraper](https://apify.com/lentic_clockss/coupang-scraper)
- [Etsy Scraper](https://apify.com/lentic_clockss/etsy-scraper)
- [Lazada Scraper](https://apify.com/lentic_clockss/lazada-ph-search-results-collector)
- [MercadoLibre Scraper](https://apify.com/lentic_clockss/mercadolibre-scraper)
- [Mercari Japan Scraper](https://apify.com/lentic_clockss/mercari-scraper)
- [Rakuten Japan Scraper](https://apify.com/lentic_clockss/rakuten-scraper)
- [SHEIN Product Scraper](https://apify.com/lentic_clockss/shein-scraper)
- [Target Product Scraper](https://apify.com/lentic_clockss/target-scraper)
- [Temu Product Scraper](https://apify.com/lentic_clockss/temu-scraper)
- [Walmart Product Scraper](https://apify.com/lentic_clockss/walmart-scraper)

#### Travel & Stays

- [Booking.com & Airbnb Scraper](https://apify.com/lentic_clockss/booking-airbnb-scraper)
- [Agoda Scraper](https://apify.com/lentic_clockss/agoda-scraper)
- [Airbnb Listings Scraper](https://apify.com/lentic_clockss/airbnb-listings-scraper)
- [Booking.com Hotels Scraper](https://apify.com/lentic_clockss/booking-hotels-scraper)
- [Despegar Scraper](https://apify.com/lentic_clockss/despegar-scraper)
- [Expedia Scraper](https://apify.com/lentic_clockss/expedia-scraper)
- [Traveloka Scraper](https://apify.com/lentic_clockss/traveloka-scraper)
- [Travelstart Flights Scraper](https://apify.com/lentic_clockss/travelstart-scraper)
- [Trip.com Scraper](https://apify.com/lentic_clockss/trip-com-scraper)
- [TripAdvisor Scraper](https://apify.com/lentic_clockss/tripadvisor-scraper)

#### Social & Content

- [TikTok Scraper](https://apify.com/lentic_clockss/tiktok-scraper)
- [Reddit Scraper](https://apify.com/lentic_clockss/reddit-scraper)
- [YouTube Shorts Scraper](https://apify.com/lentic_clockss/youtube-shorts-scraper)
- [YouTube Research Scraper](https://apify.com/lentic_clockss/youtube-research-scraper)
- [Hacker News Scraper](https://apify.com/lentic_clockss/hacker-news-scraper)

#### Ads Intelligence

- [Facebook Ad Library Scraper](https://apify.com/lentic_clockss/facebook-ad-library-scraper)
- [Google Ads Transparency VN](https://apify.com/lentic_clockss/google-ads-transparency-center-vn)
- [TikTok Ads Scraper](https://apify.com/lentic_clockss/tiktok-ads-top-ads-actor)

#### Local & Maps

- [Google Maps Scraper](https://apify.com/lentic_clockss/google-maps-scraper)

#### General Tools

- [Stealth Web Scraper](https://apify.com/lentic_clockss/stealth-web-scraper)
- [Email Risk Validator](https://apify.com/lentic_clockss/email-risk-validator)
- [Phone Number Intelligence](https://apify.com/lentic_clockss/phone-number-intelligence)

→ Browse the full profile: [apify.com/lentic\_clockss](https://apify.com/lentic_clockss)

# Actor input Schema

## `mode` (type: `string`):

ofertas=/ofertas paginated deals; category=/c/{slug}; search=listado (often verification); product=PDP (often verification); categories=public categories API.

## `countrySite` (type: `string`):

MercadoLibre country host (siteId MLA/MLM/MLB… also accepted via siteId).

## `siteId` (type: `string`):

Optional MLA / MLM / MLB / … (overrides countrySite).

## `keyword` (type: `string`):

Required for mode=search (listado). Often blocked by account-verification.

## `keywords` (type: `array`):

Optional list; first entry used when keyword empty.

## `categorySlug` (type: `string`):

Required for mode=category, e.g. celulares-y-telefonos (AR) or celulares-y-telefonia (MX).

## `categoryId` (type: `string`):

Ofertas filter category=MLAxxxx, or categories mode root id (e.g. MLA1055).

## `containerId` (type: `string`):

Ofertas container\_id filter from deal landings.

## `price` (type: `string`):

e.g. 65000.0-250000.0

## `installments` (type: `string`):

Ofertas installments filter value.

## `page` (type: `integer`):

Ofertas page

## `productUrl` (type: `string`):

Full PDP URL for mode=product.

## `productId` (type: `string`):

e.g. MLA64352063 for /p/{id}

## `itemId` (type: `string`):

e.g. MLA1917258137

## `userProductId` (type: `string`):

e.g. MLAU3818396667 for /up/{id}

## `maxResults` (type: `integer`):

Free plan capped at 200 results/run.

## `workerBaseUrl` (type: `string`):

Optional HTTPS Cloud Run origin (allowlisted). Production uses Actor env WORKER\_BASE\_URL.

## Actor input object example

```json
{
  "mode": "ofertas",
  "countrySite": "mercadolibre.com.ar",
  "page": 1,
  "maxResults": 40
}
```

# Actor output Schema

## `results` (type: `string`):

Normalized MercadoLibre listing / category rows from the default dataset.

## `runSummary` (type: `string`):

Structured summary record stored in the default key-value store.

## `inputEcho` (type: `string`):

Normalized input saved at run start.

## `errorSummary` (type: `string`):

Present when a failed run stores structured terminal error information.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("lentic_clockss/mercadolibre-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("lentic_clockss/mercadolibre-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call lentic_clockss/mercadolibre-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=lentic_clockss/mercadolibre-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "MercadoLibre Scraper | Products Prices LatAm",
        "description": "Scrape MercadoLibre and Mercado Livre across Latin America — ofertas, categories, search & products. Extract item IDs, titles, prices & permalinks from AR/MX/BR and more. Export Excel/CSV/JSON. Unofficial — not affiliated with MercadoLibre.",
        "version": "0.1",
        "x-build-id": "PiYyAVqpbwKp0ebwZ"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/lentic_clockss~mercadolibre-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-lentic_clockss-mercadolibre-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/lentic_clockss~mercadolibre-scraper/runs": {
            "post": {
                "operationId": "runs-sync-lentic_clockss-mercadolibre-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/lentic_clockss~mercadolibre-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-lentic_clockss-mercadolibre-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "ofertas",
                            "category",
                            "search",
                            "product",
                            "categories"
                        ],
                        "type": "string",
                        "description": "ofertas=/ofertas paginated deals; category=/c/{slug}; search=listado (often verification); product=PDP (often verification); categories=public categories API.",
                        "default": "ofertas"
                    },
                    "countrySite": {
                        "title": "Country site",
                        "enum": [
                            "mercadolibre.com.ar",
                            "mercadolibre.com.mx",
                            "mercadolivre.com.br",
                            "mercadolibre.cl",
                            "mercadolibre.com.co",
                            "mercadolibre.com.pe",
                            "mercadolibre.com.uy",
                            "mercadolibre.com.ve",
                            "mercadolibre.com.ec",
                            "mercadolibre.com.bo",
                            "mercadolibre.com.gt",
                            "mercadolibre.com.cr",
                            "mercadolibre.com.pa",
                            "mercadolibre.com.do",
                            "mercadolibre.com.hn",
                            "mercadolibre.com.ni",
                            "mercadolibre.com.sv",
                            "mercadolibre.com.py"
                        ],
                        "type": "string",
                        "description": "MercadoLibre country host (siteId MLA/MLM/MLB… also accepted via siteId).",
                        "default": "mercadolibre.com.ar"
                    },
                    "siteId": {
                        "title": "Site ID",
                        "type": "string",
                        "description": "Optional MLA / MLM / MLB / … (overrides countrySite)."
                    },
                    "keyword": {
                        "title": "Search keyword",
                        "type": "string",
                        "description": "Required for mode=search (listado). Often blocked by account-verification."
                    },
                    "keywords": {
                        "title": "Keywords",
                        "type": "array",
                        "description": "Optional list; first entry used when keyword empty.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "categorySlug": {
                        "title": "Category slug",
                        "type": "string",
                        "description": "Required for mode=category, e.g. celulares-y-telefonos (AR) or celulares-y-telefonia (MX)."
                    },
                    "categoryId": {
                        "title": "Category ID",
                        "type": "string",
                        "description": "Ofertas filter category=MLAxxxx, or categories mode root id (e.g. MLA1055)."
                    },
                    "containerId": {
                        "title": "Ofertas container_id",
                        "type": "string",
                        "description": "Ofertas container_id filter from deal landings."
                    },
                    "price": {
                        "title": "Ofertas price filter",
                        "type": "string",
                        "description": "e.g. 65000.0-250000.0"
                    },
                    "installments": {
                        "title": "Ofertas installments filter",
                        "type": "string",
                        "description": "Ofertas installments filter value."
                    },
                    "page": {
                        "title": "Ofertas page",
                        "minimum": 1,
                        "maximum": 100,
                        "type": "integer",
                        "description": "Ofertas page",
                        "default": 1
                    },
                    "productUrl": {
                        "title": "Product URL",
                        "type": "string",
                        "description": "Full PDP URL for mode=product."
                    },
                    "productId": {
                        "title": "Catalog product ID",
                        "type": "string",
                        "description": "e.g. MLA64352063 for /p/{id}"
                    },
                    "itemId": {
                        "title": "Item ID",
                        "type": "string",
                        "description": "e.g. MLA1917258137"
                    },
                    "userProductId": {
                        "title": "User product ID",
                        "type": "string",
                        "description": "e.g. MLAU3818396667 for /up/{id}"
                    },
                    "maxResults": {
                        "title": "Max results",
                        "minimum": 1,
                        "maximum": 500,
                        "type": "integer",
                        "description": "Free plan capped at 200 results/run.",
                        "default": 40
                    },
                    "workerBaseUrl": {
                        "title": "Worker base URL override",
                        "type": "string",
                        "description": "Optional HTTPS Cloud Run origin (allowlisted). Production uses Actor env WORKER_BASE_URL."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
