Shopify

Search Shopify store

Search a Shopify store's products, articles and pages, with the store's facets and result count.

GET/v1/shopify/search
1credit
x-api-keystringheader

API key (`sfk_...`)

Parameters
10
storestringrequiredquery

The store's domain, for example `allbirds.com`, `www.allbirds.com` or `weareallbirds.myshopify.com`. A full URL is accepted and reduced to its host. Only public storefront hosts are accepted.

querystringrequiredquery

What to search for in the store.

min 1 chars · max 512 chars

typestringoptionalquery

Restrict the search to `product`, `article` or `page`. Default: all three.

one of: product, article, page

availablebooleanoptionalquery

Only products with an available variant.

priceMinnumberoptionalquery

Lowest product price to include.

≥ 0 · ≤ 1000000000

priceMaxnumberoptionalquery

Highest product price to include.

≥ 0 · ≤ 1000000000

limitintegeroptionalquery

Rows per page, 1 to 250. Default: 50.

≥ 1 · ≤ 250

cursorstringoptionalquery

Cursor from `page.nextCursor` of the previous response. It only works with the same filters.

min 1 chars · max 4096 chars

countrystringoptionalquery

ISO 3166-1 alpha-2 country used for prices, currency and language, e.g. `GB`. Default: the store's own market.

languagestringoptionalquery

Two-letter language code, e.g. `EN`. Default: the store's own language.

Response fields
88

Endpoint-specific response payload.

datalookupStatus
string

`found` on success; `not_found` when it does not exist or is not a Shopify store; `private` when the storefront is password-protected; `restricted` when the store is paused or frozen.

one of: found, not_found, private, restricted

datastore
string

The store host that was requested.

dataquery
string

The query that was searched.

The result types that were searched.

any of: product, article, page (comma-separated)

datatype[]
stringoptional

one of: product, article, page

datatotalCount
integernullable

Matching results.

datatotalCountCapped
boolean

True when the store's own count is capped at 1000.

Product hits.

dataproducts[]id
stringnullable

Product id; null when the answer omits it.

dataproducts[]gid
stringnullable

The store's global product id; null when the store does not publish it for this row.

dataproducts[]handle
string

Product handle.

dataproducts[]url
stringnullable

Product page URL.

dataproducts[]title
string

Product title.

dataproducts[]vendor
stringnullable

Vendor.

dataproducts[]productType
stringnullable

Product type.

Tags.

dataproducts[]tags[]
stringoptional
dataproducts[]availableForSale
booleannullable

Whether any variant is available.

dataproducts[]updatedAt
stringnullable

Last update, ISO 8601 UTC.

Lowest and highest variant price.

An amount and its currency.

dataproducts[]priceRangeminamount
numbernullable

The amount as a decimal number.

dataproducts[]priceRangemincurrency
stringnullable

ISO 4217 currency code, e.g. `USD`.

An amount and its currency.

dataproducts[]priceRangemaxamount
numbernullable

The amount as a decimal number.

dataproducts[]priceRangemaxcurrency
stringnullable

ISO 4217 currency code, e.g. `USD`.

Lowest and highest compare-at price.

An amount and its currency.

dataproducts[]compareAtPriceRangeminamount
numbernullable

The amount as a decimal number.

dataproducts[]compareAtPriceRangemincurrency
stringnullable

ISO 4217 currency code, e.g. `USD`.

An amount and its currency.

dataproducts[]compareAtPriceRangemaxamount
numbernullable

The amount as a decimal number.

dataproducts[]compareAtPriceRangemaxcurrency
stringnullable

ISO 4217 currency code, e.g. `USD`.

The main image; null when the product has none.

dataproducts[]featuredImageid
stringnullable

Image id; null when the store does not publish it for this row.

dataproducts[]featuredImageurl
stringnullable

Image URL.

dataproducts[]featuredImagealtText
stringnullable

Alt text the merchant set.

dataproducts[]featuredImagewidth
integernullable

Pixel width.

dataproducts[]featuredImageheight
integernullable

Pixel height.

Variants the image belongs to; empty when not given.

dataproducts[]featuredImagevariantIds[]
stringoptional

Article hits.

dataarticles[]id
string

Numeric article id as a string.

dataarticles[]handle
string

Article handle.

dataarticles[]title
string

Article title.

dataarticles[]url
stringnullable

Article URL.

dataarticles[]excerpt
stringnullable

Excerpt.

dataarticles[]author
stringnullable

Author display name.

dataarticles[]publishedAt
stringnullable

Published, ISO 8601 UTC.

Tags.

dataarticles[]tags[]
stringoptional

Article image.

dataarticles[]imageid
stringnullable

Image id; null when the store does not publish it for this row.

dataarticles[]imageurl
stringnullable

Image URL.

dataarticles[]imagealtText
stringnullable

Alt text the merchant set.

dataarticles[]imagewidth
integernullable

Pixel width.

dataarticles[]imageheight
integernullable

Pixel height.

Variants the image belongs to; empty when not given.

dataarticles[]imagevariantIds[]
stringoptional

Page hits.

datapages[]id
string

Numeric page id as a string.

datapages[]handle
string

Page handle.

datapages[]title
string

Page title.

datapages[]url
stringnullable

Page URL.

datapages[]bodySummary
stringnullable

Page summary.

datapages[]updatedAt
stringnullable

Updated, ISO 8601 UTC.

The store's product filter facets with counts.

datafilters[]id
string

Filter id.

datafilters[]label
string

Label.

datafilters[]type
string

`LIST`, `PRICE_RANGE` or `BOOLEAN`.

datafilters[]presentation
stringnullable

How the store presents it, e.g. `TEXT`.

Facet values.

datafilters[]values[]id
string

Filter value id.

datafilters[]values[]label
string

Label.

datafilters[]values[]count
integernullable

Matching products.

datafilters[]values[]input
stringnullable

The store's own filter input as JSON, e.g. `{"available":true}`.

Colour swatch where given.

datafilters[]values[]swatchcolor
stringnullable

Hex colour.

Pagination state for the current page.

datapagehasMore
boolean

Whether another page is available.

datapagenextCursor
stringnullable

Cursor for the next page; null on the last page.

Notes about the answer, e.g. a requested market the store does not price in and the market it used instead.

datawarnings[]
stringoptional

Metadata describing the request and billing outcome.

metarequestId
string

Unique request identifier for tracing this API call.

min 1 chars

metacreditsCharged
integer

Credits charged for this request.

≥ 0

metaversion
string

Public API version that served the response.

one of: v1

Code example

curl "https://api.socialfetch.dev/v1/shopify/search?store=www.allbirds.com&query=shirt" \
  -H "x-api-key: YOUR_API_KEY"

Responses

Shopify search results and facets.