{
  "openapi": "3.0.1",
  "info": {
    "title": "Classified Ads Scraper for Gumtree UK - Listings & Seller Leads",
    "description": "Scrape Gumtree UK (gumtree.com) classified ads: price, exact posting time, location, photos and every attribute for cars, vans, property, jobs and pets. Full listing pages, trade-seller leads and monitor mode for new listings. No login. Independent tool, not affiliated with Gumtree.",
    "version": "0.1",
    "x-build-id": "fnmk7NVqY7zk16QHG"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapesage~gumtree-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapesage-gumtree-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/scrapesage~gumtree-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapesage-gumtree-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/scrapesage~gumtree-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapesage-gumtree-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 keywords",
            "type": "array",
            "description": "Keywords to search on Gumtree UK, e.g. <code>iphone</code>, <code>sofa</code>, <code>ford transit</code>. Each keyword is combined with every category and location below. Leave empty to browse a whole category or location.",
            "items": {
              "type": "string"
            }
          },
          "categories": {
            "title": "Categories",
            "type": "array",
            "description": "Optional Gumtree category, as the slug from a Gumtree URL (<code>search_category=</code>) or its name. Main ones: <code>cars</code>, <code>vans</code>, <code>motorbikes-scooters</code>, <code>campervans-motorhomes</code>, <code>for-sale</code>, <code>property-to-rent</code>, <code>property-for-sale</code>, <code>jobs</code>, <code>pets</code>, <code>dogs</code>, <code>business-services</code>. Deeper slugs such as <code>iphone</code> or <code>sofas</code> work too. Combined with every keyword and location.",
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Locations",
            "type": "array",
            "description": "Optional town, city or postcode district, e.g. <code>london</code>, <code>manchester</code>, <code>leeds</code>, <code>LS1</code>. A full postcode is searched as its district (<code>M1 1AA</code> becomes <code>M1</code>). A location Gumtree does not recognise is skipped and named on the run card instead of silently searching the whole UK. Combined with every keyword and category.",
            "items": {
              "type": "string"
            }
          },
          "startUrls": {
            "title": "Gumtree URLs (search, listing or seller pages)",
            "type": "array",
            "description": "Paste gumtree.com URLs: a search results page with your filters already applied (e.g. <code>https://www.gumtree.com/search?search_category=cars&search_location=london&max_price=8000</code>), single listing pages (<code>/p/...</code>), or a seller's page of ads (<code>/sellerads/...</code>). Listing URLs always return the full listing page.",
            "items": {
              "type": "string"
            }
          },
          "urlsFromFile": {
            "title": "URLs from a file or pasted list",
            "type": "string",
            "description": "Many URLs at once: paste them one per line, or give one link to a .txt/.csv file, a Google Sheet or a Google Drive file that lists them."
          },
          "maxItems": {
            "title": "Max listings",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Maximum number of listings to return across all searches and URLs (seller leads are extra). Each search gets a fair share. Gumtree shows up to 50 result pages per search; past that the actor continues with other sort orders.",
            "default": 60
          },
          "sort": {
            "title": "Sort by",
            "enum": [
              "relevance",
              "date",
              "price-low",
              "price-high",
              "distance"
            ],
            "type": "string",
            "description": "Result order for keyword searches. Featured (paid) ads always appear first on Gumtree.",
            "default": "relevance"
          },
          "minPrice": {
            "title": "Min price (£)",
            "minimum": 0,
            "type": "integer",
            "description": "Only return listings at or above this price. Applied exactly to every row; for rentals the monthly rent is compared (weekly rents are converted)."
          },
          "maxPrice": {
            "title": "Max price (£)",
            "minimum": 0,
            "type": "integer",
            "description": "Only return listings at or below this price. Applied exactly to every row (Gumtree's own price filter lets some higher prices through); for rentals the monthly rent is compared."
          },
          "distance": {
            "title": "Distance (miles)",
            "minimum": 0,
            "type": "integer",
            "description": "Widen the search around the location by this many miles. Gumtree offers 1, 3, 5, 10, 15, 30, 50, 75, 100 and 1000; other values are rounded up to the next one."
          },
          "sellerType": {
            "title": "Seller type",
            "enum": [
              "any",
              "trade",
              "private"
            ],
            "type": "string",
            "description": "Only trade sellers (dealers, shops, agencies, recruiters) or only private sellers. Applied exactly to every row; categories that do not show a seller type (e.g. pets) return nothing for a trade/private filter.",
            "default": "any"
          },
          "includeListingDetails": {
            "title": "Open each listing page (full details)",
            "type": "boolean",
            "description": "Adds the full description, every photo, the complete attribute list (vehicle specs, running costs, property details, job terms...), created/updated dates, the seller's name, rating, reviews, years on Gumtree and profile link, and the vehicle history check for cars. One extra page per listing.",
            "default": false
          },
          "includeSellerLeads": {
            "title": "Add trade-seller leads",
            "type": "boolean",
            "description": "Also output one lead record per unique TRADE seller found (dealers, shops, letting agents, recruiters, service businesses): business name, rating and review breakdown, years on Gumtree, last active, profile link, logo, location, how many of their listings this run found, and a lead score. Private sellers are never output as leads.",
            "default": false
          },
          "monitorMode": {
            "title": "Monitor mode (only new listings)",
            "type": "boolean",
            "description": "Remember what earlier runs delivered and output only listings posted since (plus any whose price dropped). The first run delivers the newest listings and sets the starting point. Ideal on an Apify Schedule.",
            "default": false
          },
          "monitorKey": {
            "title": "Monitor key",
            "type": "string",
            "description": "Name for this monitor's memory. Use a different key for each saved search you schedule.",
            "default": "default"
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "The default Apify proxy works for Gumtree. The actor starts on datacenter addresses and moves to UK residential addresses by itself if Gumtree refuses them.",
            "default": {
              "useApifyProxy": true
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}