# Price Tracker API (`truefetch/price-tracker-api`) Actor

Search 23 ecommerce platforms across 33 supported countries and export current product prices, availability, ratings, seller signals, source links, and normalized product data.

- **URL**: https://apify.com/truefetch/price-tracker-api.md
- **Developed by:** [TrueFetch](https://apify.com/truefetch) (community)
- **Categories:** E-commerce, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

from $7.65 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — 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

> **Affiliate disclosure:** Apify links on this page may include referral parameters. If you sign up through them, TrueFetch may receive a commission at no extra cost to you.

**Product Price Tracker is an ecommerce product search and price monitoring API that searches 23 shopping platforms across 33 supported countries and returns source-linked, normalized records for developers and data teams.**

- **23 platform choices** cover global marketplaces, regional retailers, fashion stores, and country-specific shopping sites.
- **33 country values** route each search only to platforms that support the selected market.
- **58 dataset fields** cover product identity, price, availability, seller, fulfillment, source, and processing context.
- **4 public inputs** keep runs reproducible: 3 required values and 1 optional platform allow-list.

[**Run the smallest supported test**](https://apify.com/truefetch/product-price-tracker?fpr=aiagentapi) · [**View API**](https://apify.com/truefetch/product-price-tracker/api?fpr=aiagentapi)

The smallest accepted `max_results` value is 10. If a run stores 10 results, the FREE-tier Actor event charge is $0.09500: one $0.01000 start plus 10 results at $0.00850 each, excluding separate Apify platform usage.

### What does Product Price Tracker do?

Product Price Tracker searches public ecommerce results with a keyword, a country, a per-platform result limit, and an optional platform allow-list. It standardizes the returned records into one 58-field dataset so prices, currencies, ratings, availability, sellers, source links, and search positions can be reviewed without renaming columns for every marketplace.

This Actor returns a current search snapshot. It is not a historical price database, an alerting service, a product-matching engine, or an official API of any listed retailer or marketplace. Source coverage and optional values depend on what each public shopping surface returns at run time. When a source does not expose a value, the corresponding nullable field remains empty instead of being inferred.

### How do I run Product Price Tracker?

1. Open [Product Price Tracker in Apify Store](https://apify.com/truefetch/product-price-tracker?fpr=aiagentapi).
2. Enter a product keyword, choose a supported country, and set `max_results` between 10 and 10,000.
3. Leave `platforms` empty to use every compatible platform for that country, or select a smaller compatible set.
4. Start the run, then review or export the default dataset.

Use this smallest supported input to test one marketplace scenario:

```json
{
  "keyword": "Logitech MX Master 3S",
  "country": "United States",
  "max_results": 10,
  "platforms": ["Amazon", "eBay", "Walmart"]
}
```

`max_results` applies to each selected platform, not to the combined run. With three selected platforms and `max_results` set to 10, the run can therefore store up to 30 records when all three sources return enough publishable results.

### What data does Product Price Tracker return?

The default dataset exposes all 58 public fields below. Every field is nullable because shopping sources differ, while each stored item retains the same field set.

| Group | Dataset fields |
| --- | --- |
| Images and content | `main_image`, `image_urls`, `title`, `brand`, `badges`, `category`, `breadcrumbs`, `description`, `features` |
| Identifiers and attributes | `product_id`, `sku`, `gtin`, `mpn`, `model`, `specifications`, `manufacturer`, `origin`, `energy_class`, `included`, `condition`, `release_date`, `variant_group`, `variants` |
| Price and promotion | `price`, `was_price`, `unit_price`, `currency`, `price_text`, `discount_pct`, `discount_text`, `promo_text`, `installment_text` |
| Availability and demand | `stock_status`, `stock_text`, `sales_text`, `buy_limit` |
| Rating and seller | `rating`, `review_count`, `seller`, `seller_url`, `seller_score` |
| Fulfillment | `shipping_text`, `shipping_cost`, `delivery_text`, `pickup_text`, `return_text`, `return_days`, `warranty_text` |
| Source context | `platform`, `site`, `country`, `product_url`, `source_url`, `query`, `rank`, `sponsored` |
| Processing context | `processor`, `processed_at` |

This abbreviated item is illustrative and uses the same Logitech search scenario:

```json
{
  "title": "Logitech MX Master 3S Wireless Mouse",
  "brand": "Logitech",
  "price": 99.99,
  "currency": "USD",
  "stock_status": "in_stock",
  "rating": 4.7,
  "platform": "amazon",
  "site": "amazon.com",
  "country": "US",
  "product_url": "https://www.amazon.com/dp/EXAMPLE",
  "source_url": "https://www.amazon.com/s?k=Logitech+MX+Master+3S",
  "query": "Logitech MX Master 3S",
  "rank": 1,
  "processor": "https://apify.com/truefetch/product-price-tracker",
  "processed_at": "2026-07-21T12:00:00"
}
```

Use `product_url` for the product page and `source_url` for source verification. See the live [Output schema](https://apify.com/truefetch/product-price-tracker/output-schema?fpr=aiagentapi) before building a strict downstream contract.

### What inputs can I configure?

| Input | Type | Required | Accepted behavior | Example |
| --- | --- | --- | --- | --- |
| `keyword` | string | Yes | Non-empty product, model, brand, category, or search phrase | `Logitech MX Master 3S` |
| `country` | string | Yes | One of the 33 schema country names | `United States` |
| `max_results` | integer | Yes | 10-10,000 results per selected platform | `10` |
| `platforms` | array of strings | No | Compatible platform allow-list; empty uses all compatible platforms | `["Amazon", "eBay", "Walmart"]` |

The Actor does not substitute hidden values for missing required inputs. Platform names are validated, duplicates are ignored, and a selected platform must support the selected country. An empty `platforms` value means “all compatible platforms for this country,” not all 23 platforms regardless of market.

### What platforms and markets does Product Price Tracker cover?

The current local schema exposes 23 platforms and 33 countries. Compatibility is market-specific:

| Coverage | Platforms and markets |
| --- | --- |
| Broad marketplace coverage | Amazon: 22 country storefronts; AliExpress: 18 supported countries; eBay: 17 country marketplaces |
| Multi-market retail | MediaMarkt: 12 countries; ASOS: Australia, Canada, France, Germany, United Kingdom, United States |
| Two-market retail | Bol.com: Belgium and Netherlands; JB Hi-Fi: Australia and New Zealand |
| Single-market platforms | AJIO, Flipkart, Myntra, Nykaa, TradeIndia: India; Argos and John Lewis: United Kingdom; Big W: Australia; Blibli: Indonesia; Canadian Tire: Canada; Hepsiburada: Turkey; Kakaku and Rakuten: Japan; OTTO: Germany; Target and Walmart: United States |

The 33 accepted country names are Australia, Austria, Belgium, Brazil, Canada, Chile, Egypt, France, Germany, Hong Kong, Hungary, India, Indonesia, Ireland, Italy, Japan, Luxembourg, Malaysia, Mexico, Netherlands, New Zealand, Poland, Portugal, Saudi Arabia, Singapore, South Korea, Spain, Sweden, Switzerland, Turkey, United Arab Emirates, United Kingdom, and United States.

Coverage means the Actor has verified support for that platform-country pair. It does not promise identical fields, inventory, ranking, language, taxes, shipping, or availability across sources.

### Why use Product Price Tracker?

| Capability | Practical benefit |
| --- | --- |
| One input for multiple compatible stores | Compare public search surfaces without operating a separate run configuration for every marketplace. |
| Stable 58-field dataset | Keep analytics columns consistent while allowing unavailable source values to remain null. |
| Numeric and original price fields | Use `price` for analysis and `price_text` for source-level verification. |
| Product and search source links | Trace a record back to the product page and the originating search context. |
| Per-platform limits | Control the maximum records collected from each selected platform. |

The main trade-off is source dependence. A normalized schema improves comparison, but it cannot make every marketplace expose the same identifiers, seller details, fulfillment terms, or inventory signals.

The public Store surface was checked on 2026-07-21 and showed 2 total users, 1 monthly active user, and no reviews. Those figures describe the published Store history, not the current local code, and no testimonials or performance claims are inferred from them.

### Who is Product Price Tracker for?

Product Price Tracker is designed primarily for developers and data teams building retail research, price comparison, assortment review, shopping assistants, catalog enrichment, or scheduled market snapshots. Analysts can also use exported datasets when they need source-linked product records without maintaining different column names for each supported platform.

It is a poor fit when you need guaranteed SKU matching across stores, automatic price-change alerts, a complete historical price series, authenticated account data, checkout automation, or contractual real-time inventory. Those workflows require additional matching, storage, notification, or official partner capabilities outside this Actor.

### How can I use Product Price Tracker through the API or MCP?

The public Actor identifier is `truefetch/product-price-tracker`; the current platform ID is `QHfYkMSkD1L8ojBdc`. The [live API page](https://apify.com/truefetch/product-price-tracker/api?fpr=aiagentapi) provides generated SDK, OpenAPI, CLI, HTTP, and MCP surfaces.

Use the synchronous dataset endpoint for the shared scenario:

```bash
curl -X POST "https://api.apify.com/v2/acts/truefetch~product-price-tracker/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "keyword": "Logitech MX Master 3S",
    "country": "United States",
    "max_results": 10,
    "platforms": ["Amazon", "eBay", "Walmart"]
  }'
```

For MCP, Apify currently recommends Streamable HTTP with OAuth. Limit the server to this Actor when your client supports tool filtering:

```json
{
  "mcpServers": {
    "apify": {
      "url": "https://mcp.apify.com?tools=truefetch/product-price-tracker"
    }
  }
}
```

After authorization, ask the client to run `truefetch/product-price-tracker` with the same input:

```json
{
  "keyword": "Logitech MX Master 3S",
  "country": "United States",
  "max_results": 10,
  "platforms": ["Amazon", "eBay", "Walmart"]
}
```

Running Actors and accessing their datasets requires authentication. Follow the current [Apify MCP server documentation](https://docs.apify.com/integrations/mcp) rather than older SSE examples.

### How much does Product Price Tracker cost?

Product Price Tracker uses pay-per-event pricing. One start event is charged when a run begins, and one result event is charged for each record stored in the default dataset.

| Apify tier | Actor start | Price per stored result |
| --- | ---: | ---: |
| FREE | $0.01000 | $0.00850 |
| BRONZE | $0.01000 | $0.00822 |
| SILVER | $0.01000 | $0.00793 |
| GOLD | $0.01000 | $0.00765 |
| PLATINUM | $0.01000 | $0.00765 |
| DIAMOND | $0.01000 | $0.00765 |

For the smallest accepted limit, a FREE-tier run that stores 10 total results has an Actor event charge of $0.01000 + (10 x $0.00850) = **$0.09500**. If several platforms each return results, billing follows the total stored record count. Separate Apify platform usage may also apply. Check [live pricing](https://apify.com/truefetch/product-price-tracker/pricing?fpr=aiagentapi) because published prices can change.

### How does Product Price Tracker compare with alternatives?

| Option | Best fit | Trade-off |
| --- | --- | --- |
| Product Price Tracker | Keyword-led searches across several supported marketplaces with one normalized dataset | Source-dependent fields; no built-in history, alerts, or cross-store product matching |
| A single-store TrueFetch tracker | Deep focus on one marketplace or retailer | Narrower market coverage |
| An official retailer API or product feed | Contracted access, partner-specific fields, or authenticated workflows | Separate integration and eligibility requirements for each provider |
| Manual browsing and spreadsheets | Very small, occasional checks | Difficult to repeat consistently across markets and dates |

Choose this Actor when consistent source-linked search records matter more than a perfect one-to-one catalog match. Choose an official feed or a specialized matching service when SKU identity and contractual data guarantees are essential.

### What are the limits and troubleshooting steps?

| Symptom or limit | Explanation and next step |
| --- | --- |
| No compatible platforms | Confirm that `country` is one of the 33 exact schema names and that each selected platform supports it. |
| Fewer records than requested | `max_results` is a ceiling. A source may expose fewer publishable search results. |
| Empty optional fields | Check `source_url`; the marketplace may not expose that value for the item. |
| One source has no records | Rerun the smallest input for that platform and country, then include the run ID when reporting an issue. |
| Partial multi-platform coverage | Review the run status and logs by platform; a source-specific failure does not imply that other source records are invalid. |
| Apparently duplicated products | Records represent source listings and ranks. The Actor does not promise cross-platform product matching or global deduplication. |
| Unexpected cost | Count stored dataset items, confirm the number of selected platforms, and compare the run with the pricing table. |

The public Issues surface showed no visible open issue entries on 2026-07-21; that absence is not reliability proof. For a reproducible report, use one keyword, one country, one platform, `max_results: 10`, the run ID, and the expected versus observed result.

### Frequently asked questions

#### Does Product Price Tracker keep price history?

No. Each run returns a current public search snapshot. Use an Apify schedule and retain successive datasets if you want to build your own history.

#### Is `max_results` the total for the whole run?

No. It is the maximum per selected platform. Three platforms with a limit of 10 can produce up to 30 stored records.

#### Why is the output `country` a code?

The input uses a country name such as `United States`; output records use a country code such as `US` when the source relationship can be verified.

#### Are `product_url` and `source_url` duplicates?

No. `product_url` identifies the product detail page, while `source_url` preserves the source-returned or search-context link used for verification.

#### Does the Actor match the same product across marketplaces?

No. It returns normalized source listings but does not guarantee entity resolution, SKU matching, or cross-store deduplication.

#### Do I need marketplace credentials?

No marketplace credential is a public input. You need an Apify account and token only when calling the Actor through authenticated Apify API or MCP surfaces.

#### Can a run finish with partial results?

Yes. Public sources can differ in availability or fail independently. Treat the dataset and per-platform run status as the record of what completed.

#### Can I schedule recurring checks?

Yes. Apify can schedule Actor runs, but this Actor does not calculate changes or send price alerts by itself.

### Related TrueFetch Actors

- [Amazon Price Tracker](https://apify.com/truefetch/amazon-price-tracker?fpr=aiagentapi) focuses on Amazon country storefronts when you do not need other marketplaces.
- [eBay Price Tracker](https://apify.com/truefetch/ebay-price-tracker?fpr=aiagentapi) focuses on active marketplace listings, condition, shipping, and seller context.
- [Walmart Price Tracker](https://apify.com/truefetch/walmart-price-tracker?fpr=aiagentapi) focuses on Walmart US retail and marketplace search results.

### Support and last updated

Use the [Store page](https://apify.com/truefetch/product-price-tracker?fpr=aiagentapi), [API page](https://apify.com/truefetch/product-price-tracker/api?fpr=aiagentapi), and [Issues tab](https://apify.com/truefetch/product-price-tracker/issues/open?fpr=aiagentapi) for Actor-specific work. Community help is available in the [TrueFetch group](https://t.me/TrueFetch), and direct support is available through [AiAgentApi](https://t.me/AiAgentApi).

Last verified: **2026-07-21**. The current schema and validated Actor behavior control coverage claims; published Store statistics and indexed snippets are treated as older deployment evidence when they disagree.

[**Start the minimum valid run**](https://apify.com/truefetch/product-price-tracker?fpr=aiagentapi) · [**Open the generated API reference**](https://apify.com/truefetch/product-price-tracker/api?fpr=aiagentapi)

# Actor input Schema

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

Product keyword, model, brand, or query to search for

## `country` (type: `string`):

Country used to route ecommerce platforms and country sites

## `max_results` (type: `integer`):

Maximum number of product records to return per platform

## `platforms` (type: `array`):

Optional list of product platforms to search. Leave empty to use all supported platforms for the selected country.

## Actor input object example

```json
{
  "keyword": "iPhone",
  "country": "United States",
  "max_results": 10
}
```

# Actor output Schema

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

Product records returned by this actor with normalized fields and source URLs.

# 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 = {
    "keyword": "iPhone",
    "country": "United States",
    "max_results": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("truefetch/price-tracker-api").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 = {
    "keyword": "iPhone",
    "country": "United States",
    "max_results": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("truefetch/price-tracker-api").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 '{
  "keyword": "iPhone",
  "country": "United States",
  "max_results": 10
}' |
apify call truefetch/price-tracker-api --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/QHfYkMSkD1L8ojBdc/builds/QvXdDc3Z2V3xkbxfH/openapi.json
