Shopify Hidden API Spy - Zero-DOM Product & Price Intel avatar

Shopify Hidden API Spy - Zero-DOM Product & Price Intel

Pricing

from $0.01 / 1,000 results

Go to Apify Store
Shopify Hidden API Spy - Zero-DOM Product & Price Intel

Shopify Hidden API Spy - Zero-DOM Product & Price Intel

Extract every product, variant, price, image, and tag from any Shopify store via hidden JSON API. Zero DOM, zero browser — never breaks. Includes competitive intelligence: launch velocity, price range, and tag cloud analysis.

Pricing

from $0.01 / 1,000 results

Rating

4.7

(3)

Developer

Nguyễn Anh Duy

Nguyễn Anh Duy

Maintained by Community

Actor stats

0

Bookmarked

5

Total users

0

Monthly active users

17 hours ago

Last modified

Share

Shopify Hidden API Spy — Zero-DOM Product & Price Intelligence

Run on Apify Apify Marketplace GitHub Repo

Extract every product, variant, price, image, and tag from any Shopify store via hidden JSON API. Zero DOM, zero browser — never breaks. Includes sale detection (compareAtPrice/hasSale/discountPercent), collection filter, password detection, launch velocity, price range, tag cloud, theme detection, SEO metadata, installed apps, and review analytics at $0.01/1k results.


Why This Actor

Most Shopify scrapers use Puppeteer or Playwright to render pages, parse HTML classes, and extract data from DOM elements. The moment a store changes its theme or installs a layout app, those selectors break — costing you time and compute budget.

This Actor takes a different approach: it calls Shopify's internal JSON API (products.json) — the same endpoint Shopify itself uses to power every storefront on the internet. This API never changes, never breaks, and returns clean structured data regardless of theme, plugins, or design updates.

Features

  • Zero DOM / Zero Browser — pure fetch calls, no Puppeteer, no headless Chrome, no selectors to break
  • Hidden JSON API — taps into https://[store]/products.json?limit=250&page=N for raw product data
  • Password Protection Detection — checks x-shopify-stage header to detect password-protected stores
  • Bulk Processing — accepts a single URL or an array of stores for batch intelligence runs
  • Launch Velocity — counts products published in the last 30 days to measure store activity
  • Price Range Analysis — calculates min, max, and average variant prices across the entire store
  • Tag Cloud — aggregates and ranks the top 15 SEO tags used across all products
  • Product Type Breakdown — identifies the top 5 product categories by volume
  • Variant SKU & Inventory — per-variant SKU, price, inventory quantity, and availability status
  • Full Product Images — array of all product images plus main image shortcut
  • Product Descriptions — raw HTML body for AI pipelines and SEO analysis
  • Collection Mapping — maps each product to its store collections
  • Store Name Extraction — pulls store name from homepage <title> tag
  • Auto-Retry & Timeout — built-in retry with exponential backoff for transient failures
  • Theme Detection — identifies the Shopify theme (Dawn, Debut, etc.) via Shopify.theme HTML injection
  • SEO Metadata Extraction — retrieves meta description, og:title, og:description, og:image from homepage
  • Review Analytics — extracts aggregate rating and total review count from JSON-LD structured data
  • Installed Apps Detection — scans homepage for 20+ known Shopify app scripts (Yotpo, Klaviyo, Gorgias, etc.)
  • Store Metadata — fetches shop name, currency, country, locale via /meta.json
  • Tech Stack Detection — identifies CDN provider, payment gateways, analytics tools, live chat, newsletter services, review platforms, and loyalty programs
  • Proxy Fallback — transparently falls back to Apify residential proxy on 403/429

Use Cases

WhoWhy
E-commerce Competitor AnalystsMonitor competitor pricing, new product launches, and catalog size
DropshippersFind winning products by analyzing top-selling Shopify stores
Brand ManagersTrack brand presence, product mix, and SEO strategy of competitors
Market ResearchersBuild product catalogs and price databases at scale
AI/ML PipelinesFeed product data into recommendation engines or pricing models

Input

FieldTypeDefaultDescription
shopifyUrlstringSingle target Shopify store URL (e.g. gymshark.com)
shopifyUrlsarrayBulk list of store URLs for batch processing
maxProductsinteger500Max products to extract per store (250 per API page)

Either shopifyUrl or shopifyUrls must be provided.

Input Example

{
"shopifyUrl": "gymshark.com",
"maxProducts": 200
}

Bulk mode:

{
"shopifyUrls": ["gymshark.com", "allbirds.com", "warbyparker.com"],
"maxProducts": 500
}

Output

Each product record:

FieldTypeExample
idinteger6745123456789
titlestring"Glow Skin Serum V2"
handlestring"glow-skin-serum-v2"
vendorstring"Beauty Vendor"
productTypestring"Cosmetics"
bodyHtmlstring"<p>Product description...</p>"
createdAtstring"2026-05-10T08:30:00Z"
collectionsarray["Skincare", "Best Sellers"]
imagesarray["https://cdn.shopify.com/img1.jpg", "..."]
mainImagestringhttps://cdn.shopify.com/...
variantsarray[{title, sku, price, inventoryQuantity, available}]
totalVariantsinteger3
minPricenumber29.99
maxPricenumber39.99
tagsarray["serum", "skincare", "organic"]
isNewlyLaunched30Daysbooleantrue

A _summary entry is appended per store with aggregate intelligence:

FieldDescription
storeNameStore name extracted from homepage title
totalProductsNumber of products extracted
totalVariantsTotal variant count across all products
totalCollectionsNumber of collections found
globalMinPriceCheapest variant across the store
globalMaxPriceMost expensive variant
avgVariantPriceAverage price across all variants
newlyLaunched30DaysProducts published in the last 30 days
launchVelocity30DaysAverage new products per day (30-day window)
themeNameShopify theme name (e.g. Dawn, Debut)
themeRoleTheme role (main, mobile, etc.)
metaDescriptionHomepage meta description
ogTitleOpen Graph title tag
ogDescriptionOpen Graph description
ogImageOpen Graph image URL
overallRatingAggregate rating from JSON-LD structured data
totalReviewsTotal review count from JSON-LD
appsInstalledDetected Shopify apps (Yotpo, Klaviyo, etc.)
currencyStore currency from /meta.json
countryStore country from /meta.json
myshopifyDomainMyShopify domain from /meta.json
topTagsTop 15 SEO tags with frequency counts
topProductTypesTop 5 product types by volume
techStackDetected CDN, payment providers, analytics, newsletter, live chat, review, loyalty tools
proxyUsedWhether Apify proxy was needed to bypass rate limiting

How It Works

Shopify Store → HTTPS test → Detect password protection → products.json pagination → Collection mapping → Product Mapping → Intelligence Summary
  1. Normalizes the store domain
  2. Sends a test request to detect password protection or non-Shopify stores
  3. Paginates through products.json (250 products per page) with auto-retry until all products or maxProducts limit is reached
  4. Maps each product to its store collections via collections.json and smart_collections.json
  5. Enriches output with variant details (SKU, inventory, availability), full image array, and HTML body
  6. Computes competitive intelligence: launch velocity, price range, tag cloud, and product type stats

Pricing

$0.01 per 1,000 results. One result = one product record. Lightweight fetch-only architecture keeps compute costs near zero. A store with 500 products costs less than a cent to scrape.

Quick Start

curl -X POST https://api.apify.com/v2/acts/foxpink~shopify-hidden-api-spy/runs \
-H "Content-Type: application/json" \
-d '{
"shopifyUrl": "gymshark.com",
"maxProducts": 200
}' \
"https://api.apify.com/v2/acts/foxpink~shopify-hidden-api-spy/runs?token=YOUR_API_TOKEN"

Compatibility

  • 100% Node.js (18+)
  • No browser, no headless, no DOM
  • No external scraping libraries — pure fetch API
  • ESM (ECMAScript Modules)