{
  "openapi": "3.0.1",
  "info": {
    "title": "Gumtree $1.75💰 [AUS-UK-SA] Search By URL or Keywords",
    "description": "Scrape Gumtree UK, Australia and South Africa by URL, keywords or filters: price, seller type, car make, year and mileage. Each result includes the full listing: price, description, photos, location, seller and specs, for $1.75 per 1,000. Optional phones, UK emails and price-drop monitoring.",
    "version": "0.0",
    "x-build-id": "TKYvXGwvKIk6hujYS"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/memo23~gumtree-cheerio/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-memo23-gumtree-cheerio",
        "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/memo23~gumtree-cheerio/runs": {
      "post": {
        "operationId": "runs-sync-memo23-gumtree-cheerio",
        "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/memo23~gumtree-cheerio/run-sync": {
      "post": {
        "operationId": "run-sync-memo23-gumtree-cheerio",
        "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": "Start URLs",
            "type": "array",
            "description": "Power-user mode: exact URLs. Leave empty (or omit) if you use **Search by filters** instead. **If you fill both this and filters, only these URLs are used.**",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "includeListingDetails": {
            "title": "Include listing details",
            "type": "boolean",
            "description": "Open each listing's detail page and add the full description, all photos, specs and seller data to the row. Turn off for faster, card-only rows. Default: true.",
            "default": true
          },
          "includePhoneDetails": {
            "title": "Include phone details",
            "type": "boolean",
            "description": "Add the seller's phone number where the listing shows one. Paying users only; charged per phone number found. UK works directly; Australia also needs your logged-in gumtree.com.au cookies in a `cookies` array (JSON/API input only). Default: false.",
            "default": false
          },
          "enrichEmails": {
            "title": "Enrich with contact emails (experimental)",
            "type": "boolean",
            "description": "UK listings only, experimental. Looks for a contact email on the seller's own website and adds contactEmail, contactWebsite and a detailed emailEnrichment object. Charged only when an email is found. Default: false.",
            "default": false
          },
          "monitoringMode": {
            "title": "Monitoring mode: only new listings",
            "type": "boolean",
            "description": "UK, Australia and South Africa searches. Returns only listings that your previous runs of this actor have not returned yet, so scheduled runs deliver just the new ads; each row gets changeType \"new\". Each already-seen listing it skips is charged a small fee, far below a full result. Listings cut off by Max items are not marked as seen, so the next run returns them. Default: false.",
            "default": false
          },
          "monitoringPriceChanges": {
            "title": "Monitoring mode: also return price changes",
            "enum": [
              "none",
              "drops",
              "any"
            ],
            "type": "string",
            "description": "With Monitoring mode on, also return listings seen before whose price changed since: `drops` for price drops only, `any` for drops and increases. Those rows get changeType \"price_drop\" or \"price_increase\" and previousPrice, and are charged as normal results. Prices are tracked from the first run with this version on, so changes show up from the second run. Default: `none` (new listings only).",
            "default": "none"
          },
          "listingStartDate": {
            "title": "Only listings posted on or after",
            "type": "string",
            "description": "Skips listings posted before this date. Format YYYY-MM-DD, e.g. 2026-10-01. Works on UK, Australia and South Africa searches; UK listings only show their age in whole days, so the UK cutoff is to the day. Default: empty (no cutoff)."
          },
          "gumtreeSearchRegion": {
            "title": "Gumtree site / region",
            "enum": [
              "UK",
              "AU",
              "ZA"
            ],
            "type": "string",
            "description": "Which Gumtree site to search. Leave empty if you only use **Start URLs**."
          },
          "gumtreeSearchKeyword": {
            "title": "Search keyword",
            "type": "string",
            "description": "Filter mode: search text, e.g. `iphone` or `toyota corolla`. Optional on UK and AU. On ZA a keyword alone searches all of gumtree.co.za; without one, ZA needs the category and location fields. Ignored when Start URLs are set."
          },
          "gumtreeSearchKeywords": {
            "title": "Search keywords (list)",
            "type": "array",
            "description": "Filter mode: several search texts in one run, e.g. [\"iphone 15\", \"ipad air\"]. Each keyword becomes its own search (and is combined with every location in the location lists), each with its own Max items. Works on UK, AU and ZA. A listing found by more than one search is returned and charged once. Up to 500 searches per run.",
            "items": {
              "type": "string"
            }
          },
          "gumtreeSearchLocation": {
            "title": "Location",
            "type": "string",
            "description": "UK: free-text (e.g. Edinburgh). AU/ZA: optional; AU still needs Category ID + Location ID."
          },
          "gumtreeSearchLocations": {
            "title": "Locations (list, UK)",
            "type": "array",
            "description": "UK filter mode: several free-text locations, e.g. [\"Edinburgh\", \"Glasgow\", \"Leeds\"]. Every keyword is searched in every location. Leave empty to use the single Location field (or all of the UK).",
            "items": {
              "type": "string"
            }
          },
          "gumtreeSearchCategorySlug": {
            "title": "Category slug",
            "type": "string",
            "description": "UK: search_category (e.g. all, property-to-rent). ZA: segment without `s-` (e.g. houses-flats-for-sale), used together with the ZA location slug, category ID and location ID."
          },
          "gumtreeSearchLocationSlug": {
            "title": "Location slug (South Africa only)",
            "type": "string",
            "description": "ZA: middle path segment (e.g. pretoria-tshwane)."
          },
          "gumtreeSearchSort": {
            "title": "Sort order",
            "enum": [
              "most_recent",
              "best_match",
              "nearest"
            ],
            "type": "string",
            "description": "Filter mode: `most_recent` (default), `best_match`, or `nearest` (UK; falls back to most recent on other sites).",
            "default": "most_recent"
          },
          "gumtreeSearchCategoryId": {
            "title": "Category ID (AU/ZA) — e.g. 18320 from …/c18320l3008303… or ZA 9074 from …v1c9074l3100094…",
            "type": "string",
            "description": "<p><strong>Required for Australia</strong> filter mode (with Location ID). Copy the number after <code>c</code> in the path segment that looks like <code>c18320l3008303</code>.</p><p><strong>Examples:</strong> AU cars search <code>…/s-cars-vans-utes/perth/c18320l3008303</code> → category <strong>18320</strong>. ZA <code>…/v1c9074l3100094p1</code> → category <strong>9074</strong>.</p><p>Not used for UK (UK uses category slug + free-text location instead).</p>"
          },
          "gumtreeSearchLocationId": {
            "title": "Location ID (AU/ZA) — e.g. 3008303 from …/c18320l3008303… or ZA 3100094 from …l3100094…",
            "type": "string",
            "description": "<p><strong>Required for Australia</strong> filter mode (with Category ID). Copy the number after <code>l</code> in the same segment (before any <code>?</code>).</p><p><strong>Examples:</strong> <code>…/c18320l3008303</code> → location <strong>3008303</strong>. ZA <code>…v1c9074l3100094p1</code> → location <strong>3100094</strong>.</p><p>Open any real search on gumtree.com.au / gumtree.co.za and paste the IDs from the address bar.</p>"
          },
          "gumtreeSearchLocationIds": {
            "title": "Location IDs (list, AU)",
            "type": "array",
            "description": "AU filter mode: several numeric location IDs, e.g. [\"3008303\", \"3005721\"] for Perth and Brisbane (copy the number after `l` in a search URL segment like c18320l3008303). Every keyword is searched in every location. Category ID is still required.",
            "items": {
              "type": "string"
            }
          },
          "gumtreeSearchMinPrice": {
            "title": "Min price (UK, AU)",
            "minimum": 0,
            "type": "integer",
            "description": "UK and AU: only listings priced at or above this amount (whole pounds or dollars), e.g. 5000. Default: no minimum."
          },
          "gumtreeSearchMaxPrice": {
            "title": "Max price (UK, AU)",
            "minimum": 0,
            "type": "integer",
            "description": "UK and AU: only listings priced at or below this amount (whole pounds or dollars), e.g. 15000. Default: no maximum."
          },
          "gumtreeSearchSellerType": {
            "title": "Seller type (UK, AU cars)",
            "enum": [
              "private",
              "trade"
            ],
            "type": "string",
            "description": "UK: private or trade sellers, in any category. AU: private sellers or dealers, cars category only. Default: both."
          },
          "gumtreeSearchRadius": {
            "title": "Radius in miles (UK)",
            "enum": [
              "0",
              "1",
              "3",
              "5",
              "10",
              "15",
              "30",
              "50",
              "75",
              "100",
              "150",
              "250",
              "500",
              "nationwide"
            ],
            "type": "string",
            "description": "UK: search radius around the Location. Default: Gumtree's own (0 miles, the location itself)."
          },
          "gumtreeSearchCarMake": {
            "title": "Car make (UK, AU)",
            "type": "string",
            "description": "UK and AU cars: make, e.g. `bmw`, `toyota`, `alfa romeo`. On the UK it switches the search to the cars category if no category is set. AU still needs Category ID 18320 (cars) and a Location ID."
          },
          "gumtreeSearchCarModel": {
            "title": "Car model (UK, AU)",
            "type": "string",
            "description": "UK and AU cars: model, used together with Car make, e.g. `3 series`, `corolla`."
          },
          "gumtreeSearchCarYearMin": {
            "title": "Year from (AU cars)",
            "minimum": 1900,
            "type": "integer",
            "description": "AU cars: registration year from, e.g. 2015. Default: any."
          },
          "gumtreeSearchCarYearMax": {
            "title": "Year to (AU cars)",
            "minimum": 1900,
            "type": "integer",
            "description": "AU cars: registration year up to, e.g. 2020. Default: any."
          },
          "gumtreeSearchCarMileageMin": {
            "title": "Odometer from, km (AU cars)",
            "minimum": 0,
            "type": "integer",
            "description": "AU cars: odometer reading from, in kilometres. Default: any."
          },
          "gumtreeSearchCarMileageMax": {
            "title": "Odometer to, km (AU cars)",
            "minimum": 0,
            "type": "integer",
            "description": "AU cars: odometer reading up to, in kilometres, e.g. 100000. Default: any."
          },
          "gumtreeSearchCarFuelType": {
            "title": "Fuel type (UK, AU cars)",
            "enum": [
              "petrol",
              "diesel",
              "electric",
              "hybrid"
            ],
            "type": "string",
            "description": "UK and AU cars: fuel type. Default: any."
          },
          "gumtreeSearchCarTransmission": {
            "title": "Transmission (UK, AU cars)",
            "enum": [
              "automatic",
              "manual"
            ],
            "type": "string",
            "description": "UK and AU cars: gearbox type. Default: any."
          },
          "maxItems": {
            "title": "Max items per start URL",
            "type": "integer",
            "description": "Maximum listings to collect for each search start URL. If you add several search URLs, each can yield up to this many items (subject to pay-per-result and charge limits).",
            "default": 10000
          },
          "maxConcurrency": {
            "title": "Max Concurrency",
            "type": "integer",
            "description": "Maximum number of pages that can be processed at the same time.",
            "default": 30
          },
          "minConcurrency": {
            "title": "Min Concurrency",
            "type": "integer",
            "description": "Minimum number of pages that will be processed at the same time.",
            "default": 1
          },
          "maxRequestRetries": {
            "title": "Max Request Retries",
            "type": "integer",
            "description": "Number of times the crawler will retry a failed request before giving up.",
            "default": 30
          },
          "proxy": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Kept for compatibility. The actor routes requests through its own residential proxies (Australian exits for gumtree.com.au), so this setting does not change how pages are fetched.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ]
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}