Documentation menu
GET

/property

Returns property intelligence records: transfers (sales/deeds) and assessments (parcel/valuation snapshots) for a jurisdiction. The record_type field is always present (never null) and indicates whether each record is a "transfer" or "assessment".

Base URL

https://api.threshmoor.com

Query parameters

ParameterTypeDefaultRequiredDescription
jurisdictionstringNoFilter to a single jurisdiction (e.g. "austin"). Case-insensitive. Omit to query all jurisdictions.
limitinteger25NoHow many records to return. Accepted range: 1–100.
property_typestringNoKeyword filter by property type (e.g. "Residential", "Condo"). Case-insensitive.

Response shape

Every successful response is wrapped in a PropertyResponse object:

{
  "jurisdiction": string,
  "count":        number,
  "records":      Property[]
}

Property object

FieldTypeDescription
parcel_idstring | nullParcel or property identifier.
record_typestringAlways present (never null). Indicates whether the record is a "transfer" (sale/deed) or "assessment" (parcel/valuation snapshot).
owner_namestring | nullName of the property owner.
property_typestring | nullType of property (e.g. "Residential", "Condo", "Commercial").
sale_pricestring | nullSale price if the record is a transfer.
sale_datestring | nullDate of sale (ISO 8601 format).
assessed_valuestring | nullAssessed value if the record is an assessment.
addressstring | nullStreet address.
citystring | nullCity name.
zipstring | nullZIP / postal code.
latitudestring | nullLatitude coordinate.
longitudestring | nullLongitude coordinate.
jurisdictionstringThe jurisdiction this record belongs to (always present, e.g. "Austin, TX").

Example

Request

GET /property?jurisdiction=austin&limit=2 HTTP/1.1
Host: api.threshmoor.com
X-API-Key: thresh_live_...

Response — 200 OK

{
  "jurisdiction": "Austin, TX",
  "count": 2,
  "records": [
    {
      "parcel_id": "0228140301",
      "record_type": "transfer",
      "owner_name": "Garcia, Maria L",
      "property_type": "Residential",
      "sale_price": "485000",
      "sale_date": "2026-06-02T00:00:00.000",
      "assessed_value": null,
      "address": "1710 W 10TH ST",
      "city": "AUSTIN",
      "zip": "78703",
      "latitude": "30.27891200",
      "longitude": "-97.75612800",
      "jurisdiction": "Austin, TX"
    },
    {
      "parcel_id": "0305120415",
      "record_type": "assessment",
      "owner_name": "Eastside Holdings LLC",
      "property_type": "Condo",
      "sale_price": null,
      "sale_date": null,
      "assessed_value": "312500",
      "address": "1801 E 6TH ST UNIT 204",
      "city": "AUSTIN",
      "zip": "78702",
      "latitude": "30.26418900",
      "longitude": "-97.72405300",
      "jurisdiction": "Austin, TX"
    }
  ]
}

Error responses

StatusMeaning
502The upstream data source is unreachable or returned an unexpected response. The API never leaks raw errors; you will receive a short, human-readable message.
{
  "detail": "Could not reach the Austin property data source: ..."
}