{
  "openapi": "3.0.1",
  "info": {
    "title": "Ebay Search Scraper & Seller Store Details",
    "description": "eBay Search Scraper & Seller Store Details extracts eBay search results and seller store data, including product titles, prices, listings, seller details, ratings, store URLs, shipping info, and product links. Ideal for product research, price monitoring, competitor analysis, and seller insights.",
    "version": "0.1",
    "x-build-id": "Z1OvLxL5tEOj2GfcV"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapio~ebay-search-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapio-ebay-search-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/scrapio~ebay-search-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapio-ebay-search-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/scrapio~ebay-search-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapio-ebay-search-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": {
          "searchTerm": {
            "title": "🔎 Search keywords",
            "type": "string",
            "description": "Products, brands, or categories to search for. Leave blank if you're using a Seller/Store URL below to pull one seller's whole catalog. ☕ Example: coffee, vintage camera, running shoes."
          },
          "sellerOrStoreUrl": {
            "title": "🧪 Seller or store URL (bonus, experimental)",
            "type": "string",
            "description": "Bonus/experimental: paste an eBay seller/store link — e.g. https://www.ebay.com/usr/example-seller or https://www.ebay.com/str/example-store — to scrape that seller's own active listings directly instead of a keyword search. This variant's main seller-trust feature is the Seller Trust Score below (works on any keyword-search result); this field is an extra, not required. Leave empty for a normal keyword search."
          },
          "marketplace": {
            "title": "🌍 Marketplace (eBay site)",
            "enum": [
              "ebay.com.au",
              "ebay.at",
              "ebay.ca",
              "ebay.fr",
              "ebay.de",
              "ebay.com.hk",
              "ebay.ie",
              "ebay.it",
              "ebay.com.my",
              "ebay.nl",
              "ebay.ph",
              "ebay.pl",
              "ebay.com.sg",
              "ebay.es",
              "ebay.ch",
              "ebay.co.uk",
              "ebay.com"
            ],
            "type": "string",
            "description": "Which eBay storefront to search — prices, currency, and inventory follow the site you pick."
          },
          "shipToRegion": {
            "title": "📍 Ship-to region",
            "enum": [
              "1",
              "2",
              "3"
            ],
            "type": "string",
            "description": "eBay's real ship-to/location search filter (LH_PrefLoc) — confirmed live: 1 = US Only, 2 = Worldwide, 3 = North America. This corrects the base actor's dead `location` input, which mapped to the wrong eBay parameter (`_fcid`, an unrelated Feedback-Category-ID field) and silently changed nothing. Note eBay's own matching logic here is loose — e.g. \"US Only\" can still surface some non-US sellers — so treat it as a real but soft region filter, not a strict guarantee."
          },
          "sortBy": {
            "title": "⬆️ Sort order",
            "enum": [
              "12",
              "1",
              "10",
              "15",
              "16",
              "7",
              "3",
              "2"
            ],
            "type": "string",
            "description": "How listings are ranked — best match, ending soon, newest, price high/low, distance, and more."
          },
          "resultShortcuts": {
            "title": "🏷️ Show only",
            "type": "array",
            "description": "Optional shortcuts: sold, free shipping, returns accepted, deals, authenticity guarantee, charity, and more.",
            "items": {
              "type": "string",
              "enum": [
                "completed_items",
                "sold_items",
                "free_returns",
                "returns_accepted",
                "authorized_seller",
                "deals_and_savings",
                "sale_items",
                "listed_as_lots",
                "benefits_charity",
                "authenticity_guarantee",
                "free_shipping",
                "local_pickup"
              ],
              "enumTitles": [
                "✅ Completed items",
                "🏷️ Sold items",
                "↩️ Free returns",
                "📋 Returns accepted",
                "⭐ Authorized seller",
                "🏷️ Deals & savings",
                "💸 Sale items",
                "📦 Listed as lots",
                "❤️ Benefits charity",
                "✓ Authenticity Guarantee",
                "🚚 Free shipping",
                "📍 Local pickup"
              ]
            }
          },
          "saleType": {
            "title": "🛒 Sale type",
            "enum": [
              "Auction",
              "BIN",
              "BO"
            ],
            "type": "string",
            "description": "Auction, Buy It Now, or Accepts offers — how the listing is sold."
          },
          "startUrls": {
            "title": "🔗 Direct item URLs (optional)",
            "type": "array",
            "description": "Optional: paste direct eBay listing URLs (e.g. https://www.ebay.com/itm/<item-id>) to enrich them directly — these are added on top of any search/seller results, skipping the search step for these specific items. Leave empty (default) — individual listings end unpredictably (sold/removed), so a single hardcoded item URL can't be a reliable default.",
            "items": {
              "type": "string"
            }
          },
          "fetchSellerProfile": {
            "title": "🏪 Look up each seller's store profile",
            "type": "boolean",
            "description": "For every result, fetch the seller's own store-scoped page once and attach a sellerProfile object: display name, feedback-score text, and a sample of their other active listings. One extra request per UNIQUE seller in the run (not per row).",
            "default": true
          },
          "maxSellerListingsSample": {
            "title": "🧾 Other-listings sample size per seller",
            "minimum": 0,
            "maximum": 20,
            "type": "integer",
            "description": "How many of a seller's OTHER active listings (title + price) to include in sellerProfile.sellerOtherActiveListings — also feeds the Seller Trust Score's volume signal. 0 = fetch the seller summary but omit the listings sample."
          },
          "maxPages": {
            "title": "📄 Max pages to scrape",
            "minimum": 1,
            "type": "integer",
            "description": "How many search result pages to walk — more pages = more candidate listings (then capped by Max listings)."
          },
          "maxListings": {
            "title": "🎯 Max listings to scrape",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Hard cap on rows in your dataset this run — great for samples (small) or big sweeps (up to limit)."
          },
          "fetchFullDescription": {
            "title": "📜 Fetch full item description",
            "type": "boolean",
            "description": "Slower but richer: pulls more seller description text when eBay exposes it. Great for detail-heavy listings.",
            "default": false
          },
          "useApifyProxy": {
            "title": "🛡️ Use Apify Proxy",
            "type": "boolean",
            "description": "When on, the Actor can route traffic through Apify Proxy (configure groups below).",
            "default": true
          },
          "proxyConfiguration": {
            "title": "🌐 Proxy configuration",
            "type": "object",
            "description": "Fine-tune Apify Proxy (groups, sessions) for your workspace — used when 🛡️ Use Apify Proxy is enabled."
          },
          "query": {
            "title": "🔎 [Legacy] Search query",
            "type": "string",
            "description": "Legacy alias of 🔎 Search keywords (searchTerm) — kept so base-actor input JSON still runs unchanged. Prefer searchTerm above."
          },
          "domain": {
            "title": "🌍 [Legacy] Country (eBay site)",
            "enum": [
              "ebay.com.au",
              "ebay.at",
              "ebay.ca",
              "ebay.fr",
              "ebay.de",
              "ebay.com.hk",
              "ebay.ie",
              "ebay.it",
              "ebay.com.my",
              "ebay.nl",
              "ebay.ph",
              "ebay.pl",
              "ebay.com.sg",
              "ebay.es",
              "ebay.ch",
              "ebay.co.uk",
              "ebay.com"
            ],
            "type": "string",
            "description": "Legacy alias of 🌍 Marketplace (marketplace)."
          },
          "location": {
            "title": "📍 [Legacy] Ship-to location",
            "enum": [
              "1",
              "2",
              "3"
            ],
            "type": "string",
            "description": "Legacy alias of 📍 Ship-to region (shipToRegion). Accepts the same 1/2/3 values; any other legacy value (from the base actor's old 229-country dropdown, which never actually worked) falls back to 1 (US Only)."
          },
          "sort": {
            "title": "⬆️ [Legacy] Sort order",
            "enum": [
              "12",
              "1",
              "10",
              "15",
              "16",
              "7",
              "3",
              "2"
            ],
            "type": "string",
            "description": "Legacy alias of ⬆️ Sort order (sortBy)."
          },
          "show_only": {
            "title": "🏷️ [Legacy] Show only",
            "type": "array",
            "description": "Legacy alias of 🏷️ Show only (resultShortcuts).",
            "items": {
              "type": "string",
              "enum": [
                "completed_items",
                "sold_items",
                "free_returns",
                "returns_accepted",
                "authorized_seller",
                "deals_and_savings",
                "sale_items",
                "listed_as_lots",
                "benefits_charity",
                "authenticity_guarantee",
                "free_shipping",
                "local_pickup"
              ],
              "enumTitles": [
                "✅ Completed items",
                "🏷️ Sold items",
                "↩️ Free returns",
                "📋 Returns accepted",
                "⭐ Authorized seller",
                "🏷️ Deals & savings",
                "💸 Sale items",
                "📦 Listed as lots",
                "❤️ Benefits charity",
                "✓ Authenticity Guarantee",
                "🚚 Free shipping",
                "📍 Local pickup"
              ]
            }
          },
          "buying_format": {
            "title": "🛒 [Legacy] Buying format",
            "enum": [
              "Auction",
              "BIN",
              "BO"
            ],
            "type": "string",
            "description": "Legacy alias of 🛒 Sale type (saleType)."
          },
          "max_pages": {
            "title": "📄 [Legacy] Max pages to scrape",
            "minimum": 1,
            "type": "integer",
            "description": "Legacy alias of 📄 Max pages to scrape (maxPages)."
          },
          "maxItems": {
            "title": "🎯 [Legacy] Max listings to scrape",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Legacy alias of 🎯 Max listings to scrape (maxListings)."
          },
          "useProxy": {
            "title": "🛡️ [Legacy] Use Apify Proxy",
            "type": "boolean",
            "description": "Legacy alias of 🛡️ Use Apify Proxy (useApifyProxy)."
          },
          "fetch_description_iframe": {
            "title": "📜 [Legacy] Fetch full item description",
            "type": "boolean",
            "description": "Legacy alias of 📜 Fetch full item description (fetchFullDescription)."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}