# Wayfair Furniture & Home Goods Scraper (`parseforge/wayfair-scraper`) Actor

Scrape Wayfair furniture and home goods listings: prices, ratings, reviews, brand, stock status, and images. For resellers, retailers, and procurement teams. Search by keyword or category URL.

- **URL**: https://apify.com/parseforge/wayfair-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** E-commerce
- **Stats:** 9 total users, 4 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per event

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

![ParseForge Banner](https://github.com/ParseForge/apify-assets/blob/ad35ccc13ddd068b9d6cba33f323962e39aed5b2/banner.jpg?raw=true)

## 🛋️ Wayfair Scraper

> 🚀 **Export Wayfair furniture and home-decor listings in seconds.** Search by keyword and pull **titles, prices, original prices, discounts, ratings, review counts, brands, SKUs, image URLs, and product links** for any category - sofas, dining tables, office chairs, rugs, lighting, decor. No login required.

> 🕒 **Last updated:** 2026-05-27 · **📊 12 fields** per record · **🛒 millions of SKUs** · **🪑 every Wayfair category** · **🇺🇸 Wayfair.com**

The **Wayfair Scraper** searches Wayfair.com by keyword and returns **12 structured fields per product**, including hero image URL, listing title, current price, original price, percent discount, star rating, review count, brand, SKU, availability flag, the canonical product URL, and a `scrapedAt` timestamp. Wayfair is one of the largest online home retailers in the world, with millions of SKUs across furniture, decor, lighting, kitchen, outdoor, and storage.

The catalog covers **every Wayfair category and brand**, from $99 accent chairs to $5,000 sectionals, and every assortment-level promotion is captured in the price/originalPrice/discount triple. This Actor handles the search-results pagination and the anti-bot interstitials, and downloads the result as CSV, Excel, JSON, or XML.

| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| E-commerce analysts, pricing teams, furniture brands, drop-shippers, interior-design startups, ad-creative teams, journalists, market researchers | Price monitoring, competitor SKU tracking, assortment analysis, ad-creative sourcing, market-sizing dashboards, trend reports |

---

### 📋 What the Wayfair Scraper does

One core workflow with thorough field coverage:

- 🔍 **Keyword search.** Pass any term Wayfair indexes - `sofa`, `dining table`, `office chair`, `area rug`, `pendant light`.
- 📄 **Pagination.** Walks the keyword result pages until `maxItems` is satisfied.
- 🏷️ **Brand inference.** Pulls the brand from the product-URL slug when the SERP card omits it.
- 💵 **Discount math.** Returns `price`, `originalPrice`, and the precomputed `discount` percentage when the listing is on sale.

Each record includes the hero image URL (for thumbnail rendering), the listing title, the trio of price fields, the star rating and review count, the brand and SKU, the availability flag, and a direct product URL.

> 💡 **Why it matters:** assortment and pricing at one of the largest home retailers in the world moves fast. Competitor brands, drop-shippers, and pricing teams need a continuously refreshed feed of what Wayfair is listing and at what price. This Actor turns that into a one-click data pull.

---

### 🎬 Full Demo

_🚧 Coming soon: a 3-minute walkthrough showing how to go from sign-up to a downloaded dataset of Wayfair products._

---

### ⚙️ Input

<table>
<thead>
<tr><th>Input</th><th>Type</th><th>Default</th><th>Behavior</th></tr>
</thead>
<tbody>
<tr><td>searchQuery</td><td>string</td><td>"sofa"</td><td>Keyword to search on Wayfair.</td></tr>
<tr><td>maxItems</td><td>integer</td><td>10</td><td>Records to return. Free plan caps at 10, paid plan at 1,000,000.</td></tr>
</tbody>
</table>

**Example: 100 dining tables.**

```json
{
    "searchQuery": "dining table",
    "maxItems": 100
}
````

**Example: 500 office chairs.**

```json
{
    "searchQuery": "office chair",
    "maxItems": 500
}
```

> ⚠️ **Good to Know:** the `originalPrice` and `discount` fields are populated only when the listing is on sale. The `availability` field on the search-results page is best-effort; for stock granular to a single SKU configuration, follow the `productUrl` and pull the product page separately.

***

### 📊 Output

Each product record contains **12 fields**. Download the dataset as CSV, Excel, JSON, or XML.

#### 🧾 Schema

| Field | Type | Example |
|---|---|---|
| 🖼️ `imageUrl` | string | null | `"https://assets.wfcdn.com/im/.../resize-h800.jpg"` |
| 🏷️ `title` | string | `"Eldred 84'' Upholstered Sofa"` |
| 💵 `price` | number | null | `599.99` |
| 💰 `originalPrice` | number | null | `899.00` |
| 🏷️ `discount` | number | null | `33` |
| ⭐ `rating` | number | null | `4.6` |
| 🗳️ `reviewCount` | number | null | `1287` |
| 🏢 `brand` | string | null | `"Latitude Run"` |
| 🆔 `sku` | string | null | `"W005893214"` |
| 📦 `availability` | string | null | `"in_stock"` |
| 🔗 `productUrl` | string | `"https://www.wayfair.com/furniture/pdp/..."` |
| 🕒 `scrapedAt` | ISO 8601 | `"2026-05-27T00:00:00.000Z"` |

#### 📦 Sample records

<details>
<summary><strong>🛋️ Mid-range upholstered sofa</strong></summary>

```json
{
    "imageUrl": "https://assets.wfcdn.com/im/12345678/resize-h800-w800%5Ecompr-r85/eldred-sofa.jpg",
    "title": "Eldred 84'' Upholstered Sofa",
    "price": 599.99,
    "originalPrice": 899.00,
    "discount": 33,
    "rating": 4.6,
    "reviewCount": 1287,
    "brand": "Latitude Run",
    "sku": "W005893214",
    "availability": null,
    "productUrl": "https://www.wayfair.com/furniture/pdp/latitude-run-eldred-84-upholstered-sofa-w005893214.html",
    "scrapedAt": "2026-05-27T00:00:00.000Z"
}
```

</details>

<details>
<summary><strong>🪑 Premium dining set without an active sale</strong></summary>

```json
{
    "imageUrl": "https://assets.wfcdn.com/im/87654321/resize-h800-w800%5Ecompr-r85/marabou-dining.jpg",
    "title": "Marabou 7-Piece Extendable Dining Set",
    "price": 1849.00,
    "originalPrice": null,
    "discount": null,
    "rating": 4.8,
    "reviewCount": 412,
    "brand": "Birch Lane",
    "sku": "W001234567",
    "productUrl": "https://www.wayfair.com/furniture/pdp/birch-lane-marabou-7-piece-extendable-dining-set-w001234567.html",
    "scrapedAt": "2026-05-27T00:00:00.000Z"
}
```

</details>

<details>
<summary><strong>💼 Ergonomic office chair on heavy discount</strong></summary>

```json
{
    "imageUrl": "https://assets.wfcdn.com/im/11223344/resize-h800-w800%5Ecompr-r85/elston-office.jpg",
    "title": "Elston Ergonomic Mesh Office Chair",
    "price": 219.00,
    "originalPrice": 549.99,
    "discount": 60,
    "rating": 4.3,
    "reviewCount": 6841,
    "brand": "Inbox Zero",
    "sku": "W004411223",
    "productUrl": "https://www.wayfair.com/furniture/pdp/inbox-zero-elston-ergonomic-office-chair-w004411223.html",
    "scrapedAt": "2026-05-27T00:00:00.000Z"
}
```

</details>

***

### ✨ Why choose this Actor

| | Capability |
|---|---|
| 🛒 | **Millions of SKUs.** Every Wayfair listing reachable from keyword search. |
| 💵 | **Discount-ready pricing.** `price`, `originalPrice`, and `discount` percent in every record. |
| ⭐ | **Social-proof signals.** Star rating and review count straight from the SERP. |
| 🖼️ | **Hero images.** High-resolution image URLs for thumbnails and dashboards. |
| 🏢 | **Brand normalization.** Brand inferred from the product slug when missing from the card. |
| 🔁 | **Always fresh.** Every run hits the live Wayfair search index. |
| 🚫 | **No login.** Uses publicly viewable listings only. |

> 📊 Assortment churn, promotional cadence, and brand-mix shifts at a top-3 home retailer are leading indicators for the entire furniture category.

***

### 📈 How it compares to alternatives

| Approach | Cost | Coverage | Refresh | Fields | Setup |
|---|---|---|---|---|---|
| **⭐ Wayfair Scraper** *(this Actor)* | $5 free credit, then pay-per-use | **Millions of SKUs** | **Live per run** | 12 fields | ⚡ 2 min |
| Manual browsing | Free | All | Live | None | 🐢 No automation |
| Affiliate-feed providers | Variable | Often subset | Daily | Many | ⏳ Approval cycle |
| Price-intelligence SaaS | $1,000+/month | Full | Daily | Many | ⏳ Sales cycle |

Pick this Actor when you want live Wayfair listings without an affiliate approval or SaaS contract.

***

### 🚀 How to use

1. 📝 **Sign up.** [Create a free account with $5 credit](https://console.apify.com/sign-up?fpr=vmoqkp) (takes 2 minutes).
2. 🌐 **Open the Actor.** Go to the Wayfair Scraper page on the Apify Store.
3. 🎯 **Set input.** Enter a search keyword and set `maxItems`.
4. 🚀 **Run it.** Click **Start** and let the Actor collect your data.
5. 📥 **Download.** Grab your results in the **Dataset** tab as CSV, Excel, JSON, or XML.

> ⏱️ Total time from signup to downloaded dataset: **3-5 minutes.** No coding required.

***

### 💼 Business use cases

<table>
<tr>
<td width="50%" valign="top">

#### 🏷️ Pricing & competitive intelligence

- Daily Wayfair price snapshots for key SKUs
- Promotional-cadence tracking (when do they discount?)
- Brand-mix benchmarks for category buyers
- Competitor-overlap detection across categories

</td>
<td width="50%" valign="top">

#### 🛍️ E-commerce & drop-ship operators

- Source bestsellers by review count and rating
- Build curated category storefronts on top of Wayfair
- Identify gaps in your own assortment vs. Wayfair
- Validate trending SKUs before sourcing

</td>
</tr>
<tr>
<td width="50%" valign="top">

#### 🎨 Interior-design platforms

- Populate room-style boards with real SKUs
- Power "shop the look" features with live prices
- Run A/B tests with real product copy and imagery
- Build affiliate-aware recommendation engines

</td>
<td width="50%" valign="top">

#### 📈 Market research & finance

- Pricing-trend dashboards for the furniture category
- Sector-research inputs for retail equity analysts
- Inflation-tracking on durable goods
- Quarterly assortment reports for category analysts

</td>
</tr>
</table>

***

### 🔌 Automating Wayfair Scraper

Control the scraper programmatically for scheduled runs and pipeline integrations:

- 🟢 **Node.js.** Install the `apify-client` NPM package.
- 🐍 **Python.** Use the `apify-client` PyPI package.
- 📚 See the [Apify API documentation](https://docs.apify.com/api/v2) for full details.

The [Apify Schedules feature](https://docs.apify.com/platform/schedules) lets you trigger this Actor on any cron interval. A daily refresh on a tracked keyword keeps your pricing dashboard always current.

***

### 🌟 Beyond business use cases

Data like this powers more than commercial workflows. The same structured records support research, education, civic projects, and personal initiatives.

<table>
<tr>
<td width="50%">

#### 🎓 Research and academia

- Consumer-economics papers on home-goods pricing
- Marketing-research theses on assortment depth
- Reproducible studies citing versioned Wayfair pulls
- Behavioral-econ studies of discount strategies

</td>
<td width="50%">

#### 🎨 Personal and creative

- DIY price-tracker apps for furniture wishlists
- Pinterest-style boards seeded with real SKUs
- Personal "is this a good deal?" widgets
- Newsletter coverage of home-decor trends

</td>
</tr>
<tr>
<td width="50%">

#### 🤝 Non-profit and civic

- Housing-non-profits sourcing affordable furnishings
- Refugee-resettlement teams matching donations to needs
- Education orgs teaching e-commerce data literacy
- Open-data community reports on retail pricing

</td>
<td width="50%">

#### 🧪 Experimentation

- Train product-categorization NLP models on real titles
- Benchmark recommendation systems against live SERPs
- Prototype shopping-agent pipelines
- Test image-classification models on hero images

</td>
</tr>
</table>

***

### 🤖 Ask an AI assistant about this scraper

Open a ready-to-send prompt about this ParseForge actor in the AI of your choice:

- 💬 [**ChatGPT**](https://chat.openai.com/?q=How%20do%20I%20use%20the%20Wayfair%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🧠 [**Claude**](https://claude.ai/new?q=How%20do%20I%20use%20the%20Wayfair%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🔍 [**Perplexity**](https://perplexity.ai/search?q=How%20do%20I%20use%20the%20Wayfair%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🅒 [**Copilot**](https://copilot.microsoft.com/?q=How%20do%20I%20use%20the%20Wayfair%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)

***

### ❓ Frequently Asked Questions

#### 🧩 How does it work?

You pass a keyword (e.g. `sofa`) and set `maxItems`. The Actor walks the Wayfair search-result pages, normalizes each listing into 12 structured fields, and pushes them to the dataset.

#### 🔍 Can I scrape a specific category page?

The Actor takes a keyword today, which usually matches a category cleanly (e.g. `dining table` lands on the dining-table category). For very specific sub-categories, contact us via the form below.

#### 💵 Why is `originalPrice` sometimes `null`?

The original price is only present when the listing is actively on sale. If the field is `null`, the current `price` is the list price.

#### 🖼️ How big are the image URLs?

The Actor returns Wayfair's CDN URL with a width hint around 800 pixels, which renders cleanly as a thumbnail and can be upscaled with Wayfair's CDN parameters if needed.

#### ⭐ Are ratings and review counts current?

Yes. Both come from the search-result card at the moment of the run, so they reflect Wayfair's live values.

#### 🏢 How is the brand inferred?

Most cards include the brand directly. When it's missing, the Actor reads the brand from the product-URL slug as a fallback. This matches Wayfair's own brand normalization.

#### 🔁 How often is the data refreshed?

Wayfair's index updates continuously as merchandisers tune the assortment. Every run of this Actor hits the live index.

#### ⏰ Can I schedule regular runs?

Yes. Use Apify Schedules to run this Actor on any cron interval (hourly, daily, weekly). A daily refresh keeps your pricing dashboard always current.

#### ⚖️ Is this data legal to use?

The Actor collects only publicly viewable listings. Review Wayfair's terms and your downstream regulatory requirements for your specific use case (commercial redistribution, affiliate display, large-scale aggregation, etc.).

#### 💳 Do I need a paid Apify plan?

No. The free Apify plan is enough for testing and small runs (10 records). A paid plan lifts the limit and gives you scheduling, higher concurrency, and larger datasets.

#### 🔁 What happens if a run fails or returns no products?

Wayfair has strong bot protection. The Actor performs a pre-flight check and exits gracefully with a `{ error: ... }` record if the pool is blocked. Retry shortly or supply your own residential proxies.

#### 🆘 What if I need help?

Contact us through the Apify platform or use the Tally form linked below.

***

### 🔌 Integrate with any app

Wayfair Scraper connects to any cloud service via [Apify integrations](https://apify.com/integrations):

- [**Make**](https://docs.apify.com/platform/integrations/make) - Automate multi-step workflows
- [**Zapier**](https://docs.apify.com/platform/integrations/zapier) - Connect with 5,000+ apps
- [**Slack**](https://docs.apify.com/platform/integrations/slack) - Get run notifications in your channels
- [**Airbyte**](https://docs.apify.com/platform/integrations/airbyte) - Pipe product data into your warehouse
- [**GitHub**](https://docs.apify.com/platform/integrations/github) - Trigger runs from commits and releases
- [**Google Drive**](https://docs.apify.com/platform/integrations/drive) - Export datasets straight to Sheets

You can also use webhooks to trigger downstream actions when a run finishes. Push fresh Wayfair listings into your pricing engine, or alert your team in Slack when a tracked SKU drops below a threshold.

***

### 🔗 Recommended Actors

- [**🛎️ Snagajob Scraper**](https://apify.com/parseforge/snagajob-scraper) - Hourly and part-time job listings
- [**🌬️ EPA AQS Air Quality Scraper**](https://apify.com/parseforge/epa-aqs-air-quality-scraper) - U.S. ambient air-quality data
- [**✈️ OurAirports Scraper**](https://apify.com/parseforge/ourairports-scraper) - Global airport reference database
- [**🧑‍💼 Indeed Scraper**](https://apify.com/parseforge/indeed-scraper) - The largest U.S. job aggregator
- [**🔍 Monster Scraper**](https://apify.com/parseforge/monster-scraper) - U.S. job market signal

> 💡 **Pro Tip:** browse the complete [ParseForge collection](https://apify.com/parseforge) for more e-commerce and reference-data scrapers.

***

**🆘 Need Help?** [**Open our contact form**](https://tally.so/r/BzdKgA) to request a new scraper, propose a custom data project, or report an issue.

***

> **⚠️ Disclaimer:** this Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Wayfair LLC or any of its parent or subsidiary companies. All trademarks mentioned are the property of their respective owners. Only publicly available product-listing data is collected.

# Actor input Schema

## `searchQuery` (type: `string`):

Keyword to search for on Wayfair (e.g. 'sofa', 'dining table', 'office chair')

## `maxItems` (type: `integer`):

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000

## Actor input object example

```json
{
  "searchQuery": "sofa",
  "maxItems": 10
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchQuery": "sofa",
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/wayfair-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchQuery": "sofa",
    "maxItems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/wayfair-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchQuery": "sofa",
  "maxItems": 10
}' |
apify call parseforge/wayfair-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=parseforge/wayfair-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Wayfair Furniture & Home Goods Scraper",
        "description": "Scrape Wayfair furniture and home goods listings: prices, ratings, reviews, brand, stock status, and images. For resellers, retailers, and procurement teams. Search by keyword or category URL.",
        "version": "0.1",
        "x-build-id": "c6590VGRMAkws3Kn0"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parseforge~wayfair-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parseforge-wayfair-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/parseforge~wayfair-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parseforge-wayfair-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/parseforge~wayfair-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parseforge-wayfair-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "searchQuery"
                ],
                "properties": {
                    "searchQuery": {
                        "title": "Search Query",
                        "type": "string",
                        "description": "Keyword to search for on Wayfair (e.g. 'sofa', 'dining table', 'office chair')"
                    },
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000"
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
