Craigslist Search Data — Keyword, Area, Category & 60+ Filters
Pick a Craigslist area, add a keyword or a category, and this source returns matching live postings as data: title, price, date, location, images and category facets.
{
"session_id": "11111111-1111-1111-1111-111111111111",
"kind": "craigslist_postings_search",
"area": "sfbay",
"category": "cta",
"subarea": null,
"keyword": null,
"sort": "newest",
"max_items": 3,
"start_page": 1,
"hide_duplicates": false,
"filters": {},
"partial": false,
"human": "# Craigslist postings search\n\n- **Area:** sfbay\n- **Category:** cta\n- **Sort:** newest\n- **Starting page:** 1\n- **Max items:** 3\n- **Total results on Craigslist:** 16232\n- **Records returned:** 3\n- **Proxy traffic:** 109.2 KB",
"machine": {
"total_items": 3,
"total_results": 16232,
"first_item": {
"id": "p9MEft7XQWNXaMZiaHC1dK",
"posting_id": 7975475802,
"posting_title": "MERCEDES C300 CONVERTIBLE LOW MILE 22000 EXCELLENT CONDITION",
"alias": "concord-mercedes-c300-convertible-low",
"url": "https://www.craigslist.org/view/d/concord-mercedes-c300-convertible-low/p9MEft7XQWNXaMZiaHC1dK",
"price": 17950,
"price_string": "$17,950",
"currency": "USD",
"monthly_payment_string": null,
"created_at": 1790783149,
"category_id": 145,
"category_alias": "cto",
"category": "cars & trucks - by owner",
"location": {
"area_id": 1,
"area_alias": "sfbay",
"subarea_alias": "eby",
"description": "east bay area",
"neighborhood": null,
"lat": 37.9504,
"lon": -122.0263
},
"image": "https://images.craigslist.org/00v0v_cCWQniTG8Le_0zS0qU_600x450.jpg",
"images": [
"https://images.craigslist.org/00v0v_cCWQniTG8Le_0zS0qU_600x450.jpg",
"https://images.craigslist.org/00q0q_knMLbLlrtks_0zS0qU_600x450.jpg"
],
"image_count": 9,
"bedrooms": null,
"sqft": null,
"auto_miles": 22000,
"salary": null,
"company": null,
"job_title": null,
"start_date": null,
"end_date": null,
"open_house_dates": [],
"event_dates": []
},
"items": [
{
"id": "p9MEft7XQWNXaMZiaHC1dK",
"posting_id": 7975475802,
"posting_title": "MERCEDES C300 CONVERTIBLE LOW MILE 22000 EXCELLENT CONDITION",
"alias": "concord-mercedes-c300-convertible-low",
"url": "https://www.craigslist.org/view/d/concord-mercedes-c300-convertible-low/p9MEft7XQWNXaMZiaHC1dK",
"price": 17950,
"price_string": "$17,950",
"currency": "USD",
"monthly_payment_string": null,
"created_at": 1790783149,
"category_id": 145,
"category_alias": "cto",
"category": "cars & trucks - by owner",
"location": {
"area_id": 1,
"area_alias": "sfbay",
"subarea_alias": "eby",
"description": "east bay area",
"neighborhood": null,
"lat": 37.9504,
"lon": -122.0263
},
"image": "https://images.craigslist.org/00v0v_cCWQniTG8Le_0zS0qU_600x450.jpg",
"images": [
"https://images.craigslist.org/00v0v_cCWQniTG8Le_0zS0qU_600x450.jpg",
"https://images.craigslist.org/00q0q_knMLbLlrtks_0zS0qU_600x450.jpg"
],
"image_count": 9,
"bedrooms": null,
"sqft": null,
"auto_miles": 22000,
"salary": null,
"company": null,
"job_title": null,
"start_date": null,
"end_date": null,
"open_house_dates": [],
"event_dates": []
},
{
"id": "hq3dzKdbB1Pp3NXnbSzgkR",
"posting_id": 7975475148,
"posting_title": "2021 MAZDA MIATA GRAND TOURING CONVERTIBLE LOW MILES LOADED",
"alias": "san-francisco-2021-mazda-miata-grand",
"url": "https://www.craigslist.org/view/d/san-francisco-2021-mazda-miata-grand/hq3dzKdbB1Pp3NXnbSzgkR",
"price": 17950,
"price_string": "$17,950",
"currency": "USD",
"monthly_payment_string": null,
"created_at": 1790783095,
"category_id": 145,
"category_alias": "cto",
"category": "cars & trucks - by owner",
"location": {
"area_id": 1,
"area_alias": "sfbay",
"subarea_alias": "eby",
"description": "east bay area",
"neighborhood": null,
"lat": 37.7915,
"lon": -122.4018
},
"image": "https://images.craigslist.org/00707_kJm5PP56wTt_0CI0t2_600x450.jpg",
"images": [
"https://images.craigslist.org/00707_kJm5PP56wTt_0CI0t2_600x450.jpg",
"https://images.craigslist.org/00X0X_fQUm4hvWvng_0CI0t2_600x450.jpg"
],
"image_count": 5,
"bedrooms": null,
"sqft": null,
"auto_miles": 28000,
"salary": null,
"company": null,
"job_title": null,
"start_date": null,
"end_date": null,
"open_house_dates": [],
"event_dates": []
}
],
"proxy_traffic_bytes": 111780
},
"total_points": 3
}- You send
- A Craigslist area, with optional keyword, category and filters
- You get back
- Matching postings with title, price, date, location, images and category facets
- Coverage
- Live Craigslist postings on any regional site.
- Price
- 1 point per returned result, up to 500 per request — $1 per 1,000
- Billed per record actually returned, capped by max_items. A search that matches nothing costs nothing.
Ways to get this data
Three approaches teams use today, and where each one runs into trouble.
| Approach | What it takes | Cost | Trade-off |
|---|---|---|---|
| Searching Craigslist by hand | Set filters in the browser, scroll, copy results | Free, and slow | Nobody tracks a market across several regional sites this way |
| Building a scraper | Write it, host it, and repair it when Craigslist changes the results page | Engineering time | A maintenance commitment for something that isn't your product |
| NeuralVerge | One request, area and filters as parameters | $1 per 1,000, misses not billed | A broad search over a busy area returns a large — and more expensive — result set |
What you get back
Every field in the response shown above.
| Field | Type | Description |
|---|---|---|
total_items | number | How many postings were returned in this batch. |
total_results | number | How many results Craigslist shows for the search in total. |
id | string | 22-character posting ID. |
posting_id | number | Numeric posting ID. |
posting_title | string | Posting title. |
alias | string | URL slug of the posting. |
url | string | Direct link to the posting. |
price | number | Asking price. |
price_string | string | Price formatted as displayed. |
currency | string | Currency code, e.g. USD. |
monthly_payment_string | null | Monthly payment as displayed, when the posting has one; null in the sample. |
created_at | number | Unix timestamp of creation. |
category_id | number | Craigslist's numeric category ID. |
category_alias | string | Category alias. |
category | string | Category name, e.g. cars & trucks - by owner. |
location | object | Area, subarea, description, neighbourhood and lat/lon. |
image | string | Primary image URL. |
images | array | Image URLs. |
image_count | number | Number of images on the posting. |
bedrooms | null | Bedrooms, relevant to housing postings; null in the sample. |
sqft | null | Area in square feet, relevant to housing postings; null in the sample. |
auto_miles | number | Odometer reading, on vehicle postings; null elsewhere. |
salary | null | Pay, relevant to job postings; null in the sample. |
company | null | Employer, relevant to job postings; null in the sample. |
job_title | null | Job title, relevant to job postings; null in the sample. |
start_date | null | Start date, where the category has one; null in the sample. |
end_date | null | End date, where the category has one; null in the sample. |
open_house_dates | array | Open-house dates, when listed. |
event_dates | array | Event dates, when listed. |
How to run it
The same lookup works from the app, the API, or as a tool an agent can call mid-task.
area is the only required field; use the alias values from Craigslist areas, and category aliases from Craigslist categories. max_items caps the result count (up to 500) and sets what you're billed for. Keyword, sub-area, postal code, coordinates with radius, and the vehicle, housing, job, gig and event filters narrow the query before you pay for results.
curl -X POST https://api.neuralverge.ai/functions/v1/run-craigslist-postings-search \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "area": "sfbay", "max_items": 2 }'What teams use it for
Where this field shows up in an actual workflow.
Pull current asking prices for a product type in one metro area.
Filter by make and model, year and odometer to build a shortlist of cars.
Track bedrooms, square footage and asking rent across a region.
Re-run a saved search on a schedule to catch new postings.
Coverage, freshness and limits
What this source covers, how fresh it is, and where it stops.
Live Craigslist postings on any regional site.
Searched at request time.
This source returns publicly visible search results, stamped with the area and filters it was read for and a session id you can trace.
- —Results come from one area per request; to compare regions, run one request per area.
- —Which detail fields are filled depends on the category: bedrooms, miles and salary are null outside housing, vehicles and jobs.
- —A broad search over a busy area returns a broad result set — narrow it or you'll pay for noise.
Questions, answered
Run Craigslist areas for area aliases (and sub-area aliases) and Craigslist categories for category aliases, then pass them in.
Related sources
Full detail for a posting you found here.
Area and sub-area aliases for the area filter.
Category aliases for the category filter.
Amazon, eBay, Walmart, AliExpress, Alibaba, Avito, Craigslist, Flipkart and Mercari product, seller and review data.
Try craigslist postings search on your own data
One request format across every source in the catalog.