{
  "openapi": "3.0.1",
  "info": {
    "title": "Vinted Real-Time Data | Live Resale Intelligence",
    "description": "Live Vinted resale market intelligence: keyword search, full listing details, wardrobe inventory, seller profiles, sold comps, and URL collection. Stream structured JSON in real time to your dataset, with Slack/Discord deal alerts. Built for thrift resellers, arbitrage, and pricing teams.",
    "version": "0.0",
    "x-build-id": "t4KzFL6Mbv44zwizx"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/b2b_leads~Vinted-Real-Time-Data-Scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-b2b_leads-Vinted-Real-Time-Data-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/b2b_leads~Vinted-Real-Time-Data-Scraper/runs": {
      "post": {
        "operationId": "runs-sync-b2b_leads-Vinted-Real-Time-Data-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/b2b_leads~Vinted-Real-Time-Data-Scraper/run-sync": {
      "post": {
        "operationId": "run-sync-b2b_leads-Vinted-Real-Time-Data-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": {
          "country": {
            "title": "Market region",
            "enum": [
              "US",
              "UK",
              "IE",
              "FR",
              "DE",
              "ES",
              "IT",
              "NL",
              "BE",
              "AT",
              "PT",
              "PL",
              "LT",
              "SE",
              "CZ",
              "HU",
              "SK",
              "RO",
              "DK",
              "FI",
              "GR"
            ],
            "type": "string",
            "description": "Vinted market for this run. Affects currency and the recommended proxy country.",
            "default": "US"
          },
          "enableListingSearch": {
            "title": "Listing Search",
            "type": "boolean",
            "description": "Live keyword search across Vinted — thrift brands, streetwear, and vintage finds. On by default and prefilled so you can click Start and get results in seconds.",
            "default": true
          },
          "searchKeywords": {
            "title": "Search keywords",
            "type": "array",
            "description": "One or more search terms, e.g. \"carhartt detroit jacket\", \"vintage 90s levis 501\", \"patagonia fleece\", \"single stitch band tee\". Required when Listing Search is on.",
            "default": [
              "carhartt detroit jacket",
              "vintage 90s levis 501",
              "patagonia fleece"
            ],
            "items": {
              "type": "string"
            }
          },
          "searchMaxResults": {
            "title": "Max results per keyword",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "Maximum listings to return for each keyword (1–200). Default 10 — perfect for instant demo runs.",
            "default": 10
          },
          "searchSort": {
            "title": "Sort order",
            "enum": [
              "relevance",
              "newest",
              "price_low_to_high",
              "price_high_to_low"
            ],
            "type": "string",
            "description": "How to order search results. \"Just listed\" is ideal for deal alerts on fresh inventory.",
            "default": "relevance"
          },
          "searchBrand": {
            "title": "Brand filter (optional)",
            "type": "string",
            "description": "Limit results to a brand, e.g. Carhartt, Levi's, Patagonia, The North Face, Stüssy, Ralph Lauren.",
            "default": ""
          },
          "searchCondition": {
            "title": "Condition filter",
            "enum": [
              "",
              "new_with_tags",
              "new_without_tags",
              "very_good",
              "good",
              "satisfactory"
            ],
            "type": "string",
            "description": "Filter by item condition.",
            "default": ""
          },
          "searchMinPrice": {
            "title": "Min price (optional)",
            "minimum": 0,
            "maximum": 100000,
            "type": "integer",
            "description": "Minimum listing price in the selected market currency."
          },
          "searchMaxPrice": {
            "title": "Max price (optional)",
            "minimum": 0,
            "maximum": 100000,
            "type": "integer",
            "description": "Maximum listing price — pair with \"Just listed\" sort to catch underpriced steals fast."
          },
          "searchFetchFullDetails": {
            "title": "Enrich with full listing details",
            "type": "boolean",
            "description": "When on, each search result stays ONE row (featureType listing_search, detailsFetched=true) but is enriched with description, fabric/material, colour, full image gallery, and seller context. Adds a little extra time per listing. When off, you get fast search cards with price, title, brand, size, favourites, and condition. Every discovered item is always saved — never filtered out.",
            "default": false
          },
          "enableListingDetails": {
            "title": "Listing Details",
            "type": "boolean",
            "description": "Fetch the full record for specific Vinted listings by URL or listing ID.",
            "default": false
          },
          "listingIds": {
            "title": "Listing IDs (optional)",
            "type": "array",
            "description": "Vinted listing IDs, e.g. 10114456571.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "listingUrls": {
            "title": "Listing URLs (optional)",
            "type": "array",
            "description": "Full Vinted listing URLs (https://www.vinted.com/items/...).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "enableClosetListings": {
            "title": "Wardrobe Listings",
            "type": "boolean",
            "description": "Collect the full active inventory of any reseller or thrift wardrobe — track competitor stock and repricing moves.",
            "default": false
          },
          "sellerUsernames": {
            "title": "Seller member IDs / URLs",
            "type": "array",
            "description": "Vinted member URLs (https://www.vinted.com/member/12345-username) or numeric member IDs. Shared by Wardrobe Listings, Seller Profile, and Sold Comps.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "sellerMaxListings": {
            "title": "Max wardrobe listings per seller",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Maximum active listings to collect per wardrobe (1–1000).",
            "default": 30
          },
          "enableSellerProfile": {
            "title": "Seller Profile",
            "type": "boolean",
            "description": "Extract reseller stats: followers, rating and reviews, wardrobe size, verification signals, and location.",
            "default": false
          },
          "enableSoldHistory": {
            "title": "Sold Item Comps / History",
            "type": "boolean",
            "description": "Completed-listing comps for pricing decisions. Vinted hides sold items from public wardrobes, so this works from sold listing URLs or IDs you provide and reports final status and last price.",
            "default": false
          },
          "soldItemUrls": {
            "title": "Sold listing URLs (optional)",
            "type": "array",
            "description": "Sold or completed Vinted listing URLs to check for comps.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "soldItemIds": {
            "title": "Sold listing IDs (optional)",
            "type": "array",
            "description": "Sold or completed Vinted listing IDs to check for comps.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "soldMaxItems": {
            "title": "Max sold comps",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Maximum sold listings to check per run (1–1000).",
            "default": 30
          },
          "enableScrapeByUrl": {
            "title": "Scrape By URL",
            "type": "boolean",
            "description": "Paste any Vinted URL — search results, member wardrobe, category page, brand feed, or single listing.",
            "default": false
          },
          "scrapeUrls": {
            "title": "Vinted URLs",
            "type": "array",
            "description": "Any Vinted search, member, category, brand, or listing URL.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "webhookUrl": {
            "title": "Webhook URL",
            "type": "string",
            "description": "Optional. Every record is always saved to the run dataset — this webhook is an ADDITIONAL real-time push. Each new row is also POSTed to this URL (Slack, Discord, Zapier, Make, n8n, custom pricing bot).",
            "default": ""
          },
          "webhookFormat": {
            "title": "Webhook format",
            "enum": [
              "json",
              "slack"
            ],
            "type": "string",
            "description": "json = full record object; slack = Slack-friendly message payload.",
            "default": "json"
          },
          "proxyConfiguration": {
            "title": "Proxy settings",
            "type": "object",
            "description": "Residential proxy recommended. Match the country to the Market region above (US by default).",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ],
              "apifyProxyCountry": "US"
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}