nvNeuralVerge
E-commerce & Marketplaces

Shopify Store Products — List a Store's Full Catalog

Send a store domain and this source returns the store's products as data, with variants, prices and availability for each. It lists the catalog; it is not a keyword search.

Example response
{
  "session_id": "11111111-1111-1111-1111-111111111111",
  "kind": "shopify_products_search",
  "store_domain": "allbirds.com",
  "max_items": 2,
  "start_page": 1,
  "partial": false,
  "human": "# Shopify products (store listing)\n\n- **Store:** allbirds.com\n- **Starting page:** 1\n- **Max items:** 2\n- **Records returned:** 2\n- **Proxy traffic:** 52.8 KB",
  "machine": {
    "store_domain": "allbirds.com",
    "total_items": 2,
    "first_item": {
      "id": 7340901859408,
      "alias": "womens-allbirds-flip-flop-dusty-pink",
      "title": "Women's Allbirds Flip Flop - Dusty Pink",
      "url": "https://allbirds.com/products/womens-allbirds-flip-flop-dusty-pink",
      "description": "Sun on your feet. Comfort underneath. Light, easy, and made for warm weather, these flip flops bring everyday comfort to sunny days, beach walks, and everything in between. Just slip them on and go.",
      "description_html": "<p>Sun on your feet. Comfort underneath. Light, easy, and made for warm weather, these flip flops bring everyday comfort to sunny days, beach walks, and everything in between. Just slip them on and go",
      "brand": "Allbirds",
      "product_type": "Shoes",
      "tags": [
        "allbirds::carbon-score => undefined",
        "allbirds::cfId => color-a4d5d0f6620dc304306f503bf67bc5f9"
      ],
      "image": "https://cdn.shopify.com/s/files/1/1104/4168/files/A12513_26Q2_Allbirds-Flip-Flop-Dusty-Pink_PDP_LEFT.png?v=1774646345",
      "images": [
        "https://cdn.shopify.com/s/files/1/1104/4168/files/A12513_26Q2_Allbirds-Flip-Flop-Dusty-Pink_PDP_LEFT.png?v=1774646345",
        "https://cdn.shopify.com/s/files/1/1104/4168/files/A12513_26Q2_Allbirds-Flip-Flop-Dusty-Pink_PDP_BACK.png?v=1774646345"
      ],
      "options": [
        {
          "name": "Size",
          "position": 1,
          "values": [
            "5",
            "6"
          ]
        }
      ],
      "variants": [
        {
          "id": 42146889039952,
          "title": "5",
          "sku": "A12513W050",
          "barcode": null,
          "price": 25,
          "list_price": 50,
          "currency": "USD",
          "available": false,
          "inventory_quantity": null,
          "inventory_policy": null,
          "inventory_management": null,
          "fulfillment_service": null,
          "requires_shipping": true,
          "taxable": true,
          "option1": "5",
          "option2": null,
          "option3": null,
          "grams": 455,
          "weight": null,
          "weight_unit": null,
          "position": 1,
          "image": null,
          "created_at": "2026-03-27T14:03:50-07:00",
          "updated_at": "2026-09-30T08:12:12-07:00"
        },
        {
          "id": 42146889072720,
          "title": "6",
          "sku": "A12513W060",
          "barcode": null,
          "price": 25,
          "list_price": 50,
          "currency": "USD",
          "available": false,
          "inventory_quantity": null,
          "inventory_policy": null,
          "inventory_management": null,
          "fulfillment_service": null,
          "requires_shipping": true,
          "taxable": true,
          "option1": "6",
          "option2": null,
          "option3": null,
          "grams": 492,
          "weight": null,
          "weight_unit": null,
          "position": 2,
          "image": null,
          "created_at": "2026-03-27T14:03:50-07:00",
          "updated_at": "2026-09-30T08:12:12-07:00"
        }
      ],
      "currency": "USD",
      "price_min": 25,
      "price_max": 25,
      "available": true,
      "published_at": "2026-09-25T16:58:13-07:00",
      "created_at": "2026-03-27T14:03:50-07:00",
      "updated_at": "2026-09-30T08:12:12-07:00",
      "source": "json"
    },
    "items": [
      {
        "id": 7340901859408,
        "alias": "womens-allbirds-flip-flop-dusty-pink",
        "title": "Women's Allbirds Flip Flop - Dusty Pink",
        "url": "https://allbirds.com/products/womens-allbirds-flip-flop-dusty-pink",
        "description": "Sun on your feet. Comfort underneath. Light, easy, and made for warm weather, these flip flops bring everyday comfort to sunny days, beach walks, and everything in between. Just slip them on and go.",
        "description_html": "<p>Sun on your feet. Comfort underneath. Light, easy, and made for warm weather, these flip flops bring everyday comfort to sunny days, beach walks, and everything in between. Just slip them on and go",
        "brand": "Allbirds",
        "product_type": "Shoes",
        "tags": [
          "allbirds::carbon-score => undefined",
          "allbirds::cfId => color-a4d5d0f6620dc304306f503bf67bc5f9"
        ],
        "image": "https://cdn.shopify.com/s/files/1/1104/4168/files/A12513_26Q2_Allbirds-Flip-Flop-Dusty-Pink_PDP_LEFT.png?v=1774646345",
        "images": [
          "https://cdn.shopify.com/s/files/1/1104/4168/files/A12513_26Q2_Allbirds-Flip-Flop-Dusty-Pink_PDP_LEFT.png?v=1774646345",
          "https://cdn.shopify.com/s/files/1/1104/4168/files/A12513_26Q2_Allbirds-Flip-Flop-Dusty-Pink_PDP_BACK.png?v=1774646345"
        ],
        "options": [
          {
            "name": "Size",
            "position": 1,
            "values": [
              "5",
              "6"
            ]
          }
        ],
        "variants": [
          {
            "id": 42146889039952,
            "title": "5",
            "sku": "A12513W050",
            "barcode": null,
            "price": 25,
            "list_price": 50,
            "currency": "USD",
            "available": false,
            "inventory_quantity": null,
            "inventory_policy": null,
            "inventory_management": null,
            "fulfillment_service": null,
            "requires_shipping": true,
            "taxable": true,
            "option1": "5",
            "option2": null,
            "option3": null,
            "grams": 455,
            "weight": null,
            "weight_unit": null,
            "position": 1,
            "image": null,
            "created_at": "2026-03-27T14:03:50-07:00",
            "updated_at": "2026-09-30T08:12:12-07:00"
          },
          {
            "id": 42146889072720,
            "title": "6",
            "sku": "A12513W060",
            "barcode": null,
            "price": 25,
            "list_price": 50,
            "currency": "USD",
            "available": false,
            "inventory_quantity": null,
            "inventory_policy": null,
            "inventory_management": null,
            "fulfillment_service": null,
            "requires_shipping": true,
            "taxable": true,
            "option1": "6",
            "option2": null,
            "option3": null,
            "grams": 492,
            "weight": null,
            "weight_unit": null,
            "position": 2,
            "image": null,
            "created_at": "2026-03-27T14:03:50-07:00",
            "updated_at": "2026-09-30T08:12:12-07:00"
          }
        ],
        "currency": "USD",
        "price_min": 25,
        "price_max": 25,
        "available": true,
        "published_at": "2026-09-25T16:58:13-07:00",
        "created_at": "2026-03-27T14:03:50-07:00",
        "updated_at": "2026-09-30T08:12:12-07:00",
        "source": "json"
      },
      {
        "id": 7258385809488,
        "alias": "mens-canvas-runner-nz",
        "title": "Men's Canvas Runner NZ - Deep Navy Stripes (Blizzard Sole)",
        "url": "https://allbirds.com/products/mens-canvas-runner-nz",
        "description": null,
        "description_html": "<p> </p>",
        "brand": "Allbirds",
        "product_type": "Shoes",
        "tags": [
          "allbirds::carbon-score => undefined",
          "allbirds::cfId => color-1cef6be0d20d9c20d604095208afc4c8"
        ],
        "image": "https://cdn.shopify.com/s/files/1/1104/4168/files/A12500_26Q1_Runner-NZ-Canvas-Stripes-Deep-Navy-Blizzard-Sole_PDP_LEFT.png?v=1774550585",
        "images": [
          "https://cdn.shopify.com/s/files/1/1104/4168/files/A12500_26Q1_Runner-NZ-Canvas-Stripes-Deep-Navy-Blizzard-Sole_PDP_LEFT.png?v=1774550585",
          "https://cdn.shopify.com/s/files/1/1104/4168/files/A12500_26Q1_Runner-NZ-Canvas-Stripes-Deep-Navy-Blizzard-Sole_PDP_BACK.png?v=1774550584"
        ],
        "options": [
          {
            "name": "Size",
            "position": 1,
            "values": [
              "8",
              "8.5"
            ]
          }
        ],
        "variants": [
          {
            "id": 41884546990160,
            "title": "8",
            "sku": "A12498M080",
            "barcode": null,
            "price": 100,
            "list_price": null,
            "currency": "USD",
            "available": false,
            "inventory_quantity": null,
            "inventory_policy": null,
            "inventory_management": null,
            "fulfillment_service": null,
            "requires_shipping": true,
            "taxable": true,
            "option1": "8",
            "option2": null,
            "option3": null,
            "grams": 715,
            "weight": null,
            "weight_unit": null,
            "position": 1,
            "image": null,
            "created_at": "2025-12-04T12:15:25-08:00",
            "updated_at": "2026-09-30T08:12:12-07:00"
          },
          {
            "id": 41884547022928,
            "title": "8.5",
            "sku": "A12498M085",
            "barcode": null,
            "price": 100,
            "list_price": null,
            "currency": "USD",
            "available": true,
            "inventory_quantity": null,
            "inventory_policy": null,
            "inventory_management": null,
            "fulfillment_service": null,
            "requires_shipping": true,
            "taxable": true,
            "option1": "8.5",
            "option2": null,
            "option3": null,
            "grams": 726,
            "weight": null,
            "weight_unit": null,
            "position": 2,
            "image": null,
            "created_at": "2025-12-04T12:15:25-08:00",
            "updated_at": "2026-09-30T08:12:12-07:00"
          }
        ],
        "currency": "USD",
        "price_min": 100,
        "price_max": 100,
        "available": true,
        "published_at": "2026-09-25T16:58:09-07:00",
        "created_at": "2025-12-04T12:15:25-08:00",
        "updated_at": "2026-09-30T08:12:12-07:00",
        "source": "json"
      }
    ],
    "source": "json",
    "proxy_traffic_bytes": 54116
  },
  "total_points": 2
}
You send
A Shopify store domain
You get back
The store's products with options, variants, prices and availability
Coverage
Products published on a Shopify-powered storefront.
Price
1 point per returned product, up to 500 per request — $1 per 1,000
Billed per record actually returned, capped by max_items. A store that returns nothing costs nothing.
Comparison

Ways to get this data

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

ApproachWhat it takesCostTrade-off
Browsing the store by handPage through every collection and copy detailsFree, and slowA store with hundreds of products is a day of copying
Building a scraperWrite it, host it, and adapt it to each storeEngineering timeA maintenance commitment for something that isn't your product
NeuralVergeOne request per store, max_items and start_page as parameters$1 per 1,000, misses not billedLists the catalog only; to look for a keyword, filter the result yourself
Response

What you get back

Every field in the response shown above.

FieldTypeDescription
store_domainstringThe store the catalog was read from.
total_itemsnumberHow many products were returned in this batch (capped by max_items).
first_itemobjectThe first product, repeated outside the list for quick checks.
items[].idnumberShopify product ID.
items[].aliasstringProduct handle.
items[].titlestringProduct title.
items[].urlstringLink to the product page.
items[].descriptionstringPlain-text description.
items[].description_htmlstringDescription as HTML.
items[].brandstringBrand or vendor.
items[].product_typestringProduct type as set by the store.
items[].tagsarrayTags attached to the product.
items[].imagestringPrimary image URL.
items[].imagesarrayAll image URLs.
items[].optionsarrayOptions a buyer picks (e.g. Size), each with name, position and values.
items[].variantsarrayOne row per variant: id, sku, barcode, price, list_price, currency, available, inventory fields, weight and timestamps.
items[].currencystringCurrency of the prices.
items[].price_minnumberLowest variant price.
items[].price_maxnumberHighest variant price.
items[].availablebooleanWhether any variant is available.
items[].published_atstringWhen the product was published.
items[].updated_atstringWhen the product was last updated.
sourcestringHow the catalog 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.

store_domain is the only required field. max_items caps the product count (up to 500, defaults to 25) and sets what you're billed for; start_page lets you continue from a later page. This lists the catalog and does not take a keyword.

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

What teams use it for

Where this field shows up in an actual workflow.

Competitor range analysis

See a competitor's full range, product types and price points.

Sale tracking

Compare price with list_price across the catalog to spot discounting.

Supplier catalogs

Pull a supplier's catalog into a table for sourcing.

Handle discovery

Collect product handles to run Shopify product on the ones you care about.

Coverage & limits

Coverage, freshness and limits

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

Coverage

Products published on a Shopify-powered storefront.

Freshness

Read at request time.

Handling

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

What it will not do
  • —This lists the catalog. It does not search by keyword.
  • —Inventory quantities are null where the store doesn't expose them.
  • —Prices and availability reflect the moment of the request and can change right after.
FAQ

Questions, answered

No. This lists a store's products. Pull the catalog and filter it, or use a collection when the store has already grouped what you want.

Related

Related sources

Try shopify store products on your own data

One request format across every source in the catalog.

Get started