Discover/Craigslist API
live

Craigslist APIlosangeles.craigslist.org

Search and retrieve Craigslist LA listings by keyword, price, category, and ZIP code. Access full listing details including description, geo, images, and attributes.

Endpoint health
verified 7d ago
get_categories
search_listings
search_with_location
get_listing_detail
4/4 passing latest checkself-healing
Endpoints
4
Updated
14d ago

What is the Craigslist API?

This API exposes 4 endpoints for querying Craigslist Los Angeles across every major section — for sale, housing, jobs, gigs, services, and community. The search_listings endpoint returns paginated summaries including title, price, posting date, image URLs, and category. The get_listing_detail endpoint fetches full descriptions, structured attributes, geolocation coordinates, and address fields for any individual listing URL.

Try it
Sort order for results.
Maximum number of results to return per request.
Search keyword to filter listings.
Result offset for pagination.
Category code for filtering listings.
Maximum price filter.
Minimum price filter.
api.parse.bot/scraper/45a8c020-22bf-42e8-8b66-2b14e04077d8/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/45a8c020-22bf-42e8-8b66-2b14e04077d8/search_listings?sort=date&limit=360&query=bike&offset=0&category=bik' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace losangeles-craigslist-org-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: Craigslist LA SDK — search, filter, drill into details, browse categories."""
from parse_apis.Craigslist_Los_Angeles_API import CraigslistLA, Category, Sort, ListingNotFound

client = CraigslistLA()

# Browse available categories
cats = client.category_maps.get()
print(cats.housing, cats.jobs)

# Search bikes sorted by price, capped at 5 results
for listing in client.listing_summaries.search(query="mountain bike", category=Category.BIKES, sort=Sort.PRICE_ASC, limit=5):
    print(listing.title, listing.price, listing.subarea)

# Drill into the first result's full details
item = client.listing_summaries.search(query="road bike", category=Category.BIKES, limit=1).first()
if item:
    detail = item.details()
    print(detail.title, detail.price)
    print(detail.description[:100])
    print(detail.location.address_locality, detail.location.postal_code)
    print(detail.geo.latitude, detail.geo.longitude)

# Search nearby a ZIP code
for nearby in client.listing_summaries.search_nearby(query="couch", category=Category.FURNITURE, zip_code="90210", radius=5, limit=3):
    print(nearby.title, nearby.price, nearby.url)

# Handle a not-found listing gracefully
try:
    bad = client.listing_summaries.search(query="nonexistent_xyz_item_12345", limit=1).first()
    if bad:
        bad.details()
except ListingNotFound as exc:
    print(f"Listing gone: {exc.url}")

print("exercised: category_maps.get / listing_summaries.search / search_nearby / details / ListingNotFound")
All endpoints · 4 totalmissing one? ·

Search for listings across all categories on Craigslist Los Angeles. Returns paginated results with listing summaries including title, price, posting date, and images. Pagination is offset-based with a configurable batch size. Results are sorted by date by default. Supports price range filtering and keyword search.

Input
ParamTypeDescription
sortstringSort order for results.
limitintegerMaximum number of results to return per request.
querystringSearch keyword to filter listings.
offsetintegerResult offset for pagination.
categorystringCategory code for filtering listings.
max_priceintegerMaximum price filter.
min_priceintegerMinimum price filter.
Response
{
  "type": "object",
  "fields": {
    "limit": "integer max results returned",
    "offset": "integer current pagination offset",
    "listings": "array of listing objects with id, title, price, posted_date, url, image_urls, subarea, category",
    "total_count": "integer total number of matching results"
  },
  "sample": {
    "data": {
      "limit": 5,
      "offset": 0,
      "listings": [
        {
          "id": "7926227173",
          "url": "https://losangeles.craigslist.org/ant/bik/d/santa-clarita-cannondale-bad-boy-belt/7926227173.html",
          "price": 950,
          "title": "Cannondale Bad Boy 1 Belt Drive",
          "subarea": "ant",
          "category": "bik",
          "image_urls": [
            "https://images.craigslist.org/00U0U_4gj9WCukHc6_600x450.jpg"
          ],
          "posted_date": "2026-06-09 17:47:27"
        }
      ],
      "total_count": 4413
    },
    "status": "success"
  }
}

About the Craigslist API

Search and Filter Listings

The search_listings endpoint accepts keyword queries, price range filters (min_price, max_price), category codes, and sort orders (date, rel, priceasc, pricedsc). Results are paginated via limit and offset parameters, and each listing object in the response includes id, title, price, posted_date, url, image_urls, subarea, and category. The total_count field tells you how many results match so you can implement full pagination.

Category codes follow Craigslist's own scheme: sss for all for-sale items, cta for cars and trucks, hhh for housing, apa for apartments, jjj for jobs, boa for boats, ele for electronics, and others returned by get_categories. Use get_categories to retrieve the full mapping of codes to human-readable names, organized into six top-level sections: community, services, housing, for sale, jobs, and gigs.

Location-Based Search

The search_with_location endpoint extends keyword and category filtering with a ZIP code and radius in miles. Pass any 5-digit US ZIP code alongside a radius value to narrow results to listings posted near a specific geographic area. The response shape mirrors search_listings — an array of listing objects with id, title, price, posted_date, url, image_urls, subarea, and category, plus pagination fields.

Full Listing Details

Call get_listing_detail with a complete Craigslist listing URL to retrieve the full record. The response includes a description string, a structured attributes object of key-value pairs (condition, make, model, etc., depending on category), an array of image_urls, a geo object with latitude and longitude, a location object with addressLocality, postalCode, and addressRegion fields, and the ISO-formatted posted_date.

Reliability & maintenanceVerified

The Craigslist API is a managed, monitored endpoint for losangeles.craigslist.org — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when losangeles.craigslist.org changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official losangeles.craigslist.org API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
7d ago
Latest check
4/4 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Aggregate apartment and housing listings filtered by price range and subarea for a rental search tool.
  • Monitor used car inventory on Craigslist LA by polling search_listings with category cta and sorting by date.
  • Build a price-comparison feed for electronics by querying category ele with min_price and max_price bounds.
  • Geocode listing locations using the geo latitude/longitude fields returned by get_listing_detail for map-based display.
  • Pull job postings by category jjj and index them into a local search engine with full description text.
  • Send alerts when new listings matching a keyword appear within a set mile radius of a ZIP code using search_with_location.
  • Enumerate all available subcategories programmatically via get_categories before building category-specific scrapers or filters.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Craigslist have an official developer API?+
No. Craigslist does not offer a public developer API. There is no official documented endpoint, OAuth flow, or API key program available to third-party developers.
What does `get_listing_detail` return beyond what search results include?+
The detail endpoint returns the full description text, a structured attributes object (key-value pairs like condition, make, model, or size depending on category), a geo object with latitude and longitude, and a location object with address components including addressLocality, postalCode, and addressRegion. Search result objects only include summary fields: title, price, posting date, image URLs, subarea, and category.
Does the API cover Craigslist regions outside Los Angeles?+
This API covers losangeles.craigslist.org only. Other regional Craigslist domains — such as sfbay, newyork, or chicago — are not included. You can fork this API on Parse and revise it to target a different regional subdomain.
Are listing contact details such as phone numbers or email addresses returned?+
No contact details are exposed. The endpoints return listing content — title, description, attributes, images, price, geo, and location — but not seller phone numbers or email addresses. You can fork this API on Parse and revise it to add an endpoint that targets that data if it is available in the listing page.
How does pagination work in `search_listings`?+
The response includes a total_count integer representing the full number of matching results. Use offset to move through pages and limit to control how many results are returned per request. Increment offset by limit on each subsequent call to walk through the full result set.
Page content last updated . Spec covers 4 endpoints from losangeles.craigslist.org.
Related APIs in MarketplaceSee all →
craigslist.org API
Search Craigslist listings across any region and instantly access structured data including prices, locations, coordinates, images, and direct URLs. Find exactly what you're looking for with organized sale listings that are easy to filter and analyze.
craigslist.org API
Search and retrieve Craigslist listings for apartments, vehicles, jobs, services, and other categories across all regional sites to find exactly what you're looking for. Get detailed information about specific listings, browse by location and category, and compare options all in one place.
Craigslist Apartments API
Search and filter Craigslist apartment listings by neighborhood, bedroom count, price range, and image availability. Retrieve detailed listing information including full descriptions, contact details, photos, and location data.
kijiji.ca API
Search and browse Kijiji listings across categories like rentals, pets, and jobs, while viewing detailed information about specific ads along with available locations and categories. Filter through thousands of Canadian classifieds to find exactly what you're looking for in your area.
clasificadosonline.com API
Search and retrieve listings from ClasificadosOnline.com — Puerto Rico's classifieds platform. Browse cars, rental properties, and jobs with flexible filters for location, price, make/model, and more.
rentals.ca API
Search and browse rental listings across Canada by city or neighbourhood, and view detailed property information including prices, amenities, and availability. Find your next home by filtering thousands of rental properties on Rentals.ca in real-time.
kleinanzeigen.de API
Search and retrieve classified ad listings from kleinanzeigen.de. Filter by keyword, category, price range, and sorting order. Supports vehicles, real estate, jobs, electronics, and general products, with full listing details including title, price, description, location, and seller information.
leboncoin.fr API
Search and retrieve detailed listings from Leboncoin across cars, real estate, jobs, and other categories with advanced filtering options. Access seller profiles, pricing analytics, and comprehensive listing details to find exactly what you're looking for on France's leading classifieds platform.