Irmu
Marketplaces

Shopify API

Catalog, pricing and inventory data from any public storefront.

Start freePOST https://app.irmu.com/api/extract12 credits
Why

Why teams scrape Shopify stores

Shopify stores holds some of the most commercially useful public data on the web, and almost none of it is available through a stable official feed at the volume real products need. Rate limits, partner-only access and shifting page structures mean teams either give up on the source or maintain a fragile scraper that breaks every few weeks.

Millions of DTC brands run on Shopify, and each storefront exposes a consistent public catalog structure — which makes it the best source for competitive assortment and pricing work across the long tail.

Irmu removes the infrastructure question entirely. One authenticated request handles proxy selection, browser rendering, anti-bot challenges and retries, and AI Extract turns the resulting page into validated JSON against a schema you define. You get product_title, price, compare_at_price, variants, inventory, images, collections, vendor without writing or maintaining a single selector, and the same endpoint, quota and observability model you already use for every other source.

Use cases

What it powers

  • Assortment tracking

    Watch competitor catalogs expand and contract.

  • Promotion detection

    Catch discounts the moment compare-at prices change.

  • Inventory signals

    Infer demand from stock movement.

  • DTC market research

    Survey pricing across hundreds of brands in a category.

Data

Fields available

Everything below comes back typed and validated against your schema.

product_title

Product name

price

Current price

compare_at_price

Original price

variants

Variant options and prices

inventory

Availability by variant

images

Product imagery

collections

Collections the product belongs to

vendor

Brand or vendor field

Request

One call, no selectors

request.sh
curl -X POST https://app.irmu.com/api/extract \
  -H "Authorization: Bearer irmu_sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://examplestore.com/collections/all",
    "schema": {
      "product_title": "string",
      "price": "string",
      "compare_at_price": "string",
      "variants": "string",
      "inventory": "string",
      "images": "string"
    }
  }'
Response

Validated JSON

response.json
{
  "data": {
    "product_title": "Merino Crew",
    "price": 118,
    "compare_at_price": 148,
    "vendor": "Example"
  },
  "credits_used": 12,
  "status": 200
}
SDKs

Copy, paste, ship

import requests

res = requests.post(
    "https://app.irmu.com/api/extract",
    headers={"Authorization": "Bearer irmu_sk_live_..."},
    json={
        "url": "https://examplestore.com/collections/all",
        "schema": {
            "product_title": "string",
            "price": "string",
            "compare_at_price": "string",
            "variants": "string"
        },
    },
)

data = res.json()["data"]
print(data)
Pricing

Simple credits

Per product page

12 credits

Failed requests are retried automatically and never billed.

See full pricing →
FAQ

Shopify API questions

Start extracting Shopify stores data today

1,000 free credits every month. No card, no sales call.