{
  "openapi": "3.0.1",
  "info": {
    "title": "Farfetch Scraper — Prices, Sizes, Boutiques & Style Codes",
    "description": "Scrape Farfetch for designer clothing, bags and shoes: prices, real per-size stock, the selling boutique, images and the brandStyleId manufacturer style code you can join on across retailers. 12 markets, no login, no proxy needed.",
    "version": "0.1",
    "x-build-id": "csvvnUBmKMA0jfbcO"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/studio-amba~farfetch-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-studio-amba-farfetch-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/studio-amba~farfetch-scraper/runs": {
      "post": {
        "operationId": "runs-sync-studio-amba-farfetch-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/studio-amba~farfetch-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-studio-amba-farfetch-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": {
          "searchQueries": {
            "title": "Search Queries",
            "type": "array",
            "description": "One or more search terms, e.g. 'gucci bag' or 'prada dress'. Leave empty to browse the whole catalogue (978,000+ products) filtered by the options below. Note: Farfetch does NOT index style codes, so searching for a brandStyleId always returns zero.",
            "default": [
              "gucci bag"
            ],
            "items": {
              "type": "string"
            }
          },
          "searchQuery": {
            "title": "Search Query (single)",
            "type": "string",
            "description": "Convenience alternative to Search Queries when you only want one term."
          },
          "mode": {
            "title": "Depth",
            "enum": [
              "index",
              "full"
            ],
            "type": "string",
            "description": "index = listing fields only (name, brand, price, available sizes, category, image, stock). Fast. full = also fetches each product's detail record, adding brandStyleId, the complete size ladder with per-size quantities, the selling boutique, colour, composition, made-in and the editorial description. Detail calls are batched 16 products per request, so full mode costs one extra request per 16 products rather than one per product.",
            "default": "index"
          },
          "market": {
            "title": "Market",
            "enum": [
              "be",
              "nl",
              "fr",
              "de",
              "it",
              "es",
              "at",
              "ie",
              "uk",
              "ch",
              "se",
              "dk"
            ],
            "type": "string",
            "description": "Which Farfetch storefront to read. Prices, currency and assortment are per market.",
            "default": "be"
          },
          "maxItems": {
            "title": "Max Items",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Stop after this many products across all queries. Farfetch caps pagination at 10,000 products per query — use brand, category or price filters to reach past that.",
            "default": 100
          },
          "brand": {
            "title": "Brand",
            "type": "string",
            "description": "Filter by brand name, e.g. 'Gucci'. Resolved to Farfetch's own brand id through their brand facet, and the log prints which one was chosen plus the near-misses (Gucci vs Gucci Kids vs Gucci Pre-Owned)."
          },
          "categoryId": {
            "title": "Category ID",
            "type": "string",
            "description": "Farfetch category id, e.g. 141258 Women, 141259 Men, 141260 Kids, 135967 Clothing, 135971 Bags. Read it off any Farfetch category URL."
          },
          "onSaleOnly": {
            "title": "Sale Items Only",
            "type": "boolean",
            "description": "Return only discounted products.",
            "default": false
          },
          "minPrice": {
            "title": "Minimum Price",
            "minimum": 0,
            "type": "integer",
            "description": "Lowest price to include, in the market's currency."
          },
          "maxPrice": {
            "title": "Maximum Price",
            "minimum": 0,
            "type": "integer",
            "description": "Highest price to include, in the market's currency."
          },
          "minDiscountPercent": {
            "title": "Minimum Discount %",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Only products reduced by at least this much."
          },
          "sortBy": {
            "title": "Sort By",
            "enum": [
              "RANKING",
              "PRICE",
              "NEW_ITEMS"
            ],
            "type": "string",
            "description": "Farfetch offers exactly three sort options.",
            "default": "RANKING"
          },
          "sortOrder": {
            "title": "Sort Order",
            "enum": [
              "ASC",
              "DESC"
            ],
            "type": "string",
            "description": "Direction for the sort above. With sortBy PRICE, ASC gives cheapest first.",
            "default": "ASC"
          },
          "pageSize": {
            "title": "Page Size",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Products per listing request. 100 is the verified ceiling and also the right answer: a Farfetch API call takes 8-10 seconds whether you ask for 1 product or 100.",
            "default": 100
          },
          "detailBatchSize": {
            "title": "Detail Batch Size",
            "minimum": 1,
            "maximum": 16,
            "type": "integer",
            "description": "Products per detail request in full mode. Farfetch caps a GraphQL document at 2,048 fields and the detail query is ~127 fields per product, so 16 is the hard ceiling (verified: 16 returns 306 KB and HTTP 200, 18 is rejected). The actor splits and retries automatically if it ever hits the limit.",
            "default": 16
          },
          "concurrency": {
            "title": "Concurrency",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "Parallel requests to Farfetch. Their gateway is slow per call but parallelises well — 5 concurrent calls finished in the time one takes.",
            "default": 4
          },
          "proxyConfiguration": {
            "title": "Proxy Configuration",
            "type": "object",
            "description": "Leave this OFF. The actor opens Farfetch in a hosted browser that gets past its Akamai protection, and every request goes out from that browser, so this setting is not used on that route. It only applies if the hosted browser fails and the actor falls back to a local browser: a direct connection is what worked there, and a proxy is an escape hatch if Akamai scores the outbound IP range badly. If a proxy is set and Farfetch then refuses the session it minted, the run drops the proxy and continues directly rather than failing -- the log says so when it happens.",
            "default": {
              "useApifyProxy": false
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}