Vexaloom Labs

Craigslist Classifieds Scraper with Category Attributes

Scrape Craigslist search results and individual posts across any city subdomain, with category-specific attributes for jobs, housing, autos, and for-sale posts. No login or proxy required.

Input schema

Input fields, types, required flags, descriptions, defaults, and prefills come from the published definition. Prefill examples are distinct from defaults.

FieldTypeRequiredDescription
modestringrequiredWhat to collect: keyword search, a category browse, specific Craigslist URLs, or the region/subarea reference list.
regionstringoptionalCraigslist city/region to search (mode=search/category). Pick a common region, or use Custom region for any of the 707 Craigslist sites.
customRegionstringoptionalAny Craigslist hostname or abbreviation (e.g. humboldt, tokyo, sfbay). Overrides Region. (mode=search/category)
Show all input fields
FieldTypeRequiredDescription
modestringrequiredWhat to collect: keyword search, a category browse, specific Craigslist URLs, or the region/subarea reference list.
regionstringoptionalCraigslist city/region to search (mode=search/category). Pick a common region, or use Custom region for any of the 707 Craigslist sites.
customRegionstringoptionalAny Craigslist hostname or abbreviation (e.g. humboldt, tokyo, sfbay). Overrides Region. (mode=search/category)
subareastringoptionalOptional Craigslist subarea abbreviation inside the region (e.g. sfc, eby, brk). Leave blank for the whole region. (mode=search/category)
categorystringoptionalCraigslist category to search or browse. The default is all for-sale listings.
searchQueriesarrayoptionalOne or more keywords. Each query is searched separately; results are de-duplicated. Leave empty for a category browse. (mode=search)
startUrlsarrayoptionalCraigslist search pages, new-style /view/d/... post URLs, or old /region/category/post-id.html URLs. (mode=byUrl)
minPriceintegeroptionalOnly listings at or above this price. Posts without a price are excluded when a price filter is set.
maxPriceintegeroptionalOnly listings at or below this price. Posts without a price are excluded when a price filter is set.
postedTodaybooleanoptionalOnly listings posted in the last 24 hours (Craigslist's posted-today filter).
hasImagebooleanoptionalOnly listings with at least one photo.
titlesOnlybooleanoptionalMatch the keywords against titles only instead of titles and descriptions.
sellerTypestringoptionalFilter by owner, dealer, or either.
sortBystringoptionalOrder of results within each query.
conditionstringoptionalFor for-sale and auto categories: only items in this condition.
minBedroomsintegeroptionalHousing only.
maxBedroomsintegeroptionalHousing only.
minBathroomsintegeroptionalHousing only.
maxBathroomsintegeroptionalHousing only.
minSqftintegeroptionalHousing only.
maxSqftintegeroptionalHousing only.
autoMakeModelstringoptionalAuto categories only, e.g. honda civic.
minAutoYearintegeroptionalAuto categories only.
maxAutoYearintegeroptionalAuto categories only.
maxAutoMilesintegeroptionalAuto categories only.
postalCodestringoptionalOptional ZIP/postal code to anchor the search geographically. Use with Search radius.
searchRadiusMilesintegeroptionalDistance around the postal code. Requires Postal code.
hideDuplicatesbooleanoptionalAsk Craigslist to group duplicate/reposted listings together.
deliveryAvailablebooleanoptionalFor-sale and auto categories: only listings offering delivery.
cryptoOkbooleanoptionalFor-sale and auto categories: only listings that accept crypto.
countryCodestringoptionalTwo-letter country code to filter the areas list (mode=areas), e.g. US, CA, GB. Leave blank for all 707 sites.
maxItemsintegeroptionalHard cap across all queries and URLs. Craigslist returns at most 10,000 results per search.
includeDetailsbooleanoptionalFetch each listing's full description, attributes, images, coordinates, and repost status. Turn off for faster search-card-only results.

Download the published input schema

View complete JSON
{
  "description": "Search Craigslist by keyword or browse a category, scrape specific post URLs, or list the 707 Craigslist regions.",
  "properties": {
    "autoMakeModel": {
      "description": "Auto categories only, e.g. honda civic.",
      "editor": "textfield",
      "title": "Vehicle make and model",
      "type": "string"
    },
    "category": {
      "default": "sss",
      "description": "Craigslist category to search or browse. The default is all for-sale listings.",
      "editor": "select",
      "enum": [
        "sss",
        "foa",
        "for",
        "fod",
        "sya",
        "sys",
        "syd",
        "waa",
        "wan",
        "wad",
        "tia",
        "tix",
        "tid",
        "bia",
        "bik",
        "bid",
        "mca",
        "mcy",
        "mcd",
        "bka",
        "bks",
        "bkd",
        "sga",
        "spo",
        "sgd",
        "cla",
        "clo",
        "cld",
        "cba",
        "clt",
        "cbd",
        "ela",
        "ele",
        "eld",
        "hsa",
        "hsh",
        "hsd",
        "msa",
        "msg",
        "msd",
        "baa",
        "bab",
        "bad",
        "ema",
        "emd",
        "emq",
        "tla",
        "tls",
        "tld",
        "boo",
        "boa",
        "bod",
        "jwa",
        "jwl",
        "jwd",
        "pta",
        "pts",
        "ptd",
        "rva",
        "rvs",
        "rvd",
        "taa",
        "tag",
        "tad",
        "gra",
        "grd",
        "grq",
        "bfa",
        "bfs",
        "bfd",
        "ara",
        "art",
        "ard",
        "maa",
        "mat",
        "mad",
        "pha",
        "pho",
        "phd",
        "fua",
        "fuo",
        "fud",
        "cta",
        "cto",
        "ctd",
        "ppa",
        "app",
        "ppd",
        "ata",
        "atq",
        "atd",
        "vga",
        "vgm",
        "vgd",
        "haa",
        "hab",
        "had",
        "moa",
        "mob",
        "mod",
        "sna",
        "snw",
        "snd",
        "hva",
        "hvo",
        "hvd",
        "mpa",
        "mpo",
        "mpd",
        "bip",
        "bop",
        "bdp",
        "syp",
        "sop",
        "sdp",
        "bpa",
        "bpo",
        "bpd",
        "wta",
        "wto",
        "wtd",
        "tra",
        "tro",
        "trb",
        "ava",
        "avo",
        "avd",
        "bar",
        "gms",
        "zip",
        "hhh",
        "rea",
        "reo",
        "reb",
        "apa",
        "hou",
        "roo",
        "sha",
        "sub",
        "off",
        "prk",
        "sbw",
        "swp",
        "vac",
        "rew",
        "jjj",
        "web",
        "bus",
        "mar",
        "etc",
        "wri",
        "sof",
        "acc",
        "ofc",
        "med",
        "hea",
        "ret",
        "npo",
        "lgl",
        "egr",
        "sls",
        "sad",
        "tfr",
        "hum",
        "tch",
        "edu",
        "trd",
        "gov",
        "sci",
        "csr",
        "trp",
        "spa",
        "rej",
        "mnu",
        "fbh",
        "lab",
        "sec",
        "ggg",
        "tlg",
        "cwg",
        "cpg",
        "lbg",
        "wrg",
        "dmg",
        "crg",
        "evg",
        "bbb",
        "biz",
        "cps",
        "crs",
        "evs",
        "hss",
        "lss",
        "lbs",
        "sks",
        "lgs",
        "fns",
        "rts",
        "aos",
        "bts",
        "wet",
        "trv",
        "fgs",
        "pas",
        "mas",
        "cys",
        "cms",
        "hws",
        "ccc",
        "com",
        "vol",
        "act",
        "rid",
        "pet",
        "kid",
        "mis",
        "ats",
        "muc",
        "pol",
        "laf",
        "rnr",
        "grp",
        "vnn",
        "eee",
        "eve",
        "cls",
        "rrr",
        "res"
      ],
      "enumTitles": [
        "for sale",
        "general",
        "general for sale - by owner",
        "general for sale - by dealer",
        "computers",
        "computers - by owner",
        "computers - by dealer",
        "wanted",
        "wanted - by owner",
        "wanted - by dealer",
        "tickets",
        "tickets - by owner",
        "tickets - by dealer",
        "bikes",
        "bicycles - by owner",
        "bicycles - by dealer",
        "motorcycles",
        "motorcycles",
        "motorcycles",
        "books",
        "books",
        "books",
        "sporting",
        "sporting goods - by owner",
        "sporting goods - by dealer",
        "clothes+acc",
        "clothes+acc",
        "clothes+acc",
        "collectibles",
        "collectibles - by owner",
        "collectibles - by dealer",
        "electronics",
        "electronics - by owner",
        "electronics - by dealer",
        "household",
        "household items - by owner",
        "household items - by dealer",
        "music instr",
        "musical instruments - by owner",
        "musical instruments - by dealer",
        "baby+kids",
        "baby & kid stuff - by owner",
        "baby & kid stuff - by dealer",
        "cds/dvd/vhs",
        "cds / dvds / vhs - by owner",
        "cds / dvds / vhs - by dealer",
        "tools",
        "tools - by owner",
        "tools - by dealer",
        "boats",
        "boats - by owner",
        "boats - by dealer",
        "jewelry",
        "jewelry - by owner",
        "jewelry - by dealer",
        "auto parts",
        "auto parts - by owner",
        "auto parts - by dealer",
        "RVs",
        "rvs - by owner",
        "rvs - by dealer",
        "toys+games",
        "toys+games",
        "toys+games",
        "farm+garden",
        "farm+garden",
        "farm+garden",
        "business",
        "business/commercial - by owner",
        "business/commercial - by dealer",
        "arts+crafts",
        "arts & crafts - by owner",
        "arts & crafts - by dealer",
        "materials",
        "materials - by owner",
        "materials - by dealer",
        "photo+video",
        "photo/video - by owner",
        "photo/video - by dealer",
        "furniture",
        "furniture - by owner",
        "furniture - by dealer",
        "cars+trucks",
        "cars+trucks",
        "cars+trucks",
        "appliances",
        "appliances - by owner",
        "appliances - by dealer",
        "antiques",
        "antiques - by owner",
        "antiques - by dealer",
        "video gaming",
        "video gaming - by owner",
        "video gaming - by dealer",
        "beauty+hlth",
        "health and beauty - by owner",
        "health and beauty - by dealer",
        "cell phones",
        "cell phones - by owner",
        "cell phones - by dealer",
        "atvs/utvs/snow",
        "atvs, utvs, snowmobiles - by owner",
        "atvs, utvs, snowmobiles - by dealer",
        "heavy equipment",
        "heavy equipment - by owner",
        "heavy equipment - by dealer",
        "motorcycle parts",
        "motorcycle parts - by owner",
        "motorcycle parts - by dealer",
        "bike parts",
        "bicycle parts - by owner",
        "bicycle parts - by dealer",
        "computer parts",
        "computer parts - by owner",
        "computer parts - by dealer",
        "boat parts",
        "boat parts - by owner",
        "boat parts - by dealer",
        "auto wheels & tires",
        "wheels+tires",
        "wheels+tires",
        "trailers",
        "trailers - by owner",
        "trailers - by dealer",
        "aviation",
        "aviation - by owner",
        "aviation - by dealer",
        "barter",
        "garage sales",
        "free stuff",
        "housing",
        "real estate for sale",
        "real estate - by owner",
        "real estate - by broker",
        "apartments / housing for rent",
        "wanted: apts",
        "rooms & shares",
        "wanted: room/share",
        "sublets & temporary",
        "office & commercial",
        "parking & storage",
        "wanted: sublet/temp",
        "housing swap",
        "vacation rentals",
        "wanted: real estate",
        "jobs",
        "web design",
        "business",
        "marketing",
        "etcetera",
        "writing",
        "software",
        "finance",
        "admin/office",
        "media",
        "healthcare",
        "retail/wholesale",
        "nonprofit",
        "legal",
        "engineering",
        "sales",
        "systems/networking",
        "tv video radio",
        "human resource",
        "tech support",
        "education",
        "skilled trades",
        "government",
        "science",
        "customer service",
        "transport",
        "salon/spa/fitness",
        "real estate",
        "manufacturing",
        "food/bev/hosp",
        "general labor",
        "security",
        "gigs",
        "talent gigs",
        "crew gigs",
        "computer gigs",
        "labor gigs",
        "writing gigs",
        "domestic gigs",
        "creative gigs",
        "event gigs",
        "services",
        "small biz ads",
        "computer services",
        "creative services",
        "event services",
        "household services",
        "lessons & tutoring",
        "labor & moving",
        "skilled trade services",
        "legal services",
        "financial services",
        "real estate services",
        "automotive services",
        "beauty services",
        "write/edit/trans",
        "travel/vacation",
        "farm & garden services",
        "pet services",
        "marine services",
        "cycle services",
        "cell phone / mobile services",
        "health/wellness",
        "community",
        "general",
        "volunteers",
        "activity partners",
        "rideshare",
        "pets",
        "childcare",
        "missed connections",
        "artists",
        "musicians",
        "politics",
        "lost & found",
        "rants & raves",
        "groups",
        "local news and views",
        "events/classes",
        "events",
        "classes",
        "resumes",
        "resumes"
      ],
      "prefill": "sss",
      "title": "Category",
      "type": "string"
    },
    "condition": {
      "default": "any",
      "description": "For for-sale and auto categories: only items in this condition.",
      "editor": "select",
      "enum": [
        "any",
        "new",
        "like-new",
        "excellent",
        "good",
        "fair",
        "salvage"
      ],
      "enumTitles": [
        "Any condition",
        "New",
        "Like new",
        "Excellent",
        "Good",
        "Fair",
        "Salvage"
      ],
      "prefill": "any",
      "title": "Condition",
      "type": "string"
    },
    "countryCode": {
      "description": "Two-letter country code to filter the areas list (mode=areas), e.g. US, CA, GB. Leave blank for all 707 sites.",
      "editor": "textfield",
      "title": "Country code",
      "type": "string"
    },
    "cryptoOk": {
      "default": false,
      "description": "For-sale and auto categories: only listings that accept crypto.",
      "prefill": false,
      "title": "Cryptocurrency accepted",
      "type": "boolean"
    },
    "customRegion": {
      "description": "Any Craigslist hostname or abbreviation (e.g. humboldt, tokyo, sfbay). Overrides Region. (mode=search/category)",
      "editor": "textfield",
      "title": "Custom region",
      "type": "string"
    },
    "deliveryAvailable": {
      "default": false,
      "description": "For-sale and auto categories: only listings offering delivery.",
      "prefill": false,
      "title": "Delivery available",
      "type": "boolean"
    },
    "hasImage": {
      "default": false,
      "description": "Only listings with at least one photo.",
      "prefill": false,
      "title": "Has image",
      "type": "boolean"
    },
    "hideDuplicates": {
      "default": false,
      "description": "Ask Craigslist to group duplicate/reposted listings together.",
      "prefill": false,
      "title": "Hide duplicate listings",
      "type": "boolean"
    },
    "includeDetails": {
      "default": true,
      "description": "Fetch each listing's full description, attributes, images, coordinates, and repost status. Turn off for faster search-card-only results.",
      "prefill": true,
      "title": "Include full listing details",
      "type": "boolean"
    },
    "maxAutoMiles": {
      "description": "Auto categories only.",
      "editor": "number",
      "maximum": 1000000,
      "minimum": 0,
      "title": "Maximum vehicle mileage",
      "type": "integer"
    },
    "maxAutoYear": {
      "description": "Auto categories only.",
      "editor": "number",
      "maximum": 2100,
      "minimum": 1900,
      "title": "Maximum vehicle year",
      "type": "integer"
    },
    "maxBathrooms": {
      "description": "Housing only.",
      "editor": "number",
      "maximum": 20,
      "minimum": 0,
      "title": "Maximum bathrooms",
      "type": "integer"
    },
    "maxBedrooms": {
      "description": "Housing only.",
      "editor": "number",
      "maximum": 20,
      "minimum": 0,
      "title": "Maximum bedrooms",
      "type": "integer"
    },
    "maxItems": {
      "default": 100,
      "description": "Hard cap across all queries and URLs. Craigslist returns at most 10,000 results per search.",
      "editor": "number",
      "maximum": 10000,
      "minimum": 1,
      "prefill": 3,
      "title": "Maximum listings",
      "type": "integer"
    },
    "maxPrice": {
      "description": "Only listings at or below this price. Posts without a price are excluded when a price filter is set.",
      "editor": "number",
      "minimum": 0,
      "title": "Maximum price",
      "type": "integer"
    },
    "maxSqft": {
      "description": "Housing only.",
      "editor": "number",
      "maximum": 100000,
      "minimum": 0,
      "title": "Maximum square feet",
      "type": "integer"
    },
    "minAutoYear": {
      "description": "Auto categories only.",
      "editor": "number",
      "maximum": 2100,
      "minimum": 1900,
      "title": "Minimum vehicle year",
      "type": "integer"
    },
    "minBathrooms": {
      "description": "Housing only.",
      "editor": "number",
      "maximum": 20,
      "minimum": 0,
      "title": "Minimum bathrooms",
      "type": "integer"
    },
    "minBedrooms": {
      "description": "Housing only.",
      "editor": "number",
      "maximum": 20,
      "minimum": 0,
      "title": "Minimum bedrooms",
      "type": "integer"
    },
    "minPrice": {
      "description": "Only listings at or above this price. Posts without a price are excluded when a price filter is set.",
      "editor": "number",
      "minimum": 0,
      "title": "Minimum price",
      "type": "integer"
    },
    "minSqft": {
      "description": "Housing only.",
      "editor": "number",
      "maximum": 100000,
      "minimum": 0,
      "title": "Minimum square feet",
      "type": "integer"
    },
    "mode": {
      "default": "search",
      "description": "What to collect: keyword search, a category browse, specific Craigslist URLs, or the region/subarea reference list.",
      "editor": "select",
      "enum": [
        "search",
        "category",
        "byUrl",
        "areas"
      ],
      "enumTitles": [
        "Search by keyword",
        "Browse a category",
        "Scrape specific URLs",
        "List regions and subareas"
      ],
      "prefill": "search",
      "title": "Mode",
      "type": "string"
    },
    "postalCode": {
      "description": "Optional ZIP/postal code to anchor the search geographically. Use with Search radius.",
      "editor": "textfield",
      "title": "Postal code",
      "type": "string"
    },
    "postedToday": {
      "default": false,
      "description": "Only listings posted in the last 24 hours (Craigslist's posted-today filter).",
      "prefill": false,
      "title": "Posted today",
      "type": "boolean"
    },
    "region": {
      "default": "sfbay",
      "description": "Craigslist city/region to search (mode=search/category). Pick a common region, or use Custom region for any of the 707 Craigslist sites.",
      "editor": "select",
      "enum": [
        "sfbay",
        "newyork",
        "losangeles",
        "chicago",
        "seattle",
        "boston",
        "washingtondc",
        "atlanta",
        "dallas",
        "houston",
        "denver",
        "philadelphia",
        "miami",
        "austin",
        "sandiego",
        "phoenix",
        "portland",
        "minneapolis",
        "detroit",
        "nashville",
        "raleigh",
        "charlotte",
        "baltimore",
        "stlouis",
        "orlando",
        "tampa",
        "lasvegas",
        "sacramento",
        "hartford",
        "columbus",
        "indianapolis",
        "cincinnati",
        "cleveland",
        "kansascity",
        "milwaukee",
        "sanantonio",
        "pittsburgh",
        "newhaven",
        "providence",
        "richmond",
        "salem",
        "saltlakecity",
        "anchorage",
        "honolulu",
        "hudsonvalley",
        "longisland",
        "newjersey",
        "toronto",
        "vancouver",
        "montreal",
        "calgary",
        "ottawa",
        "edmonton",
        "london",
        "manchester",
        "birmingham",
        "leeds",
        "liverpool",
        "edinburgh",
        "glasgow",
        "bristol",
        "brighton"
      ],
      "enumTitles": [
        "SF bay area",
        "new york",
        "los angeles",
        "chicago",
        "seattle",
        "boston",
        "washington, DC",
        "atlanta",
        "dallas",
        "houston",
        "denver",
        "philadelphia",
        "south florida",
        "austin",
        "san diego",
        "phoenix",
        "portland",
        "minneapolis",
        "detroit metro",
        "nashville",
        "raleigh",
        "charlotte",
        "baltimore",
        "st louis",
        "orlando",
        "tampa bay",
        "las vegas",
        "sacramento",
        "hartford",
        "columbus, OH",
        "indianapolis",
        "cincinnati",
        "cleveland",
        "kansas city",
        "milwaukee",
        "san antonio",
        "pittsburgh",
        "new haven",
        "rhode island",
        "richmond, VA",
        "salem",
        "salt lake",
        "anchorage",
        "hawaii",
        "hudson valley",
        "long island",
        "north jersey",
        "toronto",
        "vancouver, BC",
        "montreal",
        "calgary",
        "ottawa",
        "edmonton",
        "london, UK",
        "manchester",
        "birmingham, UK",
        "leeds",
        "liverpool",
        "edinburgh",
        "glasgow",
        "bristol",
        "brighton"
      ],
      "prefill": "sfbay",
      "title": "Region",
      "type": "string"
    },
    "searchQueries": {
      "default": [],
      "description": "One or more keywords. Each query is searched separately; results are de-duplicated. Leave empty for a category browse. (mode=search)",
      "editor": "stringList",
      "items": {
        "type": "string"
      },
      "prefill": [
        "bike"
      ],
      "title": "Search queries",
      "type": "array"
    },
    "searchRadiusMiles": {
      "description": "Distance around the postal code. Requires Postal code.",
      "editor": "number",
      "maximum": 250,
      "minimum": 1,
      "title": "Search radius (miles)",
      "type": "integer"
    },
    "sellerType": {
      "default": "all",
      "description": "Filter by owner, dealer, or either.",
      "editor": "select",
      "enum": [
        "all",
        "owner",
        "dealer"
      ],
      "enumTitles": [
        "All sellers",
        "Owner",
        "Dealer"
      ],
      "prefill": "all",
      "title": "Seller type",
      "type": "string"
    },
    "sortBy": {
      "default": "newest",
      "description": "Order of results within each query.",
      "editor": "select",
      "enum": [
        "newest",
        "oldest",
        "relevance",
        "priceAsc",
        "priceDesc",
        "distance"
      ],
      "enumTitles": [
        "Newest first",
        "Oldest first",
        "Most relevant",
        "Price: low to high",
        "Price: high to low",
        "Closest first"
      ],
      "prefill": "newest",
      "title": "Sort by",
      "type": "string"
    },
    "startUrls": {
      "default": [],
      "description": "Craigslist search pages, new-style /view/d/... post URLs, or old /region/category/post-id.html URLs. (mode=byUrl)",
      "editor": "requestListSources",
      "items": {
        "type": "object"
      },
      "title": "Start URLs",
      "type": "array"
    },
    "subarea": {
      "description": "Optional Craigslist subarea abbreviation inside the region (e.g. sfc, eby, brk). Leave blank for the whole region. (mode=search/category)",
      "editor": "textfield",
      "title": "Subarea",
      "type": "string"
    },
    "titlesOnly": {
      "default": false,
      "description": "Match the keywords against titles only instead of titles and descriptions.",
      "prefill": false,
      "title": "Titles only",
      "type": "boolean"
    }
  },
  "required": [
    "mode"
  ],
  "schemaVersion": 1,
  "title": "Craigslist Classifieds Scraper Input",
  "type": "object"
}

Output schema

Published result links and storage locations. This schema is not an exhaustive contract for every field in a dataset record.

FieldTypeRequiredDescription
listingsstringoptionalDataset containing scraped Craigslist listings, plus region records in areas mode.

Download the published output schema

View complete JSON
{
  "actorOutputSchemaVersion": 1,
  "description": "Craigslist listings with prices, descriptions, photos, coordinates, category attributes, repost status, and region/subarea records.",
  "properties": {
    "listings": {
      "description": "Dataset containing scraped Craigslist listings, plus region records in areas mode.",
      "template": "{{links.apiDefaultDatasetUrl}}/items",
      "title": "Craigslist listings",
      "type": "string"
    }
  },
  "title": "Craigslist Classifieds Scraper Output"
}

Dataset schema

Published dataset views and any declared field definitions. A view can select only a subset of the returned record fields.

This definition is not present in the default published build. See the published README for available documentation.

Key-value schema

Published key-value store definitions, when provided by this build.

This definition is not present in the default published build. See the published README for available documentation.

Published README

Read the full published documentation

Craigslist Classifieds Scraper with Category Attributes

Scrape Craigslist across 700+ local sites without a login, cookie, or proxy setup. Search by keyword or browse a category, follow individual post links, and get the full listing: price, description, every photo, map coordinates, posted and repost data, plus the category-specific attributes Craigslist shows for jobs, housing, autos, and for-sale items.

What this actor does

  • Four modes: keyword search, category browse, specific URLs, and a region/subarea reference list
  • 700+ regions: every Craigslist hostname, with 62 common regions ready in a dropdown and a custom-region field for the rest
  • Filters that run on Craigslist: price, posted today, photos, titles-only, owner/dealer, sort, condition, bedrooms/baths/square feet, vehicle make/year/mileage, postal radius, and duplicate grouping
  • Full detail records: body text, gallery images, attributes, coordinates, display address, repost link, notices, and typed category fields
  • Empty fields are omitted from every record; no null values or placeholder rows

Output per listing

  • type — always craigslist_listing
  • id, postingUuid, url, title
  • price, priceValue, priceCurrency, priceQualifier
  • postedAt, updatedAt, recordCreatedAt, scrapedAt
  • region, location, neighborhood, subArea, area, areaAbbr, locationType, mapAddress
  • latitude, longitude
  • category, subcategory, section, categoryAbbr, subcategoryAbbr, postingType
  • description, images[], imageCount, attributes, notices[]
  • phoneNumbers[], emails[], vin, replyUrl
  • repostOf, hasContactInfo, seeMyOther
  • Jobs: compensation, employmentType, jobTitle, companyName, experienceLevel, salary
  • Housing: bedroomCount, bathroomCount, sqft, availableDate, housingType, laundry, parking, rentPeriod, listedBy, applicationFee, brokerFee, openHouseDates, catsOk, dogsOk, furnished, smoking, privateRoom, privateBath, wheelchairAccessible, airConditioning, evCharging
  • Autos: yearManufactured, makeManufacturer, modelName, odometer, transmission, fuelType, titleStatus, cylinders, paintColor, drive, vehicleType
  • For sale: condition, size, make, model

With includeDetails off, rows contain only the search-card fields: identity, price, category, posted time, location, coordinates, and image URLs.

Output per area (mode = areas)

  • type — craigslist_area
  • areaId, abbreviation, hostname, description, shortDescription
  • region, country, latitude, longitude, timezone
  • subareas[] — each with abbreviation, description, and subAreaId

Input

Field Type Default Description
mode string search search / category / byUrl / areas
region string sfbay Common Craigslist region (mode=search/category)
customRegion string – Any hostname or abbreviation; overrides region
subarea string – Optional subarea such as sfc, eby, brk
category string sss Craigslist category; sss is all for-sale listings
searchQueries array – One or more keywords (mode=search); leave empty to browse a category
startUrls array – Search pages or post URLs (mode=byUrl)
minPrice integer – Minimum price
maxPrice integer – Maximum price
postedToday boolean false Only posts from the last 24 hours (Craigslist's posted-today filter)
hasImage boolean false Only posts with a photo
titlesOnly boolean false Match keywords against titles only
sellerType string all all / owner / dealer
sortBy string newest newest / oldest / relevance / priceAsc / priceDesc / distance
condition string any any / new / like-new / excellent / good / fair / salvage
minBedrooms integer – Housing only
maxBedrooms integer – Housing only
minBathrooms integer – Housing only
maxBathrooms integer – Housing only
minSqft integer – Housing only
maxSqft integer – Housing only
autoMakeModel string – Auto categories only, e.g. honda civic
minAutoYear integer – Auto categories only
maxAutoYear integer – Auto categories only
maxAutoMiles integer – Auto categories only
postalCode string – Optional ZIP/postal code anchor
searchRadiusMiles integer – Radius around postalCode
hideDuplicates boolean false Group duplicate/reposted listings
deliveryAvailable boolean false For-sale/auto only
cryptoOk boolean false For-sale/auto only
countryCode string – Two-letter country filter for areas mode
maxItems integer 100 Hard cap across all queries and URLs (1–10000)
includeDetails boolean true Fetch full descriptions, attributes, images, and coordinates

Examples

Search a city for a keyword

{
  "mode": "search",
  "region": "sfbay",
  "category": "sss",
  "searchQueries": ["bike"],
  "maxItems": 50,
  "includeDetails": true
}

Browse apartments with housing filters

{
  "mode": "category",
  "region": "chicago",
  "category": "apa",
  "minBedrooms": 2,
  "maxBedrooms": 2,
  "maxPrice": 3000,
  "sortBy": "priceAsc",
  "maxItems": 100
}

Scrape specific posts

{
  "mode": "byUrl",
  "startUrls": [
    { "url": "https://www.craigslist.org/view/d/richmond-195-iron-horse-maverick-21/scJ6mscDAryikpFRAS61aq" },
    { "url": "https://sfbay.craigslist.org/bik/7962037752.html" }
  ],
  "maxItems": 10
}

List regions in one country

{
  "mode": "areas",
  "countryCode": "CA",
  "maxItems": 100
}

Use cases

  • Marketplace price tracking — monitor asking prices for a product across cities and categories
  • Vehicle shopping — pull year, make, model, mileage, transmission, and title status for matching cars
  • Rental research — collect rent, bedrooms, bathrooms, square footage, laundry, parking, and pet policy
  • Job aggregation — gather compensation, employment type, experience level, and company names
  • Lead sourcing — filter by price, photos, seller type, and posted date to find fresh posts
  • Local market mapping — join listing coordinates and neighborhoods to city/subarea reference data

FAQ

Do I need a Craigslist account, cookie, or proxy? No. The actor reads public Craigslist listings and connects automatically. There is no login or proxy field to fill in.

How many results can one run return? Craigslist caps a single search at 10,000 results. To collect more, split by category, subarea, price range, or posted-today and combine the runs. The actor tells you in the run status when the cap is reached.

Why are some fields missing from a row? Craigslist posts differ by category and by what the seller filled in. A job may have no price; a generic for-sale post may have no structured attributes; a seller may not publish a phone number. Empty fields are omitted rather than filled with null or an empty value.

Can I get the poster's email address? Only when the seller typed an email into the post body. Craigslist's reply relay hides the real address behind its own form and sometimes a captcha; this actor does not bypass that.

Does the actor support RSS or JSON feeds? No. Craigslist discontinued its RSS output, and its old output=json parameter no longer returns JSON. This actor uses Craigslist's current listing data and returns the same fields in its dataset.

Can I paste an old Craigslist post link? Current /view/d/... links work directly. Older region/category/post-id.html links also work. Very old links that contain a /d/ slug but a broad category are resolved by searching for the post; if Craigslist has removed it, the URL is skipped with a message.

Does an old search URL's s= offset still work? No. Craigslist no longer offers an offset cursor for search results, so the actor ignores s= and starts from the first result. Use maxItems, a narrower price range, or a subarea to control how deep a run goes.

Why did a run return no listings? The query may have no matches, the category may not exist in that region, the post may have been removed, or a filter may be too narrow. A zero-result run completes with a status message and no placeholder record.

Is this affiliated with Craigslist? No. This is an independent actor that reads publicly available Craigslist pages and is not operated or endorsed by Craigslist.

Python quickstart

Use a schema-derived input and the Python standard library to start a run. An Apify account and token are required for execution.

Open the step-by-step Python guide →

Source build HWKb9T9uefJQgHpvH. Documentation is regenerated from the default published build; private drafts are not included.