ScavioScavio
Pricing
Tools
Sign InsGet Startedg
Quick StartAPI & SDKsEcosystem

Wayfair

Wayfair Search API

Search Wayfair products by keyword on wayfair.com, wayfair.ca (English or French), wayfair.co.uk and wayfair.ie, or on Wayfair's US banner sites AllModern, Birch Lane, Joss & Main and Perigold. Sort by price per item or customer rating and filter by sale, closeout, open box, new arrivals, in stock, brand id, minimum rating, price range or any facet. Each product has its SKU, brand, price, sale price, was price (the strikethrough), price label, badge, rating, review count, stock text, open-box price and option counts. Keyword pages return 30 results; a keyword Wayfair maps to a category answers that category's 48 per page and says so in redirected_to. Costs 1 credit per request.

POST/api/v1/wayfair/search

Authorizations

Authorizationstringheaderrequired

Bearer authentication header of the form Bearer <token>, where <token> is your Scavio API key (e.g. Bearer sk_live_your_key).

Body

application/json
querystringrequired

Search keywords, 1-200 characters. A SKU opens that product instead: the answer has no items and redirected_to { type: product, sku, url }.

Example: office chair

countrystringdefault:us

The Wayfair market: us (wayfair.com), ca (wayfair.ca), gb (wayfair.co.uk) or ie (wayfair.ie). Prices come back in the market's currency, never converted; the answer echoes country, language, site and currency. Wayfair no longer sells in Germany or Austria, so de and at answer 400, like any other code, before anything is charged.

Example: us

  • us — wayfair.com, USD, English. The default.
  • ca — wayfair.ca, CAD, English or French (language).
  • gb — wayfair.co.uk, GBP, English. uk is accepted too.
  • ie — wayfair.ie, EUR, English.
languageenum<string>

ca only: en (the default) or fr for wayfair.ca in French (French names, labels such as Solde, and dates). Every other market and banner site is English; fr there answers 400.

Example: fr

  • en — English. The default everywhere.
  • fr — French, on country ca only.
siteenum<string>default:wayfair

Wayfair's US banner sites on the same catalogue platform: allmodern, birchlane, jossandmain or perigold (USD, English, country us only; with ca, gb or ie they answer 400). Default wayfair, the market's own site.

Example: perigold

  • wayfair — The market's own Wayfair site. The default.
  • allmodern — AllModern (allmodern.com), US, USD.
  • birchlane — Birch Lane (birchlane.com), US, USD.
  • jossandmain — Joss & Main (jossandmain.com), US, USD.
  • perigold — Perigold (perigold.com), US, USD.
pageintegerdefault:1

Results page, 1-based, up to 1000. A page past the last returns no items and a note (Wayfair itself would serve page 1 again).

Example: 2

sortenum<string>default:recommended

Result order. Price sorts follow Wayfair's price per item, so a set is placed by its per_item_price, not its shown price.

Example: price_asc

  • recommended — Wayfair's own order. The default.
  • price_asc — Price per item, low to high.
  • price_desc — Price per item, high to low.
  • rating — Customer rating, best first.
on_saleboolean

Only products on sale.

Example: true

closeoutboolean

Only closeout products.

Example: true

open_boxboolean

Only products with an open-box offer (open_box_price).

Example: true

new_arrivalsboolean

Only new arrivals.

Example: true

in_stockboolean

Only products in stock.

Example: true

brandinteger | string | array

1 to 5 Wayfair brand ids (not names): items[].brand.id or a Brand facet option id, e.g. 44308 = Ebern Designs.

Example: 44308

min_ratinginteger

Customer rating: 5 = five stars only, 4 or 3 = that many stars and up, 1 = every reviewed product.

Example: 4

  • 5 — Five stars only.
  • 4 — 4 stars and up.
  • 3 — 3 stars and up.
  • 1 — Every reviewed product.
price_minnumber

Lowest price, in the market's currency.

Example: 100

price_maxnumber

Highest price, in the market's currency.

Example: 400

filtersobject

Any facet of an answer, keyed by facets[].id with facets[].options[].id values; ranges as "min~max". At most 12 filter values per call.

Example: {"2471": ["274623"]}

Request

from scavio import ScavioClient

client = ScavioClient(api_key="sk_live_your_key", timeout=120)

# Office chairs on sale at wayfair.com, cheapest per item first.
r = client.wayfair.search(query="office chair", on_sale=True, sort="price_asc")["data"]
print(r["total"], "results (approximate),", r["currency"])
for i in r["items"]:
    print(i["sku"], i["name"], i["price"], "was", i["was_price"], i["price_label"], i["badge"])

Response

"query": "office chair",
"count": 48,
"total": 19466,
"total_is_approximate": true,
"page": 1,
"page_size": 48,
"total_pages": 406,
"sort": "recommended",
"requested_filters": {},
"applied_filters": [],
"unapplied_filters": [],
"country": "us",
"language": "en",
"site": "wayfair",
"currency": "USD"
},
"response_time": 23018
}
PreviousIKEA As-is OffersNextWayfair Product
ScavioScavio

One scraper API for every social, search, e-commerce and real estate platform. Built for AI agents.

Product

  • Features
  • Pricing
  • Dashboard
  • Affiliates

Developers

  • Documentation
  • API Reference
  • Quickstart
  • MCP Integration
  • Python SDK

Alternatives

  • Tavily Alternative
  • SerpAPI Alternative
  • Firecrawl Alternative
  • Exa Alternative
  • Serper Alternative
  • Tavily vs Scavio
  • SerpAPI vs Scavio
  • All alternatives
  • Compare Scavio vs alternatives

Search APIs

  • Google Search API
  • Amazon Product API
  • YouTube API
  • Reddit API
  • Walmart Product API
  • TikTok API
  • Instagram API

Tools

  • All Tools

Ask AI about Scavio

© 2026 Scavio. All rights reserved.

Featured on TAAFT
Terms of ServicePrivacy Policy