# Shopify Store Product Scraper

> Shopify Store Product Scraper is a paid API for AI agents from api.scrapeforagents.tech, paid per call via x402, $0.025/call, status unknown (last checked 2026-10-02).

Scrapes and returns structured product catalog data from one or more public Shopify stores, including titles, images, variants, and optional inventory details.

## Facts

- Endpoint: POST https://api.scrapeforagents.tech/v1/shopify?utm_source=zero.xyz
- Price: $0.025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/shopify-store-product-scraper-ee1e5f10
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_SfwOSBGF0wH96xHbk-Cfe

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability shopify-store-product-scraper-ee1e5f10 -d '<json body>'
```

Example prompt: Pull all the products from the Shopify store at gymshark.com — I want product titles, vendors, images, and handle slugs, and include inventory and variant details for each item.

## When to prefer this

Use this endpoint when you need structured product data from one or more Shopify storefronts without managing web scraping infrastructure yourself. It is ideal for competitive analysis, catalog aggregation, price monitoring, or building product feeds from public Shopify stores. It handles multi-store batching natively and charges only on successful, non-empty runs, making it cost-effective for exploratory scraping.

## Known failure modes

- Store is not a public Shopify store — returns empty result or error
- Store has no public product catalog exposed via Shopify's default routes
- Domain is unreachable or returns non-200 status — run is not charged
- maxItems or maxProducts set too low, resulting in partial catalog
- Rate limiting or bot protection on the target Shopify store blocks scraping
- Invalid hostname format in domains array causes parsing failure

## How this service works

Pay-per-call structured web data. Failed or empty runs are not charged.

## Output

Returns a JSON object with a count of matched products and an array of product rows, each containing the store URL, product title, handle, vendor, image URLs, featured image, and product ID. If includeInventoryDetails is true, each row also includes variant quantities, barcodes, inventory policy, quantity rules, and selling plans where publicly exposed by the store.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "runId": {
   "type": "string",
   "description": "Optional identifier copied to every product row as runId for pipeline tracking."
  },
  "domains": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Public Shopify store hostnames or URLs. Each store is scraped separately; URL paths are ignored."
  },
  "maxItems": {
   "type": "integer",
   "default": 0,
   "minimum": 0,
   "description": "Hard limit on product rows across all stores. Set 0 for no total limit."
  },
  "maxProducts": {
   "type": "integer",
   "default": 0,
   "minimum": 0,
   "description": "Maximum product rows per store. Set 0 to continue until its public catalogue ends."
  },
  "includeInventoryDetails": {
   "type": "boolean",
   "default": false,
   "description": "Request each product's public detail JSON to add reported variant quantities, barcodes, inventory policy, quantity rules, and selling plans when exposed. This adds one request per product."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "url": null,
    "store": null,
    "title": null,
    "handle": null,
    "vendor": null,
    "imageUrls": null,
    "productId": null,
    "featuredImage": null
   }
  ],
  "product": "shopify"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/shopify-store-product-scraper-ee1e5f10/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.scrapeforagents.tech](https://www.zero.xyz/host/api.scrapeforagents.tech/llms.txt)
