{
  "openapi": "3.0.1",
  "info": {
    "title": "MercadoLibre Price Tracker & Price History",
    "description": "Track MercadoLibre prices in 18 LATAM countries: best price across all sellers, every offer and shared price history per product: lowest price seen, price drops and real discount vs. 'original' price. Pay per result.",
    "version": "0.1",
    "x-build-id": "ar2lRmBYAOAZPBKOf"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/pricelatam~mercadolibre-price-tracker/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-pricelatam-mercadolibre-price-tracker",
        "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/pricelatam~mercadolibre-price-tracker/runs": {
      "post": {
        "operationId": "runs-sync-pricelatam-mercadolibre-price-tracker",
        "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/pricelatam~mercadolibre-price-tracker/run-sync": {
      "post": {
        "operationId": "run-sync-pricelatam-mercadolibre-price-tracker",
        "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",
        "required": [
          "country"
        ],
        "properties": {
          "country": {
            "title": "Country",
            "enum": [
              "MLA",
              "MLB",
              "MLM",
              "MCO",
              "MLC",
              "MPE",
              "MLU",
              "MEC",
              "MLV",
              "MBO",
              "MPY",
              "MRD",
              "MCR",
              "MNI",
              "MGT",
              "MHN",
              "MSV",
              "MPA"
            ],
            "type": "string",
            "description": "MercadoLibre site (country) to search. Brazil is Mercado Livre.",
            "default": "MCO"
          },
          "queries": {
            "title": "Search keywords",
            "type": "array",
            "description": "One search per line, e.g. 'iphone 15 128gb'. Write keywords as people search in that country ('auriculares' in Argentina, 'audífonos' in Mexico, 'fone' in Brazil). Catalog products matching the keywords are returned with all their seller offers and price history.",
            "items": {
              "type": "string"
            }
          },
          "category": {
            "title": "Category (domain)",
            "type": "string",
            "description": "Optional MercadoLibre domain to restrict the search, e.g. CELLPHONES, NOTEBOOKS, TELEVISIONS, SNEAKERS. Leave empty to let the Actor detect it from the keywords."
          },
          "productIds": {
            "title": "Product IDs to track",
            "type": "array",
            "description": "Catalog product IDs (the ID after /p/ in a product URL, e.g. MCO27172677) or full product URLs. Every product is returned, even without offers. Use this on a schedule to build price history.",
            "items": {
              "type": "string"
            }
          },
          "maxProductsPerQuery": {
            "title": "Max products per query",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Maximum products returned per keyword. Products with no offer matching your filters are skipped. You only pay for products actually returned.",
            "default": 20
          },
          "condition": {
            "title": "Offer condition",
            "enum": [
              "any",
              "new",
              "used",
              "refurbished"
            ],
            "type": "string",
            "description": "Only offers in this condition count for the best price, the offers count and the offers list. The stored price history always covers all offers.",
            "default": "any"
          },
          "officialStoresOnly": {
            "title": "Official stores only",
            "type": "boolean",
            "description": "Only offers from MercadoLibre official stores count for the best price, the offers count and the offers list.",
            "default": false
          },
          "includeOffers": {
            "title": "Include every seller offer",
            "type": "boolean",
            "description": "Attach the list of offers (seller, price, shipping, condition) to each product.",
            "default": true
          },
          "includeHistory": {
            "title": "Include price history points",
            "type": "boolean",
            "description": "Attach the stored best-price history (date, best price, offers count) of each product. History is shared and accumulates across the runs of all users; popular products in MCO, MLM, MLA and MLB are also refreshed daily.",
            "default": true
          },
          "historyDays": {
            "title": "History window (days)",
            "minimum": 1,
            "maximum": 365,
            "type": "integer",
            "description": "How many days back the attached price history goes. Lowest/highest price seen and the 24 h / 7 d changes always use the full history.",
            "default": 90
          },
          "onlyPriceDrops": {
            "title": "Only products whose best price dropped since the last observation",
            "type": "boolean",
            "description": "Return (and charge) only products whose best price is lower than at their previous observation. Use it with a schedule to get price-drop alerts.",
            "default": false
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}