{
  "openapi": "3.0.1",
  "info": {
    "title": "Vinted Cross-Country Arbitrage Scanner",
    "description": "Compare sampled Vinted asking prices across country markets. Get public listings, item and seller details, or saved price and presence checks to guide resale research.",
    "version": "0.0",
    "x-build-id": "HtPtcSpoab4cbUN5i"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/maximedupre~vinted-arbitrage/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-maximedupre-vinted-arbitrage",
        "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/maximedupre~vinted-arbitrage/runs": {
      "post": {
        "operationId": "runs-sync-maximedupre-vinted-arbitrage",
        "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/maximedupre~vinted-arbitrage/run-sync": {
      "post": {
        "operationId": "run-sync-maximedupre-vinted-arbitrage",
        "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": [
          "resultType"
        ],
        "properties": {
          "resultType": {
            "title": "Result type",
            "enum": [
              "comparison",
              "listings",
              "items",
              "sellers",
              "priceHistory",
              "sellThrough",
              "sold",
              "trending"
            ],
            "type": "string",
            "description": "Choose the results to return."
          },
          "currency": {
            "title": "Comparison currency",
            "enum": [
              "EUR",
              "GBP",
              "PLN",
              "CZK",
              "HUF",
              "RON",
              "DKK",
              "SEK",
              "USD"
            ],
            "type": "string",
            "description": "Convert sampled market prices to this currency. Original prices and currencies are also kept.",
            "default": "EUR"
          },
          "sellerUrls": {
            "title": "Seller URLs",
            "type": "array",
            "description": "Vinted seller profile links to inspect. Returns public profile data and visible inventory.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "query": {
            "title": "Product search",
            "type": "string",
            "description": "One product query. Used for Market comparison, Sourcing listings, Sold listings, Trending listings, and Sell-through tracking by search. For Sell-through tracking, leave this empty when using Item URLs."
          },
          "markets": {
            "title": "Country markets",
            "minItems": 1,
            "maxItems": 23,
            "type": "array",
            "description": "Markets for searches and comparisons, subject to public data being available. Select at least two for Market comparison and at least one for a listing search. Choose up to 23. Item and seller URLs use the market in each link.",
            "items": {
              "type": "string",
              "enum": [
                "FR",
                "DE",
                "GB",
                "IT",
                "ES",
                "NL",
                "PL",
                "PT",
                "BE",
                "AT",
                "LT",
                "CZ",
                "SK",
                "HU",
                "RO",
                "HR",
                "FI",
                "DK",
                "SE",
                "EE",
                "GR",
                "IE",
                "LU",
                "LV",
                "SI",
                "US"
              ],
              "enumTitles": [
                "France",
                "Germany",
                "United Kingdom",
                "Italy",
                "Spain",
                "Netherlands",
                "Poland",
                "Portugal",
                "Belgium",
                "Austria",
                "Lithuania",
                "Czech Republic",
                "Slovakia",
                "Hungary",
                "Romania",
                "Croatia",
                "Finland",
                "Denmark",
                "Sweden",
                "Estonia",
                "Greece",
                "Ireland",
                "Luxembourg",
                "Latvia",
                "Slovenia",
                "United States"
              ]
            }
          },
          "itemUrls": {
            "title": "Item URLs",
            "type": "array",
            "description": "Vinted item links for Item details, Price history, or Sell-through tracking by watchlist. For Sell-through tracking, use these links or a Product search, not both.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "trackingKey": {
            "title": "Tracking name",
            "type": "string",
            "description": "A name for saved observations in Price history and Sell-through tracking. Use the same name and inputs in later runs to compare changes. Trending listings can also use this name to compare engagement across runs. Run this Actor again to collect new observations; this field does not schedule runs."
          },
          "minPrice": {
            "title": "Minimum asking price",
            "minimum": 0,
            "type": "number",
            "description": "Lowest asking price to include, in each market’s local currency. Applies to searches for Market comparison, Sourcing listings, Sell-through tracking, Sold listings, and Trending listings."
          },
          "maxPrice": {
            "title": "Maximum asking price",
            "minimum": 0,
            "type": "number",
            "description": "Highest asking price to include, in each market’s local currency. Applies to all product searches."
          },
          "brands": {
            "title": "Brands",
            "type": "array",
            "description": "Brand names or known Vinted brand IDs. Applies to all product searches.",
            "items": {
              "type": "string"
            }
          },
          "categories": {
            "title": "Departments or categories",
            "type": "array",
            "description": "Department or category names, or known Vinted category IDs. Applies to all product searches.",
            "items": {
              "type": "string"
            }
          },
          "conditions": {
            "title": "Conditions",
            "type": "array",
            "description": "Item conditions, such as New with tags or Very good. Applies to all product searches.",
            "items": {
              "type": "string"
            }
          },
          "sizes": {
            "title": "Sizes",
            "type": "array",
            "description": "Clothing, shoe, or children’s sizes, or known Vinted size IDs. Applies to all product searches.",
            "items": {
              "type": "string"
            }
          },
          "colours": {
            "title": "Colours",
            "type": "array",
            "description": "Colour names or known Vinted colour IDs. Applies to all product searches.",
            "items": {
              "type": "string"
            }
          },
          "sort": {
            "title": "Search order",
            "enum": [
              "relevance",
              "newest",
              "priceAsc",
              "priceDesc"
            ],
            "type": "string",
            "description": "Order for product searches in Market comparison, Sourcing listings, Sell-through tracking, Sold listings, and Trending listings. This sets the search order used to collect listings."
          },
          "maxItems": {
            "title": "Listing limit",
            "minimum": 1,
            "type": "integer",
            "description": "Stop after this many listings across the run, including listings sampled for Market comparison or returned from seller inventory. Leave empty to continue until no more public results are available."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}