RentCast platformRentCast API

Fetch RentCast data with one API

Use the RentCast provider API for US property value and long-term rent AVM estimates with model bounds and provider-selected comparables; sale and long-term-rental listing search by ZIP, radius or “City, ST”; and ZIP-level sale/rental listing statistics. Estimates are not appraisals or guarantees; listings are the provider’s licensed feed slice, not complete or current inventory; statistics are listing-derived aggregates, not transactions. Documentation-backed beta.

What RentCast endpoints does RealtyCrawl ship?

Estimate a US property value and long-term rent through RentCast provider AVMs, then read the retained prop_rentcast_ property, estimate provenance, valuations and provider-selected comparables. Estimates are not appraisals or sale prices. Each endpoint has a documented request, response schema, and credit cost.

Search listings

50 credits

POST /v1/rentcast/listings/search

Find RentCast listings by location and transaction type.

location · transaction

Read a saved listing

1 credits

GET /v1/listings/{listing_id}

Read your account’s retained listing observation without a fresh source request.

listing_id

Listing price history

1 credits

GET /v1/listings/{listing_id}/history

Read source-reported events from your retained observation; these are not verified public transactions.

listing_id

Read a saved estimate property

1 credits

GET /v1/properties/{property_id}

Read your account’s saved estimate property observation.

property_id

Read a saved estimate record

1 credits

GET /v1/properties/{property_id}/records

Read the estimate provenance record saved with your estimate observation.

property_id

Read saved AVM estimates

1 credits

GET /v1/properties/{property_id}/valuations

Read provider AVM value and rent estimates saved with your estimate observation.

property_id

Read saved AVM comparables

1 credits

GET /v1/properties/{property_id}/comparables

Read provider-selected comparables saved with your estimate observation.

property_id

Search ZIP market statistics

50 credits

POST /v1/markets/search

Find RentCast ZIP markets for a supported US postal code.

platforms · query

Saved market definition

1 credits

GET /v1/markets/{market_id}

Read the market definition saved by your account.

market_id

Estimate a US property value and rent

50 credits

POST /v1/properties/estimate

Estimate a US property value and long-term rent through RentCast provider AVMs.

address

Read saved ZIP statistics

1 credits

GET /v1/markets/{market_id}/stats

Read retained RentCast ZIP-level listing statistics.

market_id

Check live capabilities for operation and market availability. Unavailable requests are not charged.

Checking current source coverage…

Source request · Fetches the source through the enabled adapter.

RentCast API
11 endpoints documented
View docs
POST/v1/rentcast/listings/searchGet API key
curl -X POST 'https://realtycrawl.dev/v1/rentcast/listings/search' \
  -H "x-api-key: $REALTYCRAWL_API_KEY" \
  -H 'X-Max-Credits: 50' \
  -H "Idempotency-Key: YOUR_IDEMPOTENCY_KEY" \
  -H "content-type: application/json" \
  -d '{"location":{"kind":"text","query":"5500 Grand Lake Dr, San Antonio, TX 78244","country":"US"},"transaction":"sale"}'
API key required
// Live requests require a RealtyCrawl API key.
// Copy the request to your backend and set REALTYCRAWL_API_KEY.
// Check source and operation availability before running a request.

How the RentCast API works

Integrate a source-linked real estate API with standard HTTP requests, one API key, and structured JSON responses.

Authenticate every call

Send your RealtyCrawl API key in the x-api-key header. Keep it in your server environment.

GET and POST requests

Use path and query parameters for GET requests. Send a JSON body for POST operations.

One credit system

Source requests cost 50 credits per successful call. Saved reads cost 1 credit per observation, including successful saved-batch items. Failed calls are refunded; usage and balance appear in the response headers.

JSON and data exports

JSON keeps data and meta together. Field projection and CSV/NDJSON exports are response options; export request and credit metadata stays in headers.

The usual integration chain

From a supported source operation to data in your application.

  1. 1CheckGET /v1/meta/capabilitiesConfirm coverage and accepted selectors.
  2. 2RequestPOST /v1/rentcast/listings/searchSend the inputs for the selected operation.
  3. 3Readdata + metaInspect results, source outcomes, and warnings.
  4. 4ConnectYour applicationPreserve identifiers and observation times.

Request

curl --request POST 'https://realtycrawl.dev/v1/rentcast/listings/search' \
  --header "x-api-key: $REALTYCRAWL_API_KEY" \
  --header 'X-Max-Credits: 50' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: YOUR_IDEMPOTENCY_KEY' \
  --data '{"location":{"kind":"text","query":"5500 Grand Lake Dr, San Antonio, TX 78244","country":"US"},"transaction":"sale"}'

Illustrative response

{
  "data": [{"id":"lst_rentcast_4b825dc642cb6eb9a060e54bf8d69288","native_id":"f0ee2f1d3e7c3b4f8a2c1d0e9f8a7b6c-0","url":null,"source":{"platform":"rentcast","provider":"rentcast","country":"US","native_id":"f0ee2f1d3e7c3b4f8a2c1d0e9f8a7b6c-0","url":null,"observed_at":"2026-01-01T12:00:00Z","access_class":"licensed_feed"},"transaction":"sale","status":"active","source_status":"Active","title":null,"property":{"id":null,"address":{"country":"US","formatted":"5500 Grand Lake Dr, San Antonio, TX 78244","line1":"5500 Grand Lake Dr","unit":null,"city":"San Antonio","region":"TX","postal_code":"78244"},"property_type":"single_family","bedrooms":3,"rooms":null,"bathrooms":2,"geometry":{"latitude":29.4482,"longitude":-98.3205,"precision":"unknown","crs":"EPSG:4326"},"areas":[{"value":1878,"unit":"sqft","basis":"living"}],"layout":null,"year_built":1988},"price":{"amount":"249999","currency":"USD","kind":"asking","period":"one_time","min":null,"max":null,"unit_code":null,"display_text":null},"media":[],"observed_at":"2026-01-01T12:00:00Z","extensions":{"listing_type":"standard","listed_date":"2025-12-15","days_on_market":21,"mls_name":"SABOR","mls_number":"1782341","contacts_status":"provider agent/office contacts are collected but not returned in this binding","media_status":"provider listing photos are not returned in this binding"}}],
  "meta": {
    "request_id": "example_request",
    "schema_version": "1.0.0",
    "generated_at": "2026-01-01T12:00:00Z",
    "completeness": "unknown",
    "sources": [
      {
        "platform": "rentcast",
        "status": "success"
      }
    ]
  }
}

What lands in data

Source context stays with the property observations.

Property
address · property_type · bedrooms · areas
Estimates
estimate · lower · upper · model · as_of
Comparables
property · price · distance_meters · correlation basis
Source
platform · provider · observed_at · access_class

Inside the gateway

One request keeps the source, operation, and result connected.

01

Operation selection

Your path selects the platform and operation. Capabilities describe accepted selectors and markets.

02

Source collection

The gateway routes supported requests to the configured source and records its outcome.

03

Contract normalization

Property attributes, prices, and units are mapped into a shared JSON schema.

04

Response metadata

Completeness, warnings, and source timestamps help your application interpret the result.

Billing rules that make evaluation clear

  • Source requests cost 50 credits per successful call. Saved reads cost 1 credit per observation, including successful saved-batch items.
  • 500 signup trial credits
  • Failed calls are refunded
  • Usage in response headers
  • Set an X-Max-Credits budget
  • One key across the catalog

How we get the data

A source request becomes a structured observation, with its origin and collection time attached.

What your request targets

RentCast property AVM estimates, listings and ZIP statistics records through a supported listing operation. Catalog markets: United States.

How records are returned

Search returns normalized listing IDs for saved reads. Use URL or native-ID detail only where that source operation is documented and enabled.

What comes with each result

Operation-specific resource fields sit alongside source identifiers, collection times, and completeness metadata.

What an observation means

Collection time and source update time describe different events. Stored observations expire after 24 hours without triggering a fresh crawl.

SOURCE → SHARED SCHEMA

Listing identifier

→ source.native_id

Published asking price

→ price.amount + currency

Collection timestamp

→ source.observed_at

What this API
is used for

Source-linked data for property products and research.

11

documented operations

1–50

credits per call / batch item

property workflows

Estimate a US property value and long-term rent through RentCast provider AVMs, then read the retained prop_rentcast_ property, estimate provenance, valuations and provider-selected comparables. Estimates are not appraisals or sale prices.

Coverage and field availability vary by source. Check capabilities before you start a workload.

Use case examples

Connect one source to the tools and workflows you already use.

Search applications

REST · application backend

Search returns normalized listing IDs for saved reads. Use URL or native-ID detail only where that source operation is documented and enabled.

Research pipelines

JSON · notebooks · BI

Compare property observations with their currencies, area units, and timestamps.

Assistant workflows

MCP · tools · agents

Give an assistant supported data operations with explicit request budgets.

Make your first request

Choose an operation, supply its inputs, and send your API key from your backend.

Search listings

curl --request POST 'https://realtycrawl.dev/v1/rentcast/listings/search' \
  --header "x-api-key: $REALTYCRAWL_API_KEY" \
  --header 'X-Max-Credits: 50' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: YOUR_IDEMPOTENCY_KEY' \
  --data '{"location":{"kind":"text","query":"5500 Grand Lake Dr, San Antonio, TX 78244","country":"US"},"transaction":"sale"}'

Read a saved listing

curl --request GET 'https://realtycrawl.dev/v1/listings/lst_rentcast_4b825dc642cb6eb9a060e54bf8d69288' \
  --header "x-api-key: $REALTYCRAWL_API_KEY" \
  --header 'X-Max-Credits: 1'

Listing price history

curl --request GET 'https://realtycrawl.dev/v1/listings/lst_rentcast_4b825dc642cb6eb9a060e54bf8d69288/history' \
  --header "x-api-key: $REALTYCRAWL_API_KEY" \
  --header 'X-Max-Credits: 1'

Read a saved estimate property

curl --request GET 'https://realtycrawl.dev/v1/properties/prop_rentcast_4b825dc642cb6eb9a060e54bf8d69288' \
  --header "x-api-key: $REALTYCRAWL_API_KEY" \
  --header 'X-Max-Credits: 1'

Read a saved estimate record

curl --request GET 'https://realtycrawl.dev/v1/properties/prop_rentcast_4b825dc642cb6eb9a060e54bf8d69288/records' \
  --header "x-api-key: $REALTYCRAWL_API_KEY" \
  --header 'X-Max-Credits: 1'

Read saved AVM estimates

curl --request GET 'https://realtycrawl.dev/v1/properties/prop_rentcast_4b825dc642cb6eb9a060e54bf8d69288/valuations' \
  --header "x-api-key: $REALTYCRAWL_API_KEY" \
  --header 'X-Max-Credits: 50'

Read saved AVM comparables

curl --request GET 'https://realtycrawl.dev/v1/properties/prop_rentcast_4b825dc642cb6eb9a060e54bf8d69288/comparables' \
  --header "x-api-key: $REALTYCRAWL_API_KEY" \
  --header 'X-Max-Credits: 50'

Search ZIP market statistics

curl --request POST 'https://realtycrawl.dev/v1/markets/search' \
  --header "x-api-key: $REALTYCRAWL_API_KEY" \
  --header 'X-Max-Credits: 50' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: YOUR_IDEMPOTENCY_KEY' \
  --data '{"platforms":["rentcast"],"query":"California"}'

Saved market definition

curl --request GET 'https://realtycrawl.dev/v1/markets/mkt_fhfa_state_CA' \
  --header "x-api-key: $REALTYCRAWL_API_KEY" \
  --header 'X-Max-Credits: 1'

Estimate a US property value and rent

curl --request POST 'https://realtycrawl.dev/v1/properties/estimate' \
  --header "x-api-key: $REALTYCRAWL_API_KEY" \
  --header 'X-Max-Credits: 50' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: YOUR_IDEMPOTENCY_KEY' \
  --data '{"address":{"formatted":"123 Example Street, Austin, TX","country":"US"}}'

Read saved ZIP statistics

curl --request GET 'https://realtycrawl.dev/v1/markets/mkt_rentcast_90210/stats' \
  --header "x-api-key: $REALTYCRAWL_API_KEY" \
  --header 'X-Max-Credits: 1'
RentCast platformRentCast API

Same key as the rest of the catalog

Endpoints

What data does the RentCast API return?

JSON responses preserve the operation data and request metadata. Supported data operations also offer response field projection and CSV/NDJSON exports.

Comparison

How does RealtyCrawl structure RentCast data?

Keep the source context while using the same request and response conventions across your integration.

Source context and RealtyCrawl conventions
Your application needsSource contextRealtyCrawl contract
Resource identitySource-scoped resource identifierSource reference and RealtyCrawl ID
Operation dataSource-specific fields and unitsTyped resource schemas and explicit missing values
FreshnessCollection and update timesExplicit observation timestamps
Missing informationSource-dependent attributesNullable fields and field_status
CoverageOperation and market availabilityLive capabilities and source outcomes
DiagnosticsSource warnings and errorsRequest IDs and completeness metadata
AuthenticationA request to RealtyCrawlOne API key across supported platforms
FAQ

Have a question?
We got answers

Find answers to common questions about the RentCast API, credits, and coverage.

Contact us
How do I start using the RentCast API?

Get a RealtyCrawl API key, check RentCast in /v1/meta/capabilities, and send a supported request from your backend with the x-api-key header.

Are all RentCast operations available?

The catalog describes request contracts. Live enablement, accepted location selectors, and supported markets are declared per operation in /v1/meta/capabilities. Check the exact operation before running a workload.

How much does a RentCast request cost?

Source requests cost 50 credits per successful call. Saved reads cost 1 credit per observation, including successful saved-batch items. Signup includes 500 trial credits. Failed calls are refunded. Read the credit headers for the charge and remaining balance.

Will every observation contain every field?

No. Data varies by source, market, and operation. Nullable fields and field_status distinguish missing, unsupported, restricted, and temporarily unavailable values. Keep response warnings with the result.

Is a stored observation a fresh source crawl?

Stored listing, media, and history observations expire after 24 hours and do not trigger a new crawl. Inspect observed_at, source_updated_at, and response metadata to understand the age of a record.

Is this an official RentCast API?

RealtyCrawl is an independent data API and is not affiliated with RentCast. Source availability and supported operations are declared in the capabilities endpoint.

Can I use the same key for another platform?

Yes. One RealtyCrawl API key authenticates supported operations across the catalog. Check capabilities when adding a platform because availability and accepted inputs vary.