Shopify Products JSON Scraper - Variants, Barcode, Discounts avatar

Shopify Products JSON Scraper - Variants, Barcode, Discounts

Pricing

from $1.05 / 1,000 results

Go to Apify Store
Shopify Products JSON Scraper - Variants, Barcode, Discounts

Shopify Products JSON Scraper - Variants, Barcode, Discounts

Exports the public products JSON feed of any Shopify store or collection: prices, compare-at prices and discount %, variants with SKU, barcode (GTIN) and stock, images, tags, vendor and dates. Filter Shopify discounts, in-stock or keywords. Fast, no browser.

Pricing

from $1.05 / 1,000 results

Rating

0.0

(0)

Developer

Martin Petrov

Martin Petrov

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

2 days ago

Last modified

Security

Limited permissions

Share

Export every product from any Shopify store in seconds from its public products JSON feed: prices, original (compare-at) prices and discount %, variants with SKU, barcode and stock, images, tags, vendor, product type and dates. Works on whole stores or a single Shopify collection (for example /collections/sale).

Why use it

  • Any Shopify store, no login, no API key: reads the store's public product feed
  • Sales detection: compare-at price, discount %, onSale flag, and an "only discounted" filter
  • Variants: nested in the product, or one row per variant with SKU, barcode (GTIN), price and stock
  • Store currency detected automatically
  • Filters: in-stock only, on-sale only, keywords
  • Fast and cheap: up to 250 products per request, no browser

Use cases

Competitor research, dropshipping product research, price monitoring, catalog migration and backups, affiliate and deal sites, market analysis.

Output (one row per product)

FieldDescription
title, url, handle, vendor, productType, tagsProduct
price, maxPrice, compareAtPrice, discountPercent, onSale, currencyPricing
available, variantsCount, variants[]Stock and variants (id, title, SKU, price, compare-at, available, barcode, options)
image, images, descriptionMedia and text
createdAt, updatedAt, publishedAtDates

With oneRowPerVariant each variant is its own row with variantId, variantTitle, sku, barcode, price and available.

Input

  • storeUrls: store or collection URLs
  • maxProductsPerStore, onlyAvailable, onlyOnSale, keywords, oneRowPerVariant

Pricing

Pay per result: one result per product (or per variant row).

FAQ

How do I know a store is on Shopify? If store.com/products.json opens, it works. Many custom-domain stores are Shopify. Is stock count included? Shopify's public feed shows in stock / sold out per variant, not exact quantities.

Use it as an integration (chain it after another actor)

This actor can run automatically after any actor whose results contain a URL.

  1. Open the source actor in Apify Console and go to the Integrations tab.
  2. Click Add integration -> Actor, pick this actor and set Dataset to {{resource.defaultDatasetId}} (leave storeUrls empty). Set your other options and save.
  3. When the source run finishes, this actor reads its dataset and processes every row. The field is detected automatically; set Dataset field if your column has another name.

You can also start it by hand with datasetId (pick a dataset or paste its ID) to process an existing dataset.

Good sources to chain from:

  • compass/crawler-google-places (Google Maps Scraper) filtered to shops
  • martin10291/website-tech-stack-detector (sites that run Shopify)