Marketplace Price Tracker & Comparison
Pricing
$2.00 / 1,000 offer results
Go to Apify Store
Marketplace Price Tracker & Comparison
Compare prices, sellers, stock and changes across marketplaces.
Marketplace Price Tracker & Comparison
Pricing
$2.00 / 1,000 offer results
Compare prices, sellers, stock and changes across marketplaces.
You can access the Marketplace Price Tracker & Comparison programmatically from your own applications by using the Apify API. You can also choose the language preference from below. To use the Apify API, you’ll need an Apify account and your API token, found in API & Integrations in Apify Console.
{ "openapi": "3.0.1", "info": { "version": "1.0", "x-build-id": "ZHbdzMd7GHTLZKBJL" }, "servers": [ { "url": "https://api.apify.com/v2" } ], "paths": { "/acts/akatra~marketplace-price-intelligence/run-sync-get-dataset-items": { "post": { "operationId": "run-sync-get-dataset-items-akatra-marketplace-price-intelligence", "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/akatra~marketplace-price-intelligence/runs": { "post": { "operationId": "runs-sync-akatra-marketplace-price-intelligence", "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/akatra~marketplace-price-intelligence/run-sync": { "post": { "operationId": "run-sync-akatra-marketplace-price-intelligence", "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": { "searchQueries": { "title": "Search queries", "type": "array", "description": "Product names to search on every selected marketplace, for example \"iPhone 16 128 GB\". Be specific: every word of the query must appear in a listing for it to be returned. Up to 50 queries per run.", "items": { "type": "string" } }, "startUrls": { "title": "Product or search URLs", "type": "array", "description": "Optional. Product pages (or search-result pages) on a supported marketplace or comparison site. Each URL is routed to its marketplace automatically; URLs on any other domain are skipped and listed in the run summary. Use product URLs to track specific products.", "items": { "type": "object", "required": [ "url" ], "properties": { "url": { "type": "string", "title": "URL of a web page", "format": "uri" } } } }, "marketplaces": { "title": "Marketplaces", "uniqueItems": true, "type": "array", "description": "Where to search. Leave empty to use every fully supported marketplace of the region. Akakçe and Cimri are price-comparison sites, not marketplaces: their rows are labelled sourceType = comparison_source. Amazon Türkiye is BETA: it often answers with a bot check, which is reported and never bypassed, and at most 20 of its product pages are read per run.", "items": { "type": "string", "enum": [ "trendyol_tr", "hepsiburada_tr", "n11_tr", "pazarama_tr", "ciceksepeti_tr", "pttavm_tr", "amazon_tr", "akakce_tr", "cimri_tr" ], "enumTitles": [ "Trendyol (TR)", "Hepsiburada (TR)", "n11 (TR)", "Pazarama (TR)", "Çiçeksepeti (TR)", "PttAVM (TR)", "Amazon Türkiye (TR, beta)", "Akakçe (TR, comparison site)", "Cimri (TR, comparison site)" ] }, "default": [ "trendyol_tr", "hepsiburada_tr", "n11_tr", "pazarama_tr", "ciceksepeti_tr", "pttavm_tr" ] }, "maxResultsPerMarketplace": { "title": "Results per marketplace and query", "minimum": 1, "maximum": 100, "type": "integer", "description": "How many products to take from each marketplace for each query (1-100). Sellers of one product do not count against this limit.", "default": 10 }, "compareAcrossMarketplaces": { "title": "Match and compare across marketplaces", "type": "boolean", "description": "Open each product page to read its barcode (GTIN), seller and stock, group identical products across marketplaces and add lowest price, price difference and cheapest marketplace to every safely matched row. Turn off for a faster listing-only run.", "default": true }, "includeSellers": { "title": "Include every seller", "type": "boolean", "description": "Return one row per seller of a product (where the marketplace shows other sellers) instead of only the featured seller. On comparison sites this returns every listed shop offer instead of only the cheapest.", "default": false }, "monitorKey": { "title": "Monitor key", "type": "string", "description": "Optional name of a tracking job, for example \"phones-daily\". Runs with the same key are compared with each other: the first run stores a baseline, later runs report price, stock and seller changes. Different keys never share history." }, "onlyChanged": { "title": "Return only what changed", "type": "boolean", "description": "After the baseline run, return only new offers and offers whose price, stock or seller changed. Unchanged offers are not written to the dataset and are not charged. Without a monitor key, a key is derived from the queries, URLs and marketplaces.", "default": false }, "priceChangeThresholdPercent": { "title": "Price change threshold (%)", "minimum": 0, "maximum": 100, "type": "integer", "description": "Ignore price changes smaller than this percentage (0 = report every change). Stock and seller changes are always reported.", "default": 0 }, "region": { "title": "Region", "enum": [ "TR" ], "type": "string", "description": "Market to work in. Version 1 supports Türkiye (TR). Prices are never compared across regions or currencies.", "default": "TR" } } }, "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 } } } } } } } } }}OpenAPI is a standard for designing and describing RESTful APIs, allowing developers to define API structure, endpoints, and data formats in a machine-readable way. It simplifies API development, integration, and documentation.
OpenAPI is effective when used with AI agents and GPTs by standardizing how these systems interact with various APIs, for reliable integrations and efficient communication.
By defining machine-readable API specifications, OpenAPI allows AI models like GPTs to understand and use varied data sources, improving accuracy. This accelerates development, reduces errors, and provides context-aware responses, making OpenAPI a core component for AI applications.
You can download the OpenAPI definitions for Marketplace Price Tracker & Comparison from the options below:
If you’d like to learn more about how OpenAPI powers GPTs, read our blog post.
You can also check out our other API clients: