Shopify Products Scraper — Catalog & Store Leads
Pricing
from $2.00 / 1,000 products
Shopify Products Scraper — Catalog & Store Leads
Scrape any Shopify store catalog via public products.json: titles, prices, variants, images and vendors. Multi-store batch plus store summary for ecommerce leads and competitor research. No browser required on open stores.
Pricing
from $2.00 / 1,000 products
Rating
0.0
(0)
Developer
Noah Adler
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
Shopify Products & Store Leads Scraper — Catalog Export
Shopify products scraper / Shopify store leads API to extract any public Shopify store catalog: product titles, prices, variants, images, vendors and product types — plus an optional store summary for ecommerce lead gen and competitor research.
Ideal if you need a Shopify catalog export, Shopify products.json scraper, multi-store ecommerce leads, or price monitoring across Shopify merchants.
For users
Most Shopify stores expose/products.jsonwithout proxy.
If you get 403, turn Apify RESIDENTIAL ON and retry.
Sites that are not Shopify (or hide the catalog) return 404 — that is expected.
Why this Actor: Multi-store batch · Public API (no Admin token) · Variants + summary · Collection filter · Ecommerce-ready schema
Table of contents
- What this Actor does
- What you get
- Features
- Input
- Output examples
- Output fields
- Quick start (API)
- Use cases
- Limitations
- FAQ
- Keywords
What this Actor does
| Step | Action |
|---|---|
| 1 | Normalize each store URL / domain |
| 2 | Call public GET /products.json (or /collections/{handle}/products.json) |
| 3 | Paginate (limit=250, page=N) until maxProducts |
| 4 | Push product rows + optional store_summary |
What you get
Products
- Title, handle, vendor, product type, tags
- Min / max price across variants
- Availability, image, product URL
- Optional nested
variants(SKU, options, prices)
Store summary
- Product count scraped
- Top vendors & product types
- Price band for lead scoring
Features
| Capability | Detail |
|---|---|
| Any Shopify storefront | Custom domain or *.myshopify.com |
| Batch stores | Multiple URLs in one run |
| Collection filter | Optional collectionHandle |
| No Admin token | Uses public storefront JSON |
| Lead-friendly | store_summary row per store |
Input
| Field | Required | Description |
|---|---|---|
storeUrls | Yes | Store URLs or domains |
collectionHandle | No | e.g. sale, mens |
maxProducts | No | Per store (default 100) |
includeVariants | No | Default true |
includeStoreSummary | No | Default true |
proxyConfiguration | No | RESIDENTIAL if 403 |
Example
{"storeUrls": ["https://allbirds.com", "gymshark.com"],"maxProducts": 50,"includeVariants": true,"includeStoreSummary": true}
Output examples
Product
{"recordType": "product","storeDomain": "allbirds.com","productId": "1234567890","handle": "wool-runners","title": "Wool Runners","vendor": "Allbirds","priceMin": 98.0,"priceMax": 98.0,"available": true,"variantsCount": 8,"productUrl": "https://allbirds.com/products/wool-runners"}
Store summary
{"recordType": "store_summary","storeDomain": "allbirds.com","productCount": 50,"vendors": ["Allbirds"],"productTypes": ["Shoes", "Apparel"],"priceMin": 9.0,"priceMax": 168.0}
Output fields
| Type | Fields |
|---|---|
product | productId, handle, title, vendor, productType, tags, priceMin, priceMax, available, variantsCount, imageUrl, productUrl, variants? |
store_summary | productCount, vendors, productTypes, priceMin, priceMax |
Quick start (API)
from apify_client import ApifyClientclient = ApifyClient("<YOUR_TOKEN>")run = client.actor("YOUR_USERNAME/shopify-products-store-leads").call(run_input={"storeUrls": ["https://allbirds.com"],"maxProducts": 40,"includeStoreSummary": True,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
Use cases
- Competitor catalog & price monitoring
- Ecommerce lead lists (store + assortiment size)
- Dropship / supplier product discovery
- Brand assortment audits across markets
Limitations
- Only works on Shopify storefronts with public
products.json. - Password-protected / headless-custom stores may block the endpoint.
- Currency is often missing on public JSON (prices are store-default).
- Respect each merchant’s Terms of Service and robots policy.
FAQ
Is this the Admin API?
No — it uses the public storefront products.json (no access token).
403 / blocked?
Enable Apify RESIDENTIAL proxy and retry.
404?
Domain is likely not Shopify, or the catalog endpoint is disabled.
One collection only?
Set collectionHandle (e.g. bestsellers).
Keywords
shopify scraper, shopify products, shopify products.json, shopify store leads, shopify catalog export, ecommerce product scraper, shopify competitor research, shopify variants api