{
  "openapi": "3.0.1",
  "info": {
    "title": "eBay Listing Insights — Deals, Condition & Demand Signals",
    "description": "eBay Listing Insights — Deals, Condition & Demand Signals extracts public eBay listing data, including prices, item condition, seller details, shipping, sales signals, availability, and listing URLs. Ideal for deal discovery, price analysis, demand research, and competitor monitoring.",
    "version": "1.0",
    "x-build-id": "ie0wlz7R6vHn99NPs"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scraperx~ebay-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scraperx-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/scraperx~ebay-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scraperx-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/scraperx~ebay-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scraperx-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",
        "required": [
          "productLinks"
        ],
        "properties": {
          "productLinks": {
            "title": "Where should we look?",
            "type": "array",
            "description": "🗺️ Add one or many eBay links — mix & match as you like!\n\n🔎 Search / category pages → we’ll discover products from the results grid.\n\n🏷️ Single listing pages → we’ll grab that item’s full details.\n\n✅ Paste full URLs from your browser; that’s all you need to get started.",
            "items": {
              "type": "string"
            }
          },
          "resultsLimit": {
            "title": "Cap how many products to collect",
            "minimum": 0,
            "maximum": 100000,
            "type": "integer",
            "description": "📊 Set a ceiling on how many product pages to process after URL discovery — great for quick samples or budget-friendly runs.\n\n0️⃣ Use 0 for no limit (go as far as your inputs allow).\n\n⚡ Lower = faster & lighter; higher = broader coverage.",
            "default": 20
          },
          "dealsOnly": {
            "title": "Only keep listings that are actually discounted",
            "type": "boolean",
            "description": "🔥 When enabled, listings without a visible strike-through 'was' price (no live discount) are skipped entirely — not saved, not charged. Great for deal-hunting runs where you only want price drops.\n\n🧮 Every saved row also gets a computed `discountPercent` so you don't have to do the maths yourself.",
            "default": false
          },
          "flattenLists": {
            "title": "Flatten nested fields for spreadsheets",
            "type": "boolean",
            "description": "🧾 When enabled, list/object fields (`categoryPath`, `highlights`, `itemSpecifics`) are converted into single semicolon-separated text fields — ideal for clean CSV/Excel exports. When disabled (default), they stay as structured JSON for programmatic use.",
            "default": false
          },
          "concurrentWorkers": {
            "title": "Parallel listing fetches",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "⚡ How many listing pages to fetch at the same time. eBay's anti-bot punishes burst traffic from a single IP hard, so keep this modest unless you're running through a large proxy pool.",
            "default": 4
          },
          "requestDelaySec": {
            "title": "Base delay before each request (seconds)",
            "minimum": 0,
            "maximum": 60,
            "type": "integer",
            "description": "🐢 Extra base delay (plus built-in jitter and staggering) applied before every listing fetch, to spread out traffic on large runs. 0 disables the extra delay.",
            "default": 1
          },
          "networkSettings": {
            "title": "Connection & reliability (optional)",
            "type": "object",
            "description": "🛡️ Optional Apify Proxy settings for smoother runs when the target site is picky about traffic.\n\n✨ Tune country or groups in the proxy editor if your use case needs it — especially for international or large-scale jobs.\n\n💚 Leave defaults if you’re unsure; you can always rerun with adjustments."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}