# Changelog of Shopify Scraper — Products API, Prices & Stock | $0.90/1k (`glasswing/shopify-products-scraper`) Actor

- **URL**: https://apify.com/glasswing/shopify-products-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/glasswing/shopify-products-scraper.md

## Changelog

All notable changes to Shopify Products Scraper are recorded here. The newest release is first.

Apify renders this as a Changelog tab on the Store page. Keeping it current is a
visible signal that the Actor is maintained, which feeds the quality score that
drives Store and MCP search ranking. Add an entry with every published build.

### 1.0.2 - 2026-09-29

- Docs: related Actors listed; input field descriptions clarified for AI agents.

### 1.0.1 - 2026-09-28

- A store that answers "slow down" (Shopify's HTTP 430) now gets the same polite back-off as a 429 instead of an immediate retry.
- A shop whose own page description mentions "captcha" or "access denied" is no longer mistaken for an anti-bot wall.

### 1.0.0 - 2026-09-28

First public release.

- Reads any Shopify store's public product feed (`/products.json`, collection feeds, `/products/<handle>.json`) with no login and no API key: products, variants, prices, compare-at prices, availability, SKUs, images, dates, store currency.
- Headless and redirecting stores are read through the store's own `.myshopify.com` address; the store currency is pinned on every request.
- Filters (in stock, price range, product type, vendor, tags, title keywords, updated since), per-store limits, product or variant rows.
- Every row carries `status`, so a missing record (`not_found`) and a failure (`error`) are told apart from real data. Only `ok` rows are charged.
- Records are validated against a schema before they are written, so an upstream change produces loud warnings instead of silently billing for empty rows.
- Callable with no arguments by an AI agent, which the input schema's defaults make safe.
