All platforms25 Shopify endpoints

Shopify API. Public storefronts, one JSON shape.

Products, variants, collections, pages, articles, search, reviews and store details from public Shopify storefronts. Name the domain, get JSON.

No credit card requiredRead the API docs
  • Public Shopify stores
  • 25 read-only routes
  • 1 credit per request
  • Failed requests aren't charged
99.8% uptime#3 Product of the Day3,200+ developers

Teams running monitoring, research, and enrichment pipelines

Shopify data as JSON. You build the product.

Live Shopify data in one response shape, with platform changes handled for you.

Shopify, plus every other platform

One key and one response envelope for Shopify and 56 more platforms.

Pricing you can reason about

One request, one credit. Know how far your balance will go before you run your next batch.

Live data on every request

Fetch public data when you ask for it.

Nothing to maintain

We handle platform changes and breakages.

Built for production jobs

Run concurrent workloads with explicit statuses and request IDs.

Regular jobs. Better rates.

Running lookups every month? Get lower per-credit rates with a monthly plan. For occasional projects, choose pay as you go.

Never expires

What Shopify data can you get?

25 endpoints, one API key. Every response comes back as live JSON in the same envelope.

Browse all 25 Shopify endpoints

Store

Products

Collections

Discover

Content

Reviews

Use cases

What teams build with Shopify data

Monitoring, enrichment, research and content workflows on Shopify data, on the same API as every other platform.

What you can build

Track competitor stores

Follow products, prices and availability on public stores.

Research a catalogue

Read collections, products and published reviews.

How it works

Your first request in three steps.

Use TypeScript or your automation tool of choice.

Sources

+ 51 more platforms

One request

Social Fetch API

GET/v1/tiktok/profiles/charlidamelio

x-api-key: sk_live_••••••••

1 request · 1 credit

Same JSON shape

response.json200 OK
{
  "data": {
    "lookupStatus": "found",
    "profile": {
      "platform": "tiktok",
      "handle": "charlidamelio",
      "displayName": "charli d’amelio",
      "verified": true
    },
    "metrics": {
      "followers": 160263648
    }
  }
}
  1. Step 1

    Create your free account

    Get an API key with 100 requests included.

  2. Step 2

    Choose an endpoint

    Pass a username, URL, keyword, or post ID.

  3. Step 3

    Get clean JSON

    Use the response immediately or send it into your pipeline.

Works with your stack

Code, automate, or connect your AI.

Explore integrations

Pricing

Social data, priced simply.

Start with 100 free credits. Monthly plans give you predictable volume and lower per-request rates.

Starter

$29.00

18,000credits

  • Top up from $1.61 / 1k if you run out
  • Up to 25 monitors
Most popular

Growth

$79.00

50,000credits

  • Top up from $1.58 / 1k if you run out
  • 5 team seats
  • Up to 100 monitors

Scale

$225.00

150,000credits

  • Top up from $1.50 / 1k if you run out
  • 25 team seats
  • Up to 250 monitors
  • Cancel anytime
  • 30-day money-back guarantee
  • Price locked while you stay

Need 1M+ credits, invoicing, or volume rates? Talk to us

Trust signals

DevHunt

Product Hunt

Uneed

Customers

Teams building on Social Fetch.

“Our TikTok and Instagram scrapers broke constantly. Social Fetch took us off that rotation — we ship product again.”

Daniel Reeve · Founder, Social Crow
  • “Transcripts at volume from one endpoint. No broken scrapers for our small team to maintain.”

    Marcus Lin · Founder, Voice Gecko
  • “Live profile data on every request. We never flag accounts from a stale cache.”

    Hannah Webb · Founder, Scam Finder
  • “Heavy concurrent load, no rate limits to negotiate. The rare API I haven't wrapped in retries.”

    Owen Pritchard · Founder, IP Flare

Shopify API: common questions

Is there a Shopify API for public storefront data?

Yes. Social Fetch has 25 Shopify routes under /v1/shopify for products, variants, collections, search, suggestions, pages, blogs, articles, reviews, pickup availability and store details. Authenticate with your Social Fetch API key in x-api-key.

How do I name the store?

Pass the domain as store: allbirds.com, www.allbirds.com, weareallbirds.myshopify.com or a full URL. A full URL is reduced to its host. Only public storefront hosts are accepted.

What does lookupStatus mean?

found means the lookup succeeded. not_found means the store or entity does not exist or is not a Shopify store. private means the storefront is password-protected. restricted means it is paused or frozen. HTTP 200 only means the request finished, so branch on lookupStatus.

How do I page through a large catalogue?

Read data.page.hasMore and pass data.page.nextCursor back as cursor with the same filters. Lists also return truncated when they stop at the 25,000-item list limit; narrow the range with createdBefore or createdAfter to reach the rest.

What does a product response include?

On found, product carries id, handle, title, vendor, product type, tags, description, options, variants, images, media, collections, SEO, price range and compare-at range. variants include SKU, barcode, options, weight, price and an image. inventoryQuantity and inventoryPolicy are filled only when the store exposes them; stockAvailable false means the fields are null for that answer, not that stock is zero.

Can I get product reviews and store reviews?

The review routes return the reviews the storefront publishes through its review widget. When the store has no supported widget, reviewsAvailable is false and reviews is empty. A store that mounts its widget only on product pages can still return store-wide reviews as unavailable. Review rows can belong to related products, so check each row's productHandle when you need the requested product. Sorts are requests, not guarantees: a widget that does not support a sort keeps its own order.

Can I read metafields?

Yes, for metafields the merchant exposes to the storefront. Call GET /v1/shopify/products/{handle}/metafields and optionally pass keys such as reviews.rating or global.title_tag. An empty list means the store did not expose those fields, not that the product has none.

Do you return stock levels and pickup availability?

Stock fields are best effort: exact inventoryQuantity, inventoryPolicy and inventoryManagement appear when the store exposes them. Pickup availability returns locations with available and pickUpTime for each variant, and the route does not require a store login.

What if the store is password-protected or paused?

The response is still HTTP 200 with lookupStatus private or restricted and the operation's empty payload. A store that is not a Shopify store returns not_found. These are completed lookups and are billed as the operation documents; confirm every response with meta.creditsCharged.

How much does the Shopify API cost?

Most routes charge 1 credit per completed request, and the batch route charges one credit per requested handle, up to 25. Each page is billed separately. Check meta.creditsCharged on every response. New accounts start with 100 free credits.

Can I use the Shopify routes from agents or MCP?

Yes. Every Shopify route is a typed MCP tool and is reachable through Ask (POST /v1/ask) in plain English. Use the typed routes for production jobs.

The Shopify API in detailHow the Shopify routes work, what they cost, and how they differ from the official API.

Why teams use Social Fetch for Shopify

Social Fetch exposes 25 read-only routes under /v1/shopify, and every one starts with a store query: allbirds.com, www.allbirds.com, weareallbirds.myshopify.com or a full URL. The same account covers public Shopify storefronts without a store login or an app install. A storefront that is unavailable returns a temporary error and is not charged.

Catalogue routes cover products with variants, options, images, collections and price ranges; a single product also gets stock fields where the store exposes them. Collection routes return the store's filter facets with counts, so you can build the same category pages the store shows. Search returns products, articles and pages in one answer, with the store's own totalCount and facets.

Content routes cover pages, blog lists and articles with full text. Store routes cover identity and market settings, policy text, locations, navigation menus, redirects, sitemaps and pickup availability. Review routes return the product or store reviews the storefront publishes.

Every response uses the { data, meta } envelope and starts with data.lookupStatus. A store or entity that does not exist comes back as not_found, a password-protected storefront as private, and a paused or frozen store as restricted, all with HTTP 200. Lists page with page.nextCursor and page.hasMore, and meta.creditsCharged is the billing source of truth.

How to call the Shopify API

  1. 1. Create an API key

    Sign up at Social Fetch and copy a key (sfk_…). New accounts get 100 free credits, enough to try every Shopify route on a few stores.

  2. 2. Pick a store and route

    Use the store's domain, for example GET /v1/shopify/products?store=allbirds.com or GET /v1/shopify/products/mens-wool-runners?store=allbirds.com. Send x-api-key on every request.

  3. 3. Branch, page and bill

    Check data.lookupStatus before storing a row, keep requesting with page.nextCursor while page.hasMore is true, and bill from meta.creditsCharged.

What each Shopify route returns

  • Products with variants, options, SKUs, barcodes, prices, images, SEO and collection membership.
  • Collection lists and a single collection with its filter facets and product counts.
  • Store search across products, articles and pages, plus a separate suggestion route.
  • Pages and blog articles with plain text, HTML, authors, tags and comments.
  • Store identity, market and payment settings, policies with full text, locations and menus.
  • Sitemap index and typed child sitemaps, plus the store's redirect table.
  • Product and store reviews with ratings, media and merchant replies where the store publishes them.
  • Pickup availability by variant and location for one product.

How much does the Shopify API cost?

Most Shopify routes charge 1 credit per completed request, and the product batch route charges one credit for each requested handle, up to 25. Each page of a list is its own request. Credits never expire on pay-as-you-go packs, and meta.creditsCharged on every response is the billing source of truth.

Social Fetch vs the official Shopify API

Shopify's own Admin API is built for the store's owner: it needs an app, credentials and permissions on that store. Social Fetch returns public storefront data instead, so you can start with a domain and no merchant setup. The trade is scope: the Admin API can read private store data, while these routes return what the public storefront publishes, and some fields are null when the store does not expose them.

Pull your first Shopify data.

Run a live Shopify request in the playground. 100 free credits, no card, JSON back in seconds.

No credit cardSign up in 30 seconds withGoogleGitHub