Discover/Trulia API
live

Trulia APItrulia.com

Access Trulia property listings, price history, photos, nearby schools, and local amenities via a structured API. Search for-sale, rental, and sold homes by location.

Endpoint health
verified 7h ago
get_listing_photos
search_for_rent_listings
search_sold_listings
get_property_price_history
get_local_amenities
8/8 passing latest checkself-healing
Endpoints
10
Updated
22d ago

What is the Trulia API?

This API exposes 10 endpoints covering Trulia's real estate data, from paginated property searches to detailed listing records. search_for_sale_listings and search_for_rent_listings return up to 40 properties per page filtered by city and state, while get_listing_details delivers a single property's price, coordinates, floor space, features, media, and full price history in one response.

Try it
Page number for pagination (1-based)
City and state in the format 'City, ST' (e.g. 'New York, NY', 'Los Angeles, CA')
api.parse.bot/scraper/f436db0a-1bb1-4689-87b4-8f9e3d5e8993/<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/f436db0a-1bb1-4689-87b4-8f9e3d5e8993/search_for_sale_listings?page=1&location=New+York%2C+NY' \
  -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 trulia-com-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: Trulia Real Estate API — bounded, re-runnable; every call capped."""
from parse_apis.trulia_real_estate_api import Trulia, Listing, ListingNotFound

trulia = Trulia()

# Search for-sale listings in New York — limit caps total items fetched.
ny = trulia.location("New York, NY")
for listing in ny.for_sale(limit=3):
    print(listing.url, listing.location.city, listing.price.formatted_price)

# Drill-down: take ONE listing, then walk its sub-resources.
listing = ny.for_sale(limit=1).first()
if listing:
    # Get price history
    history = listing.price_history()
    for event in history.history[:3]:
        print(event.formatted_date, event.event, event.formatted_price)

    # Get photos
    photos = listing.photos()
    for photo in photos.photos[:2]:
        print(photo.url, photo.caption)

    # Get neighborhood data
    neighborhood = listing.local_amenities()
    print(neighborhood.ndp_active, neighborhood.ndp_url, neighborhood.location_id)

# Get full listing details by URL — typed error handling
try:
    detail = trulia.listings.get(url="/home/8334-116th-st-richmond-hill-ny-11418-32005834")
    print(detail.location.street_address, detail.price.formatted_price)
except ListingNotFound as exc:
    print(f"listing not found: {exc}")

# Mortgage estimate calculation
estimate = trulia.mortgageestimates.calculate(price=500000, down_payment=100000, term=30, rate=7.0)
print(estimate.monthly_payment, estimate.total_payment, estimate.total_interest)

# Search rentals in Chicago
chicago = trulia.location("Chicago, IL")
for rental in chicago.for_rent(limit=2):
    print(rental.url, rental.price.formatted_price)

print("exercised: for_sale / for_rent / listings.get / price_history / photos / local_amenities / mortgageestimates.calculate")
All endpoints · 10 totalmissing one? ·

Search properties for sale by city and state. Returns up to 40 listings per page with price, bedrooms, bathrooms, floor space, and listing status. Pagination via integer page number. Results include property URLs that can be passed to detail endpoints.

Input
ParamTypeDescription
pageintegerPage number for pagination (1-based)
locationrequiredstringCity and state in the format 'City, ST' (e.g. 'New York, NY', 'Los Angeles, CA')
Response
{
  "type": "object",
  "fields": {
    "page": "integer current page number",
    "homes": "array of property listing objects with url, location, price, bedrooms, bathrooms, floorSpace, currentStatus, propertyType",
    "totalHomes": "integer total number of matching listings"
  },
  "sample": {
    "data": {
      "page": 1,
      "homes": [
        {
          "url": "/home/8334-116th-st-richmond-hill-ny-11418-32005834",
          "price": {
            "price": 1988888,
            "currencyCode": "USD",
            "formattedPrice": "$1,988,888"
          },
          "bedrooms": {
            "value": 6,
            "formattedValue": "6 Beds"
          },
          "location": {
            "city": "Richmond Hill",
            "zipCode": "11418",
            "stateCode": "NY",
            "streetAddress": "83-34 116th Street"
          },
          "bathrooms": {
            "value": 4.5,
            "formattedValue": "4.5 Baths"
          },
          "floorSpace": {
            "formattedDimension": "2,072 sqft"
          },
          "propertyType": {
            "value": "SINGLE_FAMILY_HOME"
          },
          "currentStatus": {
            "isActiveForSale": true
          }
        }
      ],
      "totalHomes": 23207
    },
    "status": "success"
  }
}

About the Trulia API

Search and Listing Endpoints

Three search endpoints — search_for_sale_listings, search_for_rent_listings, and search_sold_listings — accept a location string (city and state, e.g. 'Austin, TX') and an optional page integer for pagination. Each returns a data object with a searchResultMap containing a homes array, alongside totalHomes so you can calculate how many pages to walk. Each page contains up to 40 listings with price, bedroom and bathroom counts, and listing status.

Property Detail Endpoints

get_listing_details takes a Trulia URL path (e.g. /home/<address-slug-and-id>) and returns the most complete record: price with formattedPrice and currencyCode, location with street address, city, state, ZIP, and coordinates, floorSpace with formattedDimension, a features object with categorized home attributes, a media object with photos and map images, and a priceHistory array of dated events. If you only need photos, get_listing_photos returns an array of photo objects with multiple resolution URLs in both JPEG and WebP formats with captions. get_property_price_history returns the same history as a standalone array, with each entry carrying formattedDate, event type, source, and a price object.

Neighborhood and Utility Endpoints

get_local_amenities returns resident-survey data tied to a property's neighborhood: a localUGC object with a formattedQuestionAnswers array covering walkability, safety, and community topics, plus an ndpUrl linking to the full neighborhood detail page and a boolean ndpActive flag. get_nearby_schools and get_similar_homes are also available via property URL path. The get_mortgage_calculator endpoint takes price, down_payment, and optional rate and term parameters and returns monthly_payment, total_interest, and total_payment calculated via standard amortization.

Pagination and Input Notes

All three search endpoints use the same pagination pattern: omit page or pass 1 for the first page, then increment using totalHomes divided by 40 to find the ceiling. Location input must be city and state in plain text — ZIP code or coordinate-based search is not supported by the current endpoints.

Reliability & maintenanceVerified

The Trulia API is a managed, monitored endpoint for trulia.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when trulia.com 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 trulia.com 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
7h ago
Latest check
8/8 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 for-sale and rental listings by city to build a real estate search feed
  • Track price history events from get_property_price_history to chart how a listing's price changed over time
  • Pull get_listing_photos for all resolutions to populate a property image gallery or comparison tool
  • Use get_local_amenities survey data to surface neighborhood safety and walkability scores alongside listings
  • Feed get_mortgage_calculator with a property's price to show buyers estimated monthly payments at different rates and terms
  • Compare recently sold prices via search_sold_listings against active listings to build a comparative market analysis tool
  • Retrieve get_nearby_schools data to filter or rank properties for families with school-age children
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 Trulia have an official developer API?+
Trulia shut down its official developer API program. The Parse Trulia API provides structured access to listing and property data without requiring enrollment in any Trulia developer program.
What does `get_listing_details` return beyond basic price and address?+
get_listing_details returns a features object with categorized home attributes, a media object containing photos and map images, a floorSpace object with a formattedDimension field, a priceHistory array of dated listing events, and a location object that includes latitude/longitude coordinates alongside the street address, ZIP code, and state code.
Can I search by ZIP code or geographic coordinates instead of city and state?+
Not currently. All three search endpoints — search_for_sale_listings, search_for_rent_listings, and search_sold_listings — require a city-and-state string as the location parameter. You can fork this API on Parse and revise it to add a ZIP-code or coordinate-based search endpoint.
Does the API expose listing agent contact details or open house schedules?+
Not currently. The API covers listing price, property features, media, price history, neighborhood data, and nearby schools, but agent contact information and open house schedules are not included in any endpoint's response shape. You can fork this API on Parse and revise it to add an endpoint targeting that data.
How does pagination work across the search endpoints?+
Each search endpoint returns up to 40 listings per page. The response includes a totalHomes integer representing the full result count. Divide totalHomes by 40 and round up to get the total number of pages, then pass the page integer parameter to walk through them sequentially.
Page content last updated . Spec covers 10 endpoints from trulia.com.
Related APIs in Real EstateSee all →
zillow.com API
Search for homes for sale, rent, or recently sold listings on Zillow while accessing detailed property information, Zestimates, agent profiles, and current mortgage rates all in one place. Streamline your real estate research by gathering comprehensive property details, agent information, and financing options without navigating multiple pages.
realtor.com API
Search millions of real estate listings on Realtor.com, view detailed property information, find qualified agents in your area, and access market analytics to understand pricing trends. Get location suggestions and property insights all in one place to help you make informed decisions about buying, selling, or investing in real estate.
realestate.com.au API
Search and retrieve property listing data from realestate.com.au, including listings for sale and rent, detailed property information, and nearby schools for any location across Australia.
zoopla.co.uk API
Search for properties available for sale or rent, view detailed listing information, check sold house prices, and find local estate agents all in one place. Get access to live marketplace data to help you research properties, compare prices, and connect with agents on the Zoopla platform.
rent.com API
Browse and extract rental property data from Rent.com. Search listings by location and filter by beds, baths, price, and pet policy. Retrieve full property details, floor plans, unit availability, amenities, nearby schools, points of interest, and active specials.
housing.com API
Search and retrieve real estate listings on Housing.com. Browse properties for sale, rent, plots, and commercial spaces across major Indian cities with filtering by locality and property type.
rew.ca API
Search rental and for-sale properties across Canada, get detailed listing information, explore neighbourhoods, and find real estate agents in your area. Access property details, agent profiles, and neighbourhood data all in one place.
immobiliare.it API
Search Italian property listings for sale or rent, browse real estate agencies, and explore price trends across Italian cities — all via immobiliare.it.