{
  "openapi": "3.0.1",
  "info": {
    "title": "MercadoLibre Scraper - Products, Prices, Reviews, Q&A & Sellers",
    "description": "Scrape MercadoLibre and Mercado Livre in all 18 countries: search listings with price, discount, installments, shipping, sold count and seller, plus product details, reviews, buyer Q&A and official stores. Monitor mode for new listings and price changes. No login, no start fee.",
    "version": "0.1",
    "x-build-id": "h9wFMHIoeTt0HpDCv"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/topapi~mercadolibre-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-topapi-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/topapi~mercadolibre-scraper/runs": {
      "post": {
        "operationId": "runs-sync-topapi-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/topapi~mercadolibre-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-topapi-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": "What to scrape",
            "enum": [
              "search",
              "products",
              "reviews",
              "questions",
              "seller"
            ],
            "type": "string",
            "description": "Search = listings for keywords or listing links. Products = full product pages for links or ids. Reviews / Questions = buyer reviews or Q&A of products. Seller = a store's catalog.",
            "default": "search"
          },
          "searchQueries": {
            "title": "Search terms",
            "type": "array",
            "description": "One search per term, as you would type it on MercadoLibre, e.g. \"celular samsung\", \"zapatillas nike\", \"cafeteira\".",
            "items": {
              "type": "string"
            }
          },
          "country": {
            "title": "Country site",
            "enum": [
              "MX",
              "AR",
              "BR",
              "CL",
              "CO",
              "PE",
              "UY",
              "EC",
              "VE",
              "BO",
              "PY",
              "CR",
              "DO",
              "GT",
              "HN",
              "NI",
              "PA",
              "SV"
            ],
            "type": "string",
            "description": "The MercadoLibre site to search. Links you paste are read on their own site whatever you pick here.",
            "default": "MX"
          },
          "countries": {
            "title": "More country sites",
            "type": "array",
            "description": "Run the same search terms on more sites too, e.g. [\"AR\", \"BR\", \"CO\"]. Empty = only the country above.",
            "items": {
              "type": "string"
            }
          },
          "startUrls": {
            "title": "MercadoLibre links",
            "type": "array",
            "description": "Any MercadoLibre link: a search or category page (listado.…), deals (/ofertas), an official store (/tienda/…), a seller (_CustId_…), or product / listing pages. Each is read the way its type needs.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "productUrls": {
            "title": "Products (links or ids)",
            "type": "array",
            "description": "For Products, Reviews and Questions: product links (/p/MLM…), listing links (articulo.… / produto.…) or bare ids such as MLM23138487 or MLB-1234567890.",
            "items": {
              "type": "string"
            }
          },
          "sellerUrls": {
            "title": "Sellers or stores",
            "type": "array",
            "description": "For Seller mode: an official store link (/tienda/sony, /loja/samsung), a seller listings link (_CustId_123), a numeric seller id, or a seller nickname.",
            "items": {
              "type": "string"
            }
          },
          "categoryId": {
            "title": "Category id",
            "type": "string",
            "description": "Limit the search to one MercadoLibre category, e.g. MLM1055 (phones in Mexico). Empty = all categories."
          },
          "sortBy": {
            "title": "Sort",
            "enum": [
              "relevance",
              "price_asc",
              "price_desc"
            ],
            "type": "string",
            "description": "Order of the search results, as on the site.",
            "default": "relevance"
          },
          "condition": {
            "title": "Condition",
            "enum": [
              "any",
              "new",
              "used",
              "refurbished"
            ],
            "type": "string",
            "description": "Only new, used or refurbished listings.",
            "default": "any"
          },
          "minPrice": {
            "title": "Min price",
            "minimum": 0,
            "type": "integer",
            "description": "Lowest price, in the site's currency (e.g. 2000 = MXN 2,000 on Mexico)."
          },
          "maxPrice": {
            "title": "Max price",
            "minimum": 0,
            "type": "integer",
            "description": "Highest price, in the site's currency."
          },
          "freeShippingOnly": {
            "title": "Free shipping only",
            "type": "boolean",
            "description": "Only listings with free shipping (Envío gratis / Frete grátis).",
            "default": false
          },
          "fullShippingOnly": {
            "title": "FULL shipping only",
            "type": "boolean",
            "description": "Only listings stored and shipped by Mercado Envíos FULL.",
            "default": false
          },
          "officialStoresOnly": {
            "title": "Official stores only",
            "type": "boolean",
            "description": "Only listings from official brand stores (Tiendas oficiales / Lojas oficiais).",
            "default": false
          },
          "bestSellersOnly": {
            "title": "Top sellers only",
            "type": "boolean",
            "description": "Only listings from MercadoLíder / top-rated sellers (the site's 'Mejores vendedores' filter).",
            "default": false
          },
          "interestFreeOnly": {
            "title": "Interest-free installments only",
            "type": "boolean",
            "description": "Only listings payable in interest-free installments (meses sin intereses / sem juros).",
            "default": false
          },
          "includeSponsored": {
            "title": "Include sponsored listings",
            "type": "boolean",
            "description": "Also deliver the ads MercadoLibre mixes into the results (marked isSponsored). Off = organic results only, ranked as the site ranks them.",
            "default": false
          },
          "minDiscount": {
            "title": "Min discount %",
            "minimum": 0,
            "maximum": 99,
            "type": "integer",
            "description": "Only listings at least this many percent below their previous price, e.g. 20."
          },
          "minRating": {
            "title": "Min rating",
            "minimum": 0,
            "maximum": 5,
            "type": "number",
            "description": "Only listings rated at least this, e.g. 4.5. Listings without a rating are left out when set."
          },
          "minSoldQuantity": {
            "title": "Min units sold",
            "minimum": 0,
            "type": "integer",
            "description": "Only listings showing at least this many sold (the site shows buckets such as +500, +5 mil)."
          },
          "excludeKeywords": {
            "title": "Exclude words",
            "type": "array",
            "description": "Leave out listings whose title contains any of these words, e.g. \"funda\", \"usado\".",
            "items": {
              "type": "string"
            }
          },
          "includeDetails": {
            "title": "Product details (paid add-on)",
            "type": "boolean",
            "description": "Also read each listing's product page: description, photos, specs, variations, stock, seller id and reputation, warranty, returns, shipping, payment methods. Charged only when it answered.",
            "default": false
          },
          "includeReviews": {
            "title": "Reviews of each product",
            "type": "boolean",
            "description": "Also deliver buyer reviews (one row each) for every listing or product.",
            "default": false
          },
          "maxReviewsPerProduct": {
            "title": "Max reviews per product",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "Reviews per product. MercadoLibre stops one review list at about 500; turn on Deep review sweep to go past it.",
            "default": 20
          },
          "reviewRating": {
            "title": "Review stars",
            "enum": [
              "all",
              "5",
              "4",
              "3",
              "2",
              "1"
            ],
            "type": "string",
            "description": "Only reviews with this many stars.",
            "default": "all"
          },
          "reviewSort": {
            "title": "Review order",
            "enum": [
              "relevance",
              "newest"
            ],
            "type": "string",
            "description": "Most helpful first (the site's default) or newest first.",
            "default": "relevance"
          },
          "deepReviews": {
            "title": "Deep review sweep",
            "type": "boolean",
            "description": "Read every star rating and both orders and merge them without repeats, to collect more than one list's ~500 reviews.",
            "default": false
          },
          "includeQuestions": {
            "title": "Buyer questions & answers",
            "type": "boolean",
            "description": "Also deliver the public questions and the seller's answers (one row each) for every listing.",
            "default": false
          },
          "maxQuestionsPerItem": {
            "title": "Max questions per listing",
            "minimum": 0,
            "maximum": 1000,
            "type": "integer",
            "description": "Questions per listing, newest first, as many as the listing's questions page shows.",
            "default": 50
          },
          "includeSellerProfile": {
            "title": "Store profile row",
            "type": "boolean",
            "description": "Seller mode: one profile row per official store (followers, store and brand ids, logo, banner) before its listings.",
            "default": true
          },
          "monitorMode": {
            "title": "Only new listings",
            "type": "boolean",
            "description": "Deliver only listings, reviews and questions that earlier runs with the same store name did not deliver. Pairs with a daily schedule.",
            "default": false
          },
          "monitorPriceChanges": {
            "title": "Also deliver price changes",
            "type": "boolean",
            "description": "With Only new listings on: a known listing whose price changed comes back once, with changeType priceDrop / priceRise and its previous price.",
            "default": true
          },
          "minPriceChangePercent": {
            "title": "Min price change %",
            "minimum": 0,
            "maximum": 100,
            "type": "number",
            "description": "Ignore price changes smaller than this, e.g. 5.",
            "default": 0
          },
          "monitorStoreName": {
            "title": "Monitor store name",
            "type": "string",
            "description": "Named key-value store that remembers what was delivered. Use one name per schedule.",
            "default": "mercadolibre-monitor"
          },
          "maxItems": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Listing / product rows per run (reviews or questions in those modes). MercadoLibre shows up to about 2,000 results per search; Split by price goes past that.",
            "default": 100
          },
          "maxItemsPerSearch": {
            "title": "Max results per search",
            "minimum": 0,
            "maximum": 100000,
            "type": "integer",
            "description": "Cap for each search term or link. 0 = up to Max results.",
            "default": 0
          },
          "splitByPrice": {
            "title": "Split by price (past 2,000)",
            "type": "boolean",
            "description": "When a search has more results than the site shows (about 2,000), split it into price bands and merge them without repeats.",
            "default": false
          },
          "compact": {
            "title": "Compact rows",
            "type": "boolean",
            "description": "Core listing fields only (id, title, url, price, discount, shipping, rating, sold, seller, position), trimmed for spreadsheets and AI agents.",
            "default": false
          },
          "maxConcurrency": {
            "title": "Parallel requests",
            "minimum": 1,
            "maximum": 16,
            "type": "integer",
            "description": "Product-detail and review requests in flight at once.",
            "default": 6
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Default: Apify residential IPs in each site's own country (MercadoLibre refuses datacenter and foreign IPs for its pages). You can give your own proxy URLs instead.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ]
            }
          }
        }
      },
      "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}