Product Price & Stock Change Monitor (JSON-LD) avatar

Product Price & Stock Change Monitor (JSON-LD)

Pricing

Pay per usage

Go to Apify Store
Product Price & Stock Change Monitor (JSON-LD)

Product Price & Stock Change Monitor (JSON-LD)

Track price and availability changes on public product pages with JSON-LD. Persist baselines between runs and export structured results. No browser, proxy, or LLM API key required. Free validation build.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Tong Pu

Tong Pu

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Track price and availability changes on public product pages that include Product JSON-LD in their server HTML. Save an initial observation, run the same monitor again, and export the results or read the HTML report.

No CSS selectors, LLM API key, browser, or proxy setup is needed.

Quick start

  1. Add one or more public product URLs.
  2. Choose a monitor name you will reuse, such as demo-products.
  3. Run the Actor. The first successful check returns BASELINE.
  4. Run again with the same URLs and monitor name. The result is UNCHANGED or CHANGED compared with the previous successful check.

Try this public demonstration page:

{
"urls": ["https://scrapeme.live/shop/Bulbasaur/"],
"monitorId": "demo-products"
}

The demonstration page is operated by a third party and may change or become unavailable.

Input

FieldDescription
urlsRequired. Between 1 and 100 public HTTP(S) product URLs. Keep query parameters that select a product variant or currency.
monitorIdOptional name of up to 80 characters. Reuse it for comparisons across runs; use a new name to start a separate baseline. If omitted, the saved task ID is used when available, otherwise a default monitor is used.

Do not overlap runs that use the same monitor name. Start the next run after the previous one finishes. To check periodically, save a task and configure an Apify schedule with enough time between runs. This Actor produces results and a report; it does not send notifications by itself.

Results

Each processed URL produces one dataset row.

StatusMeaning
BASELINEFirst successful observation. There is no earlier value to compare, so changed is false.
UNCHANGEDThe tracked fields match the previous successful observation.
CHANGEDOne or more tracked fields changed. The changes array contains each field's old and new values.
UNSUPPORTEDThe page did not provide one usable, unambiguous Product JSON-LD object.
ERRORA request failed or was blocked by a network, robots, or safety limit. Read diagnostics for details.

Successful rows include the product name, SKU, price or price range, currency, availability, source URLs, and check time when those values are available. Prices are decimal strings, such as "63", to preserve the source value. Missing values are null; missing availability does not mean out of stock.

The tracked fields are name, product URL, SKU, exact price, minimum and maximum price, currency, and availability. Failed and unsupported checks keep the last successful baseline.

The Output tab provides:

  • Product checks: the dataset, with an Overview view and a Details and diagnostics view. Export it to JSON, CSV, or other formats supported by Apify.
  • HTML report: a readable summary and results table, stored as REPORT in the run's default key-value store.
  • Run summary (JSON): requested and processed counts, a stoppedEarly flag, and counts by status, stored as OUTPUT.

Baselines are kept separately from each run's report and scoped to the account, Actor, and monitor.

Supported pages and limits

The Actor reads the Product JSON-LD already present in the HTTP response. It supports ordinary Offer and AggregateOffer data, including unambiguous price ranges.

It does not run page JavaScript or log in. JavaScript-only product data, paywalls, CAPTCHA/anti-bot challenges, ambiguous product collections, and offers defined only by an unresolved @id reference are unsupported. It respects robots.txt and does not bypass access restrictions.

Checks are sequential. Each fetch has a 30-second overall timeout, a 2 MB response limit, and a limited number of redirects. UTF-8 HTML and uncompressed responses are supported. Start with a small list to confirm that your pages contain usable structured data.

Results reflect the merchant's structured markup. That markup can be stale or differ from a visible page or checkout price, so verify important changes against the source.

Price

This Actor has no rental, per-result, or pay-per-event fee. Apify platform usage, including compute and storage, is billed separately under your account's plan. Available free credits may cover small runs. Check your Apify usage and limits when choosing a schedule or increasing the number of URLs.