# ShopGoodwill Scraper (`solidcode/shopgoodwill-com-scraper`) Actor

\[💰 $5 / 1K] Scrape ShopGoodwill.com auction listings by keyword or URL — titles, bids, buy-now prices, end times, shipping, seller/pickup locations, categories, and photos. Filter by price, category, Buy Now, and one-cent shipping. Detail mode adds descriptions, all images, and bid history.

- **URL**: https://apify.com/solidcode/shopgoodwill-com-scraper.md
- **Developed by:** [SolidCode](https://apify.com/solidcode) (community)
- **Categories:** E-commerce, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $5.00 / 1,000 results

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 web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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/docs.md):

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.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/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

## ShopGoodwill Scraper

Pull live auction and Buy Now listings from ShopGoodwill.com at scale — current bids, minimum next bids, Buy Now prices, shipping costs, auction end times, full descriptions, photo galleries, and complete bid history for every lot. Built for resellers, thrift flippers, collectors, and deal hunters who need structured ShopGoodwill data without babysitting the site and refreshing listings by hand.

### Why This Scraper?

- **8 live-verified sort orders** — Ending Soonest, Ending Latest, Lowest Price, Highest Price, Most Bids, Fewest Bids, and Title A-Z / Z-A, so you can surface the hottest lots or the cheapest lots in a single pass.
- **Complete bid history embedded on every lot** — up to 200 bids per item with masked bidder ids (e.g. `W****1`), bid amounts, and timestamps, all inside one row so you can measure exactly how competitive an auction is.
- **34+ structured fields per listing** — current bid, next minimum bid, opening price, Buy Now price, discounted Buy Now, bid count, shipping, and full auction timing on every row — no HTML to untangle.
- **29 top-level categories plus deep leaf targeting** — filter by name (Jewelry & Gemstones, Electronics, Collectibles, Clothing & Shoes…) or drop in any numeric category id to zero in on a specific sub-category like Women's Watches.
- **One-cent-shipping filter** — isolate ShopGoodwill's signature $0.01-shipping lots with a single toggle, the deal category resellers hunt for hardest.
- **Ended-auction research mode** — include closed auctions to pull real final sale prices for comps and resale benchmarking, not just what's live right now.
- **Item and search URLs in, data out** — paste a single `shopgoodwill.com/item/...` listing or a full category/search URL and it's scraped exactly as posted; keyword-only tools can't do this.
- **Full detail enrichment on demand** — flip one switch to add complete descriptions, every product photo, seller company name, and pickup city, state, and ZIP for each lot.

### Use Cases

**Reselling & Flipping**
- Pair the Most Bids sort with a maximum price to find low-competition, still-affordable lots
- Track one-cent-shipping listings where total landed cost stays razor thin
- Build watchlists of Buy Now items you can list and flip immediately
- Time last-minute bids by monitoring the Ending Soonest queue

**Price & Market Research**
- Pull final sale prices from ended auctions to benchmark what items actually sell for
- Compare current bids across categories to gauge live demand
- Track average bid counts per category to spot heating and cooling niches
- Establish resale price floors from real ShopGoodwill sale data

**Collectors & Deal Hunting**
- Search vintage jewelry, watches, coins, or trading cards by keyword across every category
- Focus a single category like Collectibles to keep a hunt tightly scoped
- Get notified of new matching listings by wiring the output into Slack or email
- Watch reserve status and bid increments on high-value lots with detail mode

**Inventory Sourcing**
- Source bulk lots by category for a retail store or online shop
- Filter by price range to match a fixed buying budget
- Capture seller and pickup city, state, and ZIP to plan local pickups
- Export full descriptions and photo galleries straight into a product catalog

### Getting Started

#### Simple keyword search

Just a search term and a result cap:

```json
{
    "searchQueries": ["vintage jewelry"],
    "maxResults": 100
}
````

#### Filtered auction hunt

The most useful filter combination — category, price band, and the Most Bids sort:

```json
{
    "searchQueries": ["rolex", "omega"],
    "category": "Jewelry & Gemstones",
    "minPrice": 50,
    "maxPrice": 500,
    "sortBy": "mostBids",
    "maxResults": 200
}
```

#### Full details, closed auctions, and URLs

Paste listing or search URLs, include ended auctions for comps, and turn on full detail enrichment:

```json
{
    "startUrls": [
        "https://shopgoodwill.com/item/270715391",
        "https://shopgoodwill.com/categories/listing?st=trading%20cards&c=25"
    ],
    "includeClosedAuctions": true,
    "scrapeDetails": true,
    "maxResults": 300
}
```

### Input Reference

#### What to Scrape

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `searchQueries` | string\[] | `["vintage jewelry"]` | Keywords to search, one per line. Each term is searched separately. Leave empty (with no URLs) to browse the latest listings. |
| `startUrls` | string\[] | `[]` | Paste ShopGoodwill URLs. Item pages are scraped as single listings; category or search pages are scraped like a search. |

#### Filters

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `category` | string | (all) | Limit to one category by name (e.g. "Electronics") or a numeric category id for a specific sub-category. |
| `minPrice` | integer | (none) | Only listings with a current price at or above this amount, in USD. |
| `maxPrice` | integer | (none) | Only listings with a current price at or below this amount, in USD. |
| `buyNowOnly` | boolean | `false` | Return only listings that offer a fixed Buy Now price. |
| `oneCentShippingOnly` | boolean | `false` | Return only listings that ship for one cent ($0.01). |
| `includeClosedAuctions` | boolean | `false` | Also include auctions that have already ended — ideal for final-price research. |
| `sortBy` | select | `Ending Soonest` | Order results: Ending Soonest, Ending Latest, Lowest Price, Highest Price, Most Bids, Fewest Bids, Title A-Z, or Title Z-A. |

#### Options

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `maxResults` | integer | `100` | Maximum listings per search term or URL. Set to 0 for no limit (up to a safety ceiling of 50,000 per search). |
| `scrapeDetails` | boolean | `false` | Also collect the full description, every photo, shipping and handling costs, seller and pickup location, and bid history for each lot. Richer, but slower. |

### Output

Every listing becomes one flat row. Here's a representative result with full details enabled:

```json
{
    "itemId": 270715391,
    "url": "https://shopgoodwill.com/item/270715391",
    "title": "Vintage 14K Yellow Gold Diamond Cluster Ring Size 7",
    "categoryId": 6,
    "categoryName": "Rings",
    "categoryPath": "Jewelry & Gemstones > Rings > Diamond",
    "listingType": "Auction",
    "isBuyNowAvailable": false,
    "currentPrice": 152.5,
    "minimumBid": 157.5,
    "startingPrice": 9.99,
    "buyNowPrice": 0,
    "discountedBuyNowPrice": 0,
    "numBids": 24,
    "startTime": "2026-07-10T18:00:00",
    "endTime": "2026-07-17T18:00:00",
    "remainingTime": "1d 4h 12m",
    "isEnded": false,
    "shippingPrice": 8.5,
    "oneCentShipping": false,
    "quantity": 1,
    "sellerId": 184,
    "imageUrl": "https://shopgoodwillimages.azureedge.net/production/184/Items/example1.jpg",
    "description": "Beautiful vintage 14K yellow gold ring featuring a diamond cluster center. Marked 14K. Total weight 4.2 grams.",
    "images": [
        "https://shopgoodwillimages.azureedge.net/production/184/Items/example1.jpg",
        "https://shopgoodwillimages.azureedge.net/production/184/Items/example2.jpg"
    ],
    "bidIncrement": 5,
    "reserveMet": true,
    "handlingPrice": 1.5,
    "weight": "0.5 lb",
    "sellerName": "Goodwill of Central Texas",
    "pickupCity": "Austin",
    "pickupState": "TX",
    "pickupZip": "78704",
    "pickupCountry": "US",
    "bidHistory": [
        { "bidderName": "W****1", "amount": 152.5, "time": "2026-07-15T14:03:00", "retracted": false },
        { "bidderName": "j****9", "amount": 147.5, "time": "2026-07-15T13:41:00", "retracted": false }
    ],
    "scrapedAt": "2026-07-16T14:30:00Z"
}
```

#### Core & Identity

| Field | Type | Description |
|-------|------|-------------|
| `itemId` | integer | Unique ShopGoodwill item id |
| `url` | string | Direct listing URL |
| `title` | string | Listing title |
| `categoryId` | integer | Category id |
| `categoryName` | string | Leaf category name |
| `categoryPath` | string | Full category breadcrumb (e.g. `Jewelry & Gemstones > Rings > Diamond`) |
| `listingType` | string | Listing type (auction vs. Buy Now) |
| `quantity` | integer | Item quantity available |
| `imageUrl` | string | Primary image URL |
| `scrapedAt` | string | ISO timestamp of data collection |

#### Pricing & Bids

| Field | Type | Description |
|-------|------|-------------|
| `currentPrice` | number | Current bid or price in USD |
| `minimumBid` | number | Next minimum bid required |
| `startingPrice` | number | Opening price |
| `buyNowPrice` | number | Buy Now price (0 if not offered) |
| `discountedBuyNowPrice` | number | Discounted Buy Now price, if any |
| `isBuyNowAvailable` | boolean | Whether a Buy Now price is available |
| `numBids` | integer | Number of bids placed |

#### Timing

| Field | Type | Description |
|-------|------|-------------|
| `startTime` | string | Auction start time (Pacific) |
| `endTime` | string | Auction end time (Pacific) |
| `remainingTime` | string | Human-readable time left (e.g. `1d 4h 12m`) |
| `isEnded` | boolean | Whether the auction has ended |

#### Shipping & Seller

| Field | Type | Description |
|-------|------|-------------|
| `shippingPrice` | number | Shipping cost in USD |
| `oneCentShipping` | boolean | Whether the lot ships for $0.01 |
| `sellerId` | integer | Seller (Goodwill affiliate) id |

#### Detail Mode — Description & Media

Populated when `scrapeDetails` is on.

| Field | Type | Description |
|-------|------|-------------|
| `description` | string | Full item description, plain text |
| `images` | string\[] | Every product photo URL |
| `bidIncrement` | number | Minimum bid step |
| `reserveMet` | boolean | Whether the reserve price has been met |
| `handlingPrice` | number | Handling cost in USD |
| `weight` | string | Item weight as listed |

#### Detail Mode — Seller, Pickup & Bid History

Populated when `scrapeDetails` is on.

| Field | Type | Description |
|-------|------|-------------|
| `sellerName` | string | Selling Goodwill affiliate name |
| `pickupCity` | string | Local pickup city |
| `pickupState` | string | Local pickup state |
| `pickupZip` | string | Local pickup ZIP |
| `pickupCountry` | string | Local pickup country |
| `bidHistory` | object\[] | Up to 200 bids: masked bidder id, amount, time, and retracted flag |

### Tips for Best Results

- **Start small** — set `maxResults` to 50–100 on your first run to confirm the data matches your needs, then scale up.
- **Turn on full details only when you need them** — basic search is fast; detail mode (descriptions, photos, seller, pickup, bid history) is richer but slower, so leave it off for quick price sweeps.
- **Find hot-but-affordable lots** — combine the Most Bids sort with a `maxPrice` cap to surface auctions with heavy competition where the price hasn't run away yet.
- **Use ended auctions for comps** — turn on `includeClosedAuctions` and read `currentPrice` on closed lots to see real final sale prices, the gold standard for resale pricing and market benchmarks.
- **Search several niches at once** — each keyword in `searchQueries` runs as its own search, so add multiple terms to cover many product niches in a single run.
- **Reach specific sub-categories by id** — the `category` name matches the 29 top-level categories; to target something narrower like Women's Watches, copy the numeric id from that category's URL on ShopGoodwill and paste it into `category`.
- **Read bid history as competition, not identity** — bidder names are masked by ShopGoodwill (e.g. `W****1`); use them to count distinct bidders and gauge heat, not to identify people.

### Pricing

**From $5.00 per 1,000 results** — undercuts the closest competing ShopGoodwill scraper while returning a fully documented, structured output. No compute or time-based charges — you pay per result, plus a small fixed per-run start fee.

| Results | No discount | Bronze | Silver | Gold |
|---------|-------------|--------|--------|------|
| 100 | $0.60 | $0.57 | $0.53 | $0.50 |
| 1,000 | $6.00 | $5.65 | $5.30 | $5.00 |
| 10,000 | $60.00 | $56.50 | $53.00 | $50.00 |
| 100,000 | $600.00 | $565.00 | $530.00 | $500.00 |

A "result" is one listing row in the output dataset. Bronze, Silver, and Gold are Apify's loyalty tiers — subscribers pay progressively less. Platform fees depend on your Apify plan.

### Integrations

Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:

- **Zapier** / **Make** / **n8n** — Workflow automation
- **Google Sheets** — Direct spreadsheet export
- **Slack** / **Email** — Notifications on new results
- **Webhooks** — Trigger custom APIs on run completion
- **Apify API** — Full programmatic access

### Legal & Ethical Use

This actor is built for legitimate resale research, market analysis, and deal discovery. You are responsible for complying with applicable laws and ShopGoodwill.com's Terms of Service. Bidder names in the output are already masked by ShopGoodwill; do not attempt to de-anonymize them. Do not use collected data for spam, harassment, or any unlawful purpose.

# Actor input Schema

## `searchQueries` (type: `array`):

Keywords to search for on ShopGoodwill, such as 'rolex', 'vintage jewelry', or 'Nintendo'. Add one term per line. Each term is searched separately.

## `startUrls` (type: `array`):

Paste ShopGoodwill URLs directly. Item pages (e.g. https://shopgoodwill.com/item/270031013) are scraped as single listings; search or category pages are scraped like a search.

## `category` (type: `string`):

Limit results to one category by name, for example 'Jewelry & Gemstones', 'Electronics', 'Clothing & Shoes', or 'Collectibles'. Leave empty to search all categories.

## `minPrice` (type: `integer`):

Only return listings with a current price at or above this amount, in US dollars. Leave empty for no minimum.

## `maxPrice` (type: `integer`):

Only return listings with a current price at or below this amount, in US dollars. Leave empty for no maximum.

## `buyNowOnly` (type: `boolean`):

Return only listings that offer a fixed Buy Now price.

## `oneCentShippingOnly` (type: `boolean`):

Return only listings that ship for one cent ($0.01).

## `includeClosedAuctions` (type: `boolean`):

Also include auctions that have already ended. Useful for researching final sale prices. When off, only live listings are returned.

## `sortBy` (type: `string`):

Choose the order in which listings are collected.

## `maxResults` (type: `integer`):

Maximum number of listings to return for each search term or URL. Set to 0 for no limit — the run then stops when the site runs out of matching listings, up to a safety ceiling of 50,000 per search. Keeping a limit helps control cost.

## `scrapeDetails` (type: `boolean`):

Visit each listing to also collect the full description, every photo, shipping and handling costs, seller and pickup location, and recent bid history. Slower, but returns much richer data.

## Actor input object example

```json
{
  "searchQueries": [
    "vintage jewelry"
  ],
  "startUrls": [],
  "buyNowOnly": false,
  "oneCentShippingOnly": false,
  "includeClosedAuctions": false,
  "sortBy": "endingSoonest",
  "maxResults": 100,
  "scrapeDetails": false
}
```

# Actor output Schema

## `overview` (type: `string`):

Table of scraped auction listings with key fields.

# 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 = {
    "searchQueries": [
        "vintage jewelry"
    ],
    "startUrls": [],
    "buyNowOnly": false,
    "oneCentShippingOnly": false,
    "includeClosedAuctions": false,
    "sortBy": "endingSoonest",
    "maxResults": 100,
    "scrapeDetails": false
};

// Run the Actor and wait for it to finish
const run = await client.actor("solidcode/shopgoodwill-com-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 = {
    "searchQueries": ["vintage jewelry"],
    "startUrls": [],
    "buyNowOnly": False,
    "oneCentShippingOnly": False,
    "includeClosedAuctions": False,
    "sortBy": "endingSoonest",
    "maxResults": 100,
    "scrapeDetails": False,
}

# Run the Actor and wait for it to finish
run = client.actor("solidcode/shopgoodwill-com-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 '{
  "searchQueries": [
    "vintage jewelry"
  ],
  "startUrls": [],
  "buyNowOnly": false,
  "oneCentShippingOnly": false,
  "includeClosedAuctions": false,
  "sortBy": "endingSoonest",
  "maxResults": 100,
  "scrapeDetails": false
}' |
apify call solidcode/shopgoodwill-com-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "ShopGoodwill Scraper",
        "description": "[💰 $5 / 1K] Scrape ShopGoodwill.com auction listings by keyword or URL — titles, bids, buy-now prices, end times, shipping, seller/pickup locations, categories, and photos. Filter by price, category, Buy Now, and one-cent shipping. Detail mode adds descriptions, all images, and bid history.",
        "version": "1.0",
        "x-build-id": "fSm2dysUtnDgpeSvY"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/solidcode~shopgoodwill-com-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-solidcode-shopgoodwill-com-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/solidcode~shopgoodwill-com-scraper/runs": {
            "post": {
                "operationId": "runs-sync-solidcode-shopgoodwill-com-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/solidcode~shopgoodwill-com-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-solidcode-shopgoodwill-com-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",
                "properties": {
                    "searchQueries": {
                        "title": "Search terms",
                        "type": "array",
                        "description": "Keywords to search for on ShopGoodwill, such as 'rolex', 'vintage jewelry', or 'Nintendo'. Add one term per line. Each term is searched separately.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "startUrls": {
                        "title": "Listing or search URLs",
                        "type": "array",
                        "description": "Paste ShopGoodwill URLs directly. Item pages (e.g. https://shopgoodwill.com/item/270031013) are scraped as single listings; search or category pages are scraped like a search.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "category": {
                        "title": "Category",
                        "type": "string",
                        "description": "Limit results to one category by name, for example 'Jewelry & Gemstones', 'Electronics', 'Clothing & Shoes', or 'Collectibles'. Leave empty to search all categories."
                    },
                    "minPrice": {
                        "title": "Minimum price (USD)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only return listings with a current price at or above this amount, in US dollars. Leave empty for no minimum."
                    },
                    "maxPrice": {
                        "title": "Maximum price (USD)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only return listings with a current price at or below this amount, in US dollars. Leave empty for no maximum."
                    },
                    "buyNowOnly": {
                        "title": "Buy Now listings only",
                        "type": "boolean",
                        "description": "Return only listings that offer a fixed Buy Now price.",
                        "default": false
                    },
                    "oneCentShippingOnly": {
                        "title": "One-cent shipping only",
                        "type": "boolean",
                        "description": "Return only listings that ship for one cent ($0.01).",
                        "default": false
                    },
                    "includeClosedAuctions": {
                        "title": "Include ended auctions",
                        "type": "boolean",
                        "description": "Also include auctions that have already ended. Useful for researching final sale prices. When off, only live listings are returned.",
                        "default": false
                    },
                    "sortBy": {
                        "title": "Sort results by",
                        "enum": [
                            "endingSoonest",
                            "endingLatest",
                            "lowestPrice",
                            "highestPrice",
                            "mostBids",
                            "fewestBids",
                            "titleAZ",
                            "titleZA"
                        ],
                        "type": "string",
                        "description": "Choose the order in which listings are collected.",
                        "default": "endingSoonest"
                    },
                    "maxResults": {
                        "title": "Max results per search",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum number of listings to return for each search term or URL. Set to 0 for no limit — the run then stops when the site runs out of matching listings, up to a safety ceiling of 50,000 per search. Keeping a limit helps control cost.",
                        "default": 100
                    },
                    "scrapeDetails": {
                        "title": "Collect full item details",
                        "type": "boolean",
                        "description": "Visit each listing to also collect the full description, every photo, shipping and handling costs, seller and pickup location, and recent bid history. Slower, but returns much richer data.",
                        "default": false
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
