{
  "openapi": "3.0.1",
  "info": {
    "title": "Facebook Marketplace Scraper",
    "description": "Scrape Facebook Marketplace listings by location, category, and filters. Extract titles, prices, images, descriptions, seller info, and posting time. Ideal for market research, price tracking, and lead generation.",
    "version": "0.0",
    "x-build-id": "YdPBQDbNghuZmDzH0"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/calm_builder~facebook-marketplace-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-calm_builder-facebook-marketplace-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/calm_builder~facebook-marketplace-scraper/runs": {
      "post": {
        "operationId": "runs-sync-calm_builder-facebook-marketplace-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/calm_builder~facebook-marketplace-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-calm_builder-facebook-marketplace-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": {
          "startUrls": {
            "title": "Marketplace search URLs",
            "type": "array",
            "description": "One Facebook Marketplace **search or category** URL per row. Scraped **exactly as provided** — query, sort, price, and other parameters in the link are not changed.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "itemUrls": {
            "title": "Marketplace item URLs",
            "type": "array",
            "description": "One Facebook Marketplace **listing page** URL per row (`/marketplace/item/...`). Each link is scraped as-is and always returns full listing details.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "keywordSearches": {
            "title": "Query and location",
            "type": "array",
            "description": "One row per keyword search: enter a **query** and the **location slug** where you want to search.",
            "items": {
              "type": "object",
              "properties": {
                "query": {
                  "title": "Search query",
                  "type": "string",
                  "description": "Keyword or phrase to search for, e.g. `iphone 13`, `sectional sofa`, `2020 honda civic`.",
                  "minLength": 1
                },
                "locationSlug": {
                  "title": "Location slug",
                  "type": "string",
                  "description": "Marketplace city slug (lowercase, as in the Facebook URL).",
                  "minLength": 1,
                  "pattern": "^[a-z0-9-]+$"
                }
              },
              "required": [
                "query",
                "locationSlug"
              ]
            }
          },
          "vehicleSearches": {
            "title": "Make and location",
            "type": "array",
            "description": "One row per vehicle search: pick a **make** and the **location slug** where you want to search.",
            "items": {
              "type": "object",
              "properties": {
                "make": {
                  "title": "Make",
                  "type": "string",
                  "description": "Vehicle manufacturer. Choose **All** to include every make for this location.",
                  "editor": "select",
                  "default": "all",
                  "enum": [
                    "all",
                    "acura",
                    "alfa_romeo",
                    "aston_martin",
                    "audi",
                    "bmw",
                    "bentley",
                    "buick",
                    "coda",
                    "cadillac",
                    "chevrolet",
                    "chrysler",
                    "daewoo",
                    "daihatsu",
                    "dodge",
                    "eagle",
                    "ferrari",
                    "fiat",
                    "fisker",
                    "ford",
                    "freightliner",
                    "gmc",
                    "genesis",
                    "geo",
                    "honda",
                    "hummer",
                    "hyundai",
                    "infiniti",
                    "isuzu",
                    "jaguar",
                    "jeep",
                    "kia",
                    "lamborghini",
                    "land_rover",
                    "lexus",
                    "lincoln",
                    "lotus",
                    "lucid",
                    "mini",
                    "maserati",
                    "maybach",
                    "mazda",
                    "mclaren",
                    "mercedes_benz",
                    "mercury",
                    "mitsubishi",
                    "nissan",
                    "oldsmobile",
                    "panoz",
                    "plymouth",
                    "polestar",
                    "pontiac",
                    "porsche",
                    "ram",
                    "rivian",
                    "rolls_royce",
                    "srt",
                    "saab",
                    "saturn",
                    "scion",
                    "smart",
                    "subaru",
                    "suzuki",
                    "tesla",
                    "toyota",
                    "volkswagen",
                    "volvo"
                  ],
                  "enumTitles": [
                    "All",
                    "Acura",
                    "Alfa Romeo",
                    "Aston Martin",
                    "Audi",
                    "BMW",
                    "Bentley",
                    "Buick",
                    "CODA",
                    "Cadillac",
                    "Chevrolet",
                    "Chrysler",
                    "Daewoo",
                    "Daihatsu",
                    "Dodge",
                    "Eagle",
                    "Ferrari",
                    "Fiat",
                    "Fisker",
                    "Ford",
                    "Freightliner",
                    "GMC",
                    "Genesis",
                    "Geo",
                    "Honda",
                    "Hummer",
                    "Hyundai",
                    "Infiniti",
                    "Isuzu",
                    "Jaguar",
                    "Jeep",
                    "Kia",
                    "Lamborghini",
                    "Land Rover",
                    "Lexus",
                    "Lincoln",
                    "Lotus",
                    "Lucid",
                    "MINI",
                    "Maserati",
                    "Maybach",
                    "Mazda",
                    "Mclaren",
                    "Mercedes-Benz",
                    "Mercury",
                    "Mitsubishi",
                    "Nissan",
                    "Oldsmobile",
                    "Panoz",
                    "Plymouth",
                    "Polestar",
                    "Pontiac",
                    "Porsche",
                    "Ram",
                    "Rivian",
                    "Rolls-Royce",
                    "SRT",
                    "Saab",
                    "Saturn",
                    "Scion",
                    "Smart",
                    "Subaru",
                    "Suzuki",
                    "Tesla",
                    "Toyota",
                    "Volkswagen",
                    "Volvo"
                  ]
                },
                "locationSlug": {
                  "title": "Location slug",
                  "type": "string",
                  "description": "Marketplace city slug (lowercase, as in the Facebook URL).",
                  "minLength": 1,
                  "pattern": "^[a-z0-9-]+$"
                }
              },
              "required": [
                "locationSlug"
              ]
            }
          },
          "vehicleMinYear": {
            "title": "Minimum year",
            "minimum": 1900,
            "maximum": 2030,
            "type": "integer",
            "description": "Earliest model year to include. Leave empty for no minimum.\n\nIf both min and max year are set, min must be ≤ max; invalid pairs are skipped at runtime."
          },
          "vehicleMaxYear": {
            "title": "Maximum year",
            "minimum": 1900,
            "maximum": 2030,
            "type": "integer",
            "description": "Latest model year to include. Leave empty for no maximum.\n\nIf both min and max year are set, min must be ≤ max; invalid pairs are skipped at runtime."
          },
          "vehicleBodyStyles": {
            "title": "Body style",
            "uniqueItems": true,
            "type": "array",
            "description": "Filter by body style. Leave empty to include all body styles.",
            "items": {
              "type": "string",
              "enum": [
                "convertible",
                "coupe",
                "hatchback",
                "minivan",
                "sedan",
                "station_wagon",
                "suv",
                "truck",
                "small_car",
                "other"
              ],
              "enumTitles": [
                "Convertible",
                "Coupe",
                "Hatchback",
                "Minivan",
                "Sedan",
                "Station wagon",
                "SUV",
                "Truck",
                "Small Car",
                "Other"
              ]
            }
          },
          "vehicleMinMileage": {
            "title": "Minimum mileage",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum odometer reading. Units follow the local Marketplace listing format. Leave empty for no minimum.\n\nIf both min and max mileage are set, min must be ≤ max; invalid pairs are skipped at runtime."
          },
          "vehicleMaxMileage": {
            "title": "Maximum mileage",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum odometer reading. Units follow the local Marketplace listing format. Leave empty for no maximum.\n\nIf both min and max mileage are set, min must be ≤ max; invalid pairs are skipped at runtime."
          },
          "vehicleTransmission": {
            "title": "Transmission",
            "enum": [
              "all",
              "automatic",
              "manual"
            ],
            "type": "string",
            "description": "Filter by transmission type.",
            "default": "all"
          },
          "sortBy": {
            "title": "Sort",
            "enum": [
              "best_match",
              "price_ascend",
              "price_descend",
              "creation_time_descend",
              "creation_time_ascend",
              "distance_ascend",
              "distance_descend",
              "vehicle_mileage_ascend",
              "vehicle_mileage_descend",
              "vehicle_year_descend",
              "vehicle_year_ascend"
            ],
            "type": "string",
            "description": "Result order for built searches. **Suggested** adds no sort parameter. Options marked *(vehicles only)* apply to vehicle rows only.",
            "default": "best_match"
          },
          "exactMatch": {
            "title": "Exact match",
            "type": "boolean",
            "description": "When enabled, Facebook matches the search query more strictly (`exact=true`). When disabled, broader matching is used (`exact=false`).",
            "default": false
          },
          "minPrice": {
            "title": "Minimum price",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum price in the local Marketplace currency. Leave empty for no minimum.\n\nIf both min and max are set, min must be ≤ max; invalid pairs are skipped at runtime."
          },
          "maxPrice": {
            "title": "Maximum price",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum price in the local Marketplace currency. Leave empty for no maximum.\n\nIf both min and max are set, min must be ≤ max; invalid pairs are skipped at runtime."
          },
          "conditions": {
            "title": "Condition",
            "uniqueItems": true,
            "type": "array",
            "description": "Filter by item condition. Leave empty to include all conditions.",
            "items": {
              "type": "string",
              "enum": [
                "new",
                "used_like_new",
                "used_good",
                "used_fair"
              ],
              "enumTitles": [
                "New",
                "Used – like new",
                "Used – good",
                "Used – fair"
              ]
            }
          },
          "dateListed": {
            "title": "Date listed",
            "enum": [
              "all",
              "last_24_hours",
              "last_7_days",
              "last_30_days"
            ],
            "type": "string",
            "description": "Only include listings posted within the selected time window.",
            "default": "all"
          },
          "availability": {
            "title": "Availability",
            "enum": [
              "available",
              "sold"
            ],
            "type": "string",
            "description": "Filter by whether listings are still available or already sold.",
            "default": "available"
          },
          "maxListings": {
            "title": "Maximum listings per search",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Cap listings collected per Direct Search URL or per built search row (each keyword or vehicle row counts as one search). Does **not** apply to Direct item URLs — each item link produces one listing.",
            "default": 10
          },
          "fetchDetails": {
            "title": "Fetch detailed information",
            "type": "boolean",
            "description": "Visit each listing page for richer fields (description, seller, extra metadata). Slower, but more complete output.",
            "default": false
          },
          "deduplicateListings": {
            "title": "Deduplicate listings across searches",
            "type": "boolean",
            "description": "When enabled, each listing is saved to the dataset **at most once**, even if it appears in multiple search results. The first search (or direct item URL) that reaches the listing sets its `sourceUrl` in the output.\n\nPer-search caps still apply: skipped duplicates do not count toward **Maximum listings per search**, so overlapping searches can keep paginating until each reaches its cap or runs out of results.",
            "default": 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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}