Search individual loan records with filters
Search and list individual public-record mortgage and deed loan records — one row per loan (purchase, refinance, origination). Filter by geography (state, county, city, zip), lender, originator, loan amount, interest rate, loan type/purpose, and recording date, with sorting and cursor pagination. This is the discrete per-loan record search: use it to find specific loans or build a filtered loan list. Each row carries the property address, loan terms, the originating loan officer, and borrowerStatus — so this is also how you pull a loan officer's own funded production ("my closed loans", "my past clients", "my book of business"): filter by originator (their NMLS id), and add borrowerStatus for borrowers still in the home — that is the five current-owner codes (Current, R_CWCLO, R_CWNLO, E_CWCLO, E_CWNLO), NOT "Current" alone, which omits everyone who has since refinanced. That is market data, not CRM data — it does not require the loan officer to have added anything to a CRM workspace. (For aggregate market rates and volumes use the market search; for one loan by its ID use the loan detail endpoint.) If you only need how many loans match and not the records themselves, send the same request body to countLoans.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/loans" \ -H "Content-Type: application/json" \ -d '{}'{
"cursor": "string",
"data": [
{
"apn": "string",
"borrowerName": "string",
"borrowerStatus": "Current",
"brokerNmlsId": "string",
"city": "string",
"companyName": "string",
"companyNmlsId": "string",
"conforming": true,
"coordinates": {
"lat": 0,
"lon": 0
},
"fips": "string",
"id": "string",
"interestRate": 0,
"lenderName": "string",
"listPrice": 0,
"loanType": "string",
"mmPropertyId": "string",
"mortgageAmount": 0,
"mortgageDate": "string",
"originatorEmail": "string",
"originatorName": "string",
"originatorNmlsId": "string",
"salePrice": 0,
"sellerName": "string",
"state": "string",
"streetAddress": "string",
"transactionDate": "string",
"transactionType": "string",
"zipCode": "string"
}
],
"lenderNormalizations": [
{
"aliasCount": 0,
"displayName": "string",
"id": "string",
"matchedVia": "id",
"original": "string",
"totalDocuments": 0
}
],
"locationNormalizations": [
{
"candidates": [
"string"
],
"confidence": "normalized",
"displayName": "Saint Louis, MO",
"field": "city",
"id": "city_mo_saint-louis",
"normalized": "Saint Louis",
"original": "St. Louis",
"variants": [
"string"
]
}
],
"total": 0
}{
"error": "string"
}{
"error": "string"
}{
"error": "string"
}{
"error": "string"
}{
"error": "string",
"limit": 0,
"size": 0
}