Rent APIrent.com ↗
Access rental listings, floor plans, unit availability, amenities, schools, and nearby places from Rent.com via a structured REST API.
What is the Rent API?
The Rent.com API covers 9 endpoints for extracting rental property data including listings search, full property details, floor plans, unit-level availability, and neighborhood context. The search_listings endpoint accepts a location_slug plus filters for beds, baths, price range, and pet policy, returning paginated summaries with photos, highlighted amenities, and floor plan previews. Companion endpoints add per-property depth: amenities by category, nearby schools with ratings and distances, active specials, and nearby places grouped by type.
curl -X GET 'https://api.parse.bot/scraper/96daaf79-fa1b-47a3-aa2f-324aa5295942/get_search_autocomplete?query=Austin' \ -H 'X-API-Key: $PARSE_API_KEY'
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 rent-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.
from parse_apis.rent_com_api import Rent, LocationSlug
rent = Rent()
# Discover locations matching "Austin"
result = rent.suggestions.suggest(query="Austin")
for loc in result.location_search:
print(loc.name, loc.seo_path, loc.type)
# Browse rental listings in Austin, TX
for listing in rent.listings.browse(location_slug=LocationSlug.TEXAS_AUSTIN, limit=5):
print(listing.name, listing.price_text, listing.location.city, listing.location.state_abbr)
# Get full property details by constructing from id
prop = rent.property(id="the-ivy-austin-tx-lc6705165")
# List floor plans for the property
for fp in prop.floor_plans():
print(fp.name, fp.bed_count, fp.bath_count, fp.sq_ft, fp.price_range.min, fp.price_range.max)
# List available units (optionally filter by floor_plan_id)
for unit in prop.units():
print(unit.unit_id, unit.rent, unit.is_available, unit.floor_plan_name)
# Get amenities
for amenity in prop.amenities():
print(amenity.amenity, amenity.category, amenity.subcategory)
# Get nearby schools
for school in prop.schools():
print(school.name, school.type, school.overall_rating, school.miles_to_geo_code)
# Get nearby places by category
places = prop.nearby_places()
print(places.grocery.category, places.grocery.total)
print(places.restaurants.category, places.restaurants.total)
# Get current specials/deals
for deal in prop.specials():
print(deal.description, deal.coupon_category)
Autocomplete search suggestions for a location query. Returns matching locations (cities, colleges) and suggested properties matching the query name.
| Param | Type | Description |
|---|---|---|
| queryrequired | string | Search query text for location or property name (e.g. 'New York', 'Austin'). |
{
"type": "object",
"fields": {
"locationSearch": "array of location objects with id, seoPath, name, and type",
"propertySearch": "object containing listings array with property matches"
},
"sample": {
"data": {
"locationSearch": [
{
"id": "4805000",
"name": "Austin, TX",
"type": "CITY",
"seoPath": "/texas/austin/"
}
],
"propertySearch": {
"listings": [
{
"name": "AUSTIN WEST",
"location": {
"city": "Lumberton",
"stateAbbr": "TX"
},
"addressFull": "123 Main St, Springfield, IL 62704",
"urlPathname": "/apartment/austin-west-lumberton-tx-lc5897775",
"propertyType": "APARTMENTS"
}
]
}
},
"status": "success"
}
}About the Rent API
Search and Discovery
The get_search_autocomplete endpoint accepts a free-text query and returns two result sets: a locationSearch array of city or college locations (each with id, seoPath, name, and type) and a propertySearch object with matching listings including name, addressFull, urlPathname, and propertyType. Use the urlPathname values from these results as the location_slug or property_slug inputs to downstream endpoints. The search_listings endpoint takes a location_slug in state/city format and supports optional filters for beds, baths, price_min, price_max, pets, sort, and page, returning a total count, current_page, location_info, and an array of listing objects.
Property Details and Floor Plans
get_property_details returns a single property's full record given a property_slug: id, name, price, priceText, description, propertyType, totalUnits, location (with city, state, lat, lng, zip, neighborhoods), an embedded schools array, and a floorPlans array. For deeper floor plan data, get_floor_plans returns each plan's bedCount, bathCount, sqFt, priceRange (min/max), availabilityStatusCode, and per-plan amenities. get_floor_plan_units goes one level further, exposing individual units with rent, deposit, minSqft, isAvailable, dateAvailable, and floorPlanName. An optional floor_plan_id parameter narrows results to a single plan.
Amenities, Schools, and Nearby Context
get_property_amenities returns each amenity's amenity name, category (such as 'In-Unit Features' or 'Community Features'), and subcategory. get_property_schools lists nearby schools with name, type (public/private/charter), grade, address, districtName, overallRating out of 10, and milesToGeoCode. get_nearby_places groups points of interest into five category objects — grocery, restaurants, shopping, parks, and entertainment — each with a total count and a places array including distance and coordinates. get_property_specials returns active promotions with a description and couponCategory.
The Rent API is a managed, monitored endpoint for rent.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when rent.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 rent.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.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a rental comparison tool that aggregates listings across multiple cities using
search_listingswith price and bedroom filters - Track unit-level availability and move-in dates across a portfolio of properties using
get_floor_plan_units - Score neighborhoods for renters by combining school ratings from
get_property_schoolswith walkability data fromget_nearby_places - Alert users to new deals and limited-time rent specials via
get_property_specials - Populate property profile pages with full amenity breakdowns by category using
get_property_amenities - Feed a relocation tool with per-city autocomplete and property suggestions using
get_search_autocomplete - Analyze pricing trends by scraping
priceRangefields fromget_floor_plansacross multiple markets
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 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.
Does Rent.com have an official developer API?+
What does `get_floor_plan_units` return compared to `get_floor_plans`?+
get_floor_plans returns plan-level summaries: bedCount, bathCount, sqFt, priceRange (min/max), and availabilityStatusCode. get_floor_plan_units goes to the individual unit level, adding unitId, exact rent, deposit, isAvailable, and dateAvailable for each unit. You can pass an optional floor_plan_id to filter units within a single plan.Does the search endpoint support filtering by amenities or property type?+
search_listings filters by beds, baths, price_min, price_max, pets, and sort. Amenity-level or property-type filters are not exposed as parameters. You can fork this API on Parse and revise it to add those filter inputs if the underlying data supports them.Does the API return listing photos or virtual tour links?+
search_listings includes a photos array in each listing object. get_property_details does not currently expose a dedicated photo gallery or virtual tour URLs as distinct response fields. You can fork the API on Parse and revise get_property_details to add a photo or media endpoint.How does pagination work in `search_listings`?+
total integer and a current_page string alongside the listings array. Pass an integer via the page parameter to retrieve subsequent pages. The page size is fixed and determined by the source; there is no per-page count parameter exposed.