{
  "openapi": "3.0.1",
  "info": {
    "title": "eBay Scraper: Multi-Page Search",
    "description": "🛒 eBay Scraper extracts product listings, prices, sellers, ratings, images & specs from eBay at scale. ⚡ Export CSV/JSON, API-ready, schedule crawls, monitor price & stock, track keywords & categories. 🔍 Ideal for market research, competitor analysis & e‑commerce insights.",
    "version": "1.0",
    "x-build-id": "4ZezvZugYcOr0JziA"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapier~ebay-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapier-ebay-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/scrapier~ebay-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapier-ebay-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/scrapier~ebay-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapier-ebay-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": {
          "searchUrls": {
            "title": "🔗 eBay search / listing URLs",
            "type": "array",
            "description": "🗺️ Search or category result pages → discovered across multiple pages (see Step 2). Single `/itm/` listing links → always fetched full-detail directly, one request each.\n\n♻️ Also accepts the base actor's `urls` field for backward compatibility — if both are set, this field wins.",
            "items": {
              "type": "string"
            }
          },
          "resultCap": {
            "title": "🎯 Max products to collect",
            "minimum": 0,
            "maximum": 100000,
            "type": "integer",
            "description": "📊 Ceiling on total products collected across ALL pages/URLs.\n\n0️⃣ = no limit.\n\n♻️ Also accepts the base actor's `maxItems` field for backward compatibility.\n\nDefault is 20."
          },
          "pagesPerSearch": {
            "title": "📄 Pages to follow per search URL",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "🆕 NEW — genuine multi-page pagination. Follows eBay's `_pgn=<n>` parameter across up to this many result pages per search/category URL (page 2, 3, 4…), not just page 1.\n\n📈 Example: pagesPerSearch=3 on a search that has 60 items/page can discover ~150-180 unique items instead of ~60.\n\n1️⃣ Default 1 = page 1 only (identical to the base actor's behaviour).",
            "default": 1
          },
          "fastPreviewMode": {
            "title": "⚡ Fast Preview — skip per-item detail fetch",
            "type": "boolean",
            "description": "🆕 NEW — when ON, results are read straight from the search-results GRID (title, price, was-price, condition, buying format, location, free returns/shipping, sold count, watchers, seller + feedback %) with ZERO extra `/itm/` page request per item — far cheaper/faster for large sweeps.\n\n⚠️ Trade-off (honest, by design): item specifics (brand/type/UPC/MPN/EAN), the full bullet-point 'why to buy' list, and exact stock-availability text are ONLY on the detail page and will be `null` in this mode.\n\n🔴 Default OFF = full item-detail fetch (identical to the base actor's behaviour).",
            "default": false
          },
          "buyingFormatFilter": {
            "title": "🏷️ Buying format",
            "type": "array",
            "description": "🆕 NEW — restrict discovery to specific buying formats (eBay's own `LH_Auction`/`LH_BIN`/`LH_BO` search filters). Leave empty for all formats (base behaviour).",
            "items": {
              "type": "string",
              "enum": [
                "Auction",
                "BIN",
                "BO"
              ],
              "enumTitles": [
                "Auction",
                "Buy It Now",
                "Best Offer"
              ]
            },
            "default": []
          },
          "showOnlyFilters": {
            "title": "🚫 Show only",
            "type": "array",
            "description": "🆕 NEW — eBay's 'Show only' search filters (free returns, free shipping, sold/completed items, deals, authorized seller, etc). Leave empty for no filter (base behaviour).",
            "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"
              ]
            },
            "default": []
          },
          "proxyConfiguration": {
            "title": "🌐 Connection & reliability",
            "type": "object",
            "description": "🛡️ Optional Apify Proxy settings. Leave defaults if unsure."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}