REALTY-DATA.
Api

Monthly market report for a geography

GET
/v1/market-reports

Returns a monthly market report for a geography: inventory, sales, price, and days-on-market aggregates computed as-of the end of the requested month from canonical listing facts. Both geography (state:CA, zip:90001, or county:CA/Los Angeles) and a first-of-month period (YYYY-MM-01) are required.

Aggregation is authorization-scoped at the source: your signed MLS, OSN, region, and statistics product predicate is applied to the underlying source rows before they are aggregated, so a feed you are not entitled to cannot influence any count, median, average, suppression decision, or the contributing_sources set. meta.entitlement_version stamps the bundle version applied.

Sparse measures are suppressed for privacy. The price and days-on-market measures each require at least five populated values (minimum_cell_size) independently; a measure that does not meet the threshold is returned as null with suppressed: true. Counts and prices are returned as numbers, and contributing_sources lists the source systems that contributed to the aggregate.

A geography-and-period scope with no authorized source rows returns 404 not_found. If the canonical aggregate cannot be computed and proven correctly scoped, the request fails closed with 503 service_unavailable; retry with backoff.

Authorization

gatewayApiKey
x-api-key<token>

Customer API key, verified by the edge authorizer before any route runs. Unauthorized requests are rejected at the edge boundary.

In: header

Query Parameters

geography*string

state:CA | zip:90001 | county:CA/Los Angeles

Match^(state:[A-Z]{2}|zip:\d{5}|county:[A-Z]{2}\/[^/]{1,200})$
period*string

First-of-month period, YYYY-MM-01

Match^\d{4}-(0[1-9]|1[0-2])-01$

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/market-reports?geography=string&period=string"
{  "data": {    "geography_type": "state",    "geography_id": "CA",    "period_start": "2026-06-01",    "listing_inventory": 48213,    "new_listings": 9127,    "closed_sales": 7043,    "median_list_price": 899000,    "median_close_price": 875000,    "average_days_on_market": 38.5,    "contributing_sources": [      "example-mls",      "example-public-records"    ],    "minimum_cell_size": 5,    "suppressed": false  },  "meta": {    "entitlement_version": 7  }}
{  "error": "string"}
{  "error": "string"}
{  "error": "string"}