{
  "openapi": "3.0.1",
  "info": {
    "title": "Depop Scraper - Listings, Shops, Sellers & Reviews",
    "description": "Scrape Depop listings by keyword, product, search or shop URL, plus seller reviews. Get prices, shipping, brand, condition, sizes, photos, likes and seller ratings. Filter by price, brand, condition, colour and size.",
    "version": "1.0",
    "x-build-id": "2Oiv91Snd0L7YvluE"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/parsebird~depop-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-parsebird-depop-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/parsebird~depop-scraper/runs": {
      "post": {
        "operationId": "runs-sync-parsebird-depop-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/parsebird~depop-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-parsebird-depop-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": {
          "mode": {
            "title": "Mode",
            "enum": [
              "search",
              "url",
              "reviews"
            ],
            "type": "string",
            "description": "`search` = keywords with filters, `url` = paste product, search or shop links, `reviews` = feedback left for one or more sellers.",
            "default": "search"
          },
          "queries": {
            "title": "Search keywords",
            "type": "array",
            "description": "Search mode. Enter keywords like you would in the Depop search bar. Each keyword runs its own paginated search; results are combined and de-duplicated.",
            "items": {
              "type": "string"
            }
          },
          "urls": {
            "title": "Depop URLs",
            "type": "array",
            "description": "URL mode. Paste product links (depop.com/products/...), search links (depop.com/search/?q=...) with filters already applied, or shop links (depop.com/username/). Search filters below are ignored in this mode.",
            "items": {
              "type": "string"
            }
          },
          "sellers": {
            "title": "Sellers",
            "type": "array",
            "description": "Reviews mode. Enter seller usernames, shop URLs, or numeric user IDs.",
            "items": {
              "type": "string"
            }
          },
          "reviewRole": {
            "title": "Review type",
            "enum": [
              "seller",
              "buyer"
            ],
            "type": "string",
            "description": "Reviews mode. `seller` = reviews buyers left for this user as a seller. `buyer` = reviews sellers left for this user as a buyer.",
            "default": "seller"
          },
          "includeSoldItems": {
            "title": "Include sold items from shops",
            "type": "boolean",
            "description": "URL mode, shop links. Also walk the shop's sold items after its active listings.",
            "default": false
          },
          "country": {
            "title": "Country",
            "enum": [
              "us",
              "gb",
              "au",
              "ca",
              "nz",
              "de",
              "fr",
              "it",
              "ie"
            ],
            "type": "string",
            "description": "Depop marketplace for Search mode; sets the currency of prices and shipping. Also used for pasted URLs that don't name a country, and as the country for the automatic Residential proxy fallback.",
            "default": "us"
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "relevance",
              "price-asc",
              "price-desc"
            ],
            "type": "string",
            "description": "Order of search results. Depop does not serve the 'Newly listed' order to automated clients, so it is not offered; use Incremental mode to catch new listings instead.",
            "default": "relevance"
          },
          "minPrice": {
            "title": "Min price",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum item price in the marketplace currency."
          },
          "maxPrice": {
            "title": "Max price",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum item price in the marketplace currency."
          },
          "gender": {
            "title": "Gender",
            "enum": [
              "any",
              "female",
              "male",
              "unisex"
            ],
            "type": "string",
            "description": "Department gender.",
            "default": "any"
          },
          "conditions": {
            "title": "Condition",
            "type": "array",
            "description": "Keep only items in these conditions. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "brand_new",
                "used_like_new",
                "used_excellent",
                "used_good",
                "used_fair"
              ],
              "enumTitles": [
                "Brand new",
                "Like new",
                "Used - Excellent",
                "Used - Good",
                "Used - Fair"
              ]
            }
          },
          "brands": {
            "title": "Brand IDs",
            "type": "array",
            "description": "Numeric Depop brand IDs, e.g. `270` for Nike. Find an ID in the `brands=` part of a Depop search URL after picking a brand filter, or in the `brandId` field of this Actor's output.",
            "items": {
              "type": "string"
            }
          },
          "groups": {
            "title": "Departments",
            "type": "array",
            "description": "Department group slugs, e.g. `tops`, `bottoms`, `footwear`, `coats-jackets`, `dresses`, `accessories`.",
            "items": {
              "type": "string"
            }
          },
          "productTypes": {
            "title": "Product types",
            "type": "array",
            "description": "Product type slugs, e.g. `sneakers`, `hoodies`, `jeans`, `t-shirts`. Shown as `productType` in the output.",
            "items": {
              "type": "string"
            }
          },
          "colours": {
            "title": "Colours",
            "type": "array",
            "description": "Colour slugs, e.g. `black`, `white`, `pink`, `navy`, `multi`.",
            "items": {
              "type": "string"
            }
          },
          "sizes": {
            "title": "Size filter IDs",
            "type": "array",
            "description": "Advanced. Size IDs in `variantSetId.variantId` form, e.g. `4.16`. Copy them from the `sizes=` part of a Depop search URL (a `-US` suffix is fine) or from `sizes[].filterId` in this Actor's output. Size IDs depend on the category.",
            "items": {
              "type": "string"
            }
          },
          "maxListings": {
            "title": "Max items",
            "minimum": 0,
            "type": "integer",
            "description": "Total listings or reviews to save across all keywords, URLs, shops and sellers combined. 0 = unlimited.",
            "default": 20
          },
          "maxPages": {
            "title": "Max pages per keyword / URL / seller",
            "minimum": 0,
            "type": "integer",
            "description": "Pages to walk per keyword, search URL, shop or seller (24 items per page). 0 = no page cap: each walk stops by itself at the end of the results, on an empty page, or on a page that repeats what it already returned.",
            "default": 0
          },
          "fetchDetails": {
            "title": "Fetch full listing details",
            "type": "boolean",
            "description": "Open each listing's detail data to add the title, condition name, like count, national shipping cost, free-shipping flag, and seller username, rating, review count, items sold and last-seen status. Adds the enrichment charge per listing. Product URLs always include these fields.",
            "default": false
          },
          "proxy": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Apify Proxy (datacenter) is the default and works on every plan. If Depop refuses the connection repeatedly, the Actor switches to Apify Residential automatically when your plan includes it. Pick Residential here for the most reliable results.",
            "default": {
              "useApifyProxy": true
            }
          },
          "incrementalMode": {
            "title": "Incremental mode",
            "type": "boolean",
            "description": "For scheduled monitoring of the same search, URLs or sellers. After the first run, returns only NEW, UPDATED and REAPPEARED items, with `changeType`, `changedFields`, `firstSeenAt` and `lastSeenAt` on every row.",
            "default": false
          },
          "stateKey": {
            "title": "State key",
            "type": "string",
            "description": "Incremental mode. Name a monitoring campaign so several tasks can share it. Leave empty to derive a key from the mode, inputs and filters."
          },
          "emitExpired": {
            "title": "Emit expired items",
            "type": "boolean",
            "description": "Incremental mode. Also return items tracked before but no longer found, marked EXPIRED. Only produced after a run that scanned everything to its natural end (not capped by Max items or Max pages, not resumed).",
            "default": false
          },
          "ignoreFieldsForChanges": {
            "title": "Ignore fields for changes",
            "type": "array",
            "description": "Incremental mode. Extra output fields that should not mark an item UPDATED, e.g. `description` or `pictures`. Seller stats, `likeCount`, `isBoosted`, `raw`, and the viewer-dependent `totalPrice`, `buyerFee`, `tax` and `taxType` are always ignored.",
            "items": {
              "type": "string"
            }
          },
          "resumeFromRunId": {
            "title": "Resume from run or dataset ID",
            "type": "string",
            "description": "Paste an earlier run ID or dataset ID. Items already collected there are skipped, so this run returns only new ones."
          }
        }
      },
      "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}