Get a home's deed and mortgage history
https://api.ruuster.com/v1/public-records/{recordId}/historyEvery recorded transfer and mortgage on one US home, newest first, with each mortgage marked open, released or paid off. Buyer, seller and borrower names with include=owner. A lookup call, one home at a time.
- Authentication:
x-api-keyandx-emailheaders of an owner or admin - Rate limit: lookup call, 20 per minute per key, within the 120 per minute
- Counts toward your brokerage's daily public record allowance (500 by default)
Returns the full recorded history of one home from the county public records: every deed and every mortgage, not just the last sale and the loans still open. Get the recordId from Look up a public record.
This is a lookup call (20 per minute) and counts toward your brokerage's daily public record allowance (500 per day by default, shared with the lookup). One home per call.
Counties often never record a loan's release, so each mortgage's status is Ruuster's reading of the record: released when a release was recorded, paid_off when the home later sold (the seller's loans are paid at closing) or a later refinance replaced it, and open otherwise. closedBy and closedOn say which. Treat it as an estimate: this isn't a title, vesting or encumbrance report. Records run about two months behind recording; asOf is the date of the county load.
Path parameters
| Name | Type | Description |
|---|---|---|
recordId |
string | The county record's id (digits), record.recordId from Look up a public record |
Query parameters
| Name | Type | Default | Description |
|---|---|---|---|
include |
string | owner adds the buyers and sellers on each transfer (names, buyer vesting, mailing addresses) and the borrowers on each mortgage |
Response
| Field | Description |
|---|---|
recordId, asOf |
The home, and when its county record was loaded |
transfers[] |
recordingDate, contractDate, documentType, price (null when the county doesn't disclose prices), pricePerSqft, cashPurchase, intraFamily, distressed, reo, titleCompany, documentNumber; with include=owner also buyers (names, vesting, mailingAddress) and sellers (names, mailingAddress) |
mortgages[] |
recordingDate, amount, purpose, type, rate, termMonths, dueDate, heloc, purchaseMoney, lender, lenderType, titleCompany, documentNumber, status (open, released, paid_off), closedBy (release, sale, refinance or null), closedOn; with include=owner also borrowers |
An unknown recordId returns 404 not_found, and a home outside the states your MLSs cover returns 400 mls_not_in_scope. A home with no recorded transfers or mortgages returns empty lists.