nvNeuralVerge
E-commerce & Marketplaces

Shopify Product Data by Store & Handle — Variants, SKU, Stock

Send a store domain and a product handle (or product URL) and this source returns the product as structured data: title, brand, product type, tags, images, options, and every variant with its price, SKU, barcode, availability and stock fields.

Example response
{
  "session_id": "11111111-1111-1111-1111-111111111111",
  "kind": "shopify_product",
  "store_domain": "allbirds.com",
  "product": "mens-tree-runners",
  "human": "# Shopify product\n\n- **Store:** allbirds.com\n- **Product:** mens-tree-runners\n- **Proxy traffic:** 8.9 KB\n- **Title:** Men's Tree Runner - Jet Black (White Sole)\n- **Brand:** Allbirds\n- **Type:** Shoes\n- **Price:** 100 USD\n- **Available:** yes",
  "machine": {
    "store_domain": "allbirds.com",
    "product": {
      "id": 4870548979792,
      "alias": "mens-tree-runners",
      "title": "Men's Tree Runner - Jet Black (White Sole)",
      "url": "https://allbirds.com/products/mens-tree-runners",
      "description": "The Allbirds Tree Runner is a breathable and lightweight sneaker made with responsibly sourced eucalyptus tree fiber that feels silky smooth and cool on your skin. These shoes are perfect for everyday",
      "description_html": "<p>The Allbirds Tree Runner is a breathable and lightweight sneaker made with responsibly sourced eucalyptus tree fiber that feels silky smooth and cool on your skin. These shoes are perfect for every",
      "brand": "Allbirds",
      "product_type": "Shoes",
      "tags": [
        "allbirds::carbon-score => 4.52",
        "allbirds::cfId => color-mens-tree-runners-jet-black-white"
      ],
      "image": "https://cdn.shopify.com/s/files/1/1104/4168/files/TR3MJBW080_SHOE_LEFT_GLOBAL_MENS_TREE_RUNNER_JET_BLACK_WHITE.png?v=1751165486",
      "images": [
        "https://cdn.shopify.com/s/files/1/1104/4168/files/TR3MJBW080_SHOE_LEFT_GLOBAL_MENS_TREE_RUNNER_JET_BLACK_WHITE.png?v=1751165486",
        "https://cdn.shopify.com/s/files/1/1104/4168/files/TR3MJBW080_SHOE_BACK_GLOBAL_MENS_TREE_RUNNER_JET_BLACK_WHITE.png?v=1751165486"
      ],
      "options": [
        {
          "name": "Size",
          "position": 1,
          "values": [
            "8",
            "9"
          ]
        }
      ],
      "variants": [
        {
          "id": 33179624669264,
          "title": "8",
          "sku": "TR3MJBW080",
          "barcode": "843416184854",
          "price": 100,
          "list_price": null,
          "currency": "USD",
          "available": true,
          "inventory_quantity": 57,
          "inventory_policy": "deny",
          "inventory_management": "shopify",
          "fulfillment_service": "manual",
          "requires_shipping": true,
          "taxable": true,
          "option1": "8",
          "option2": null,
          "option3": null,
          "grams": 860,
          "weight": 1.896,
          "weight_unit": "lb",
          "position": 1,
          "image": null,
          "created_at": "2021-01-29T13:57:15-08:00",
          "updated_at": "2026-09-30T08:12:23-07:00"
        },
        {
          "id": 33179624702032,
          "title": "9",
          "sku": "TR3MJBW090",
          "barcode": "843416184861",
          "price": 100,
          "list_price": null,
          "currency": "USD",
          "available": false,
          "inventory_quantity": 0,
          "inventory_policy": "deny",
          "inventory_management": "shopify",
          "fulfillment_service": "manual",
          "requires_shipping": true,
          "taxable": true,
          "option1": "9",
          "option2": null,
          "option3": null,
          "grams": 935,
          "weight": 2.061,
          "weight_unit": "lb",
          "position": 2,
          "image": null,
          "created_at": "2021-01-29T13:57:15-08:00",
          "updated_at": "2026-09-30T08:12:23-07:00"
        }
      ],
      "currency": "USD",
      "price_min": 100,
      "price_max": 100,
      "available": true,
      "published_at": "2026-09-25T16:57:46-07:00",
      "created_at": "2021-01-29T13:57:15-08:00",
      "updated_at": "2026-09-30T08:12:23-07:00",
      "source": "json"
    },
    "proxy_traffic_bytes": 9067
  },
  "total_points": 5
}
You send
A Shopify store domain and a product handle or URL
You get back
Brand, type, tags, images, options and all variants with price, SKU, barcode, availability and stock
Coverage
Products on Shopify-powered storefronts with a public product page.
Price
5 pts — $5 per 1,000
Flat 5 points per returned product. A product that doesn't resolve is not billed.
Comparison

Ways to get this data

Three approaches teams use today, and where each one runs into trouble.

ApproachWhat it takesCostTrade-off
Opening the product page by handOpen the page and click through each optionFree, and slowFine for one product, useless across a competitor's range
Building a scraperWrite it, host it, and adapt it to each store's themeEngineering timeA maintenance commitment for something that isn't your product
NeuralVergeOne request per product, the same shape for every store$5 per 1,000, misses not billedReturns what the store publishes; stock fields can be null
Response

What you get back

Every field in the response shown above.

FieldTypeDescription
store_domainstringThe store the product was read from.
product.idnumberShopify product ID.
product.aliasstringProduct handle.
product.titlestringProduct title.
product.urlstringLink to the product page.
product.descriptionstringPlain-text description.
product.description_htmlstringDescription as HTML.
product.brandstringBrand or vendor.
product.product_typestringProduct type as set by the store.
product.tagsarrayTags attached to the product.
product.imagestringPrimary image URL.
product.imagesarrayAll image URLs.
product.optionsarrayOptions a buyer picks (e.g. Size), each with name, position and values.
product.variantsarrayOne row per variant: id, title, sku, barcode, price, list_price, currency, available, inventory fields, weight, option values and timestamps.
product.currencystringCurrency of the prices.
product.price_minnumberLowest variant price.
product.price_maxnumberHighest variant price.
product.availablebooleanWhether any variant is available.
product.published_atstringWhen the product was published.
product.created_atstringWhen the product was created.
product.updated_atstringWhen the product was last updated.
product.sourcestringHow the product record was read.
Integration

How to run it

The same lookup works from the app, the API, or as a tool an agent can call mid-task.

Both store_domain and product are required. product accepts a handle (the last part of the product URL) or the full URL. The store domain is the storefront's own domain, not a myshopify.com address.

curl -X POST https://api.neuralverge.ai/functions/v1/run-shopify-products \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "store_domain": "allbirds.com", "product": "mens-tree-runners" }'
Use cases

What teams use it for

Where this field shows up in an actual workflow.

Competitor price tracking

Track current and list price per variant for products you compete with.

Catalog matching

Match a store's SKUs and barcodes to your own product data.

Availability checks

See which variants are available at the moment of the request.

Product enrichment

Add brand, type, tags and images to a list of product URLs.

Coverage & limits

Coverage, freshness and limits

What this source covers, how fresh it is, and where it stops.

Coverage

Products on Shopify-powered storefronts with a public product page.

Freshness

Read at request time.

Handling

This source returns publicly visible product information, stamped with the store and handle it was read from and a session id you can trace.

What it will not do
  • —Stock fields (inventory_quantity, inventory_policy and others) are null where the store doesn't expose them.
  • —Prices and availability reflect the moment of the request and can change right after.
  • —Descriptions and tags are whatever the store set, including internal-looking tags.
FAQ

Questions, answered

It's the last part of a Shopify product URL, for example mens-tree-runners in /products/mens-tree-runners. You can also paste the full URL.

Related

Related sources

Try shopify product on your own data

One request format across every source in the catalog.

Get started