curl --request GET \
--url https://api.investorlift.com/v1/lenders \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.investorlift.com/v1/lenders', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.investorlift.com/v1/lenders"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": [
{
"rank": 1,
"lender": {
"id": "len_b959a8d2abef",
"name": "CAPITAL FUND I LLC",
"lender_class": "NONBANK",
"is_hard_money": true
},
"n": 816,
"volume": 436204000,
"n_unpriced": 0,
"share": 0.003146,
"n_first_lien": 515,
"n_heloc": 15,
"n_open_liens": 933,
"open_balance": 307985588,
"n_parcels": 3325,
"median_amount": 313500,
"last_recorded_on": "2026-06-11",
"n_purchase_money": 406,
"n_investor": 506,
"n_deals_financed": 222,
"share_by_volume": 0.004472,
"n_borrowers": 509,
"in_geometry": null,
"as_of": "2026-06-25",
"dated": true
},
{
"rank": 2,
"lender": {
"id": "len_86e697f7effc",
"name": "EZ HOMES INC",
"lender_class": "NONBANK",
"is_hard_money": true
},
"n": 315,
"volume": 83365730,
"n_unpriced": 0,
"share": 0.001214,
"n_first_lien": 227,
"n_heloc": 0,
"n_open_liens": 405,
"open_balance": 72385580,
"n_parcels": 848,
"median_amount": 220000,
"last_recorded_on": "2026-06-11",
"n_purchase_money": 148,
"n_investor": 119,
"n_deals_financed": 78,
"share_by_volume": 0.000855,
"n_borrowers": 277,
"in_geometry": null,
"as_of": "2026-06-25",
"dated": true
}
],
"page": {
"next_cursor": "eyJ2IjoxLCJydW4iOiIxNzg5NTMzMTgwIiwicSI6IjExMGJjNjdiMjJhNGY0YzdiZWUzMDM0MTc3YzI5MTc5YzM3YTIxMTg2YmI1ZDQ3MTEwNTUxMjRhYTRiNjIxZjUiLCJrIjpbMzE1LCJsZW5fODZlNjk3ZjdlZmZjIl19",
"limit": 2,
"returned": 2
},
"meta": {
"generated_at": "2026-09-15T12:00:00.000Z",
"coverage": [
{
"market": "phx",
"state": "AZ",
"counties": [
{
"fips": "04013",
"name": "Maricopa",
"data_end": "2026-08-12"
},
{
"fips": "04021",
"name": "Pinal",
"data_end": "2026-08-06"
}
],
"bbox": [
-113.332773,
32.46915,
-110.455491,
33.999503
],
"data_end": "2026-08-27",
"build_run_id": 3,
"registry_run": 11,
"registry_version": "v6-auction",
"dataset_version": 1789533180,
"loaded_at": "2026-09-16T04:32:59.760Z",
"metro_buy_to_resale_ratio": 0.719,
"universe_kind": "metro",
"universe_zips": null,
"point_tolerance_miles": 20,
"n_parcels": 1836311,
"listings_data_end": "2026-08-31",
"agents_data_end": "2026-08-31",
"wholesale_as_of": "2026-09-09",
"str_as_of": "2026-09-10",
"str": {
"jurisdictions": [
{
"name": "APACHE_JUNCTION",
"regime": "NOT_REQUIRED",
"coverage_reason": "NO_REQUIREMENT",
"served": false,
"snapshot_only": false,
"licence_start": null,
"snapshot_date": null,
"feed_stale": false,
"sources": [],
"n_licensed": 0,
"n_pending": 0,
"n_expired": 0,
"n_advertised": 0,
"share_unmatched": null,
"share_assumed": null
},
{
"name": "AVONDALE",
"regime": "REQUIRED",
"coverage_reason": "REQUIRED_NOT_PUBLISHED",
"served": false,
"snapshot_only": false,
"licence_start": null,
"snapshot_date": null,
"feed_stale": false,
"sources": [],
"n_licensed": 0,
"n_pending": 0,
"n_expired": 0,
"n_advertised": 0,
"share_unmatched": null,
"share_assumed": null
}
]
},
"auction_counted": true,
"parcel_as_of": "2026-08-27",
"address_as_of": null,
"parcel": {
"parcel_as_of": "2026-08-27",
"n_parcels": 1836311,
"sale_mortgage_measured": false,
"financing": {
"as_of": "2026-06-25",
"dated": true,
"dated_reason": "dataset not in current delivery",
"n_parcels": 1611957,
"n_with_open_lien": 1032808,
"n_free_and_clear": 579149,
"n_avm": 1528967,
"n_involuntary": 192400,
"n_lenders": 76212
},
"permits": {
"as_of": "2026-09-01",
"n_permits": 2377496,
"n_parcels": 663045,
"n_unmatched": 355,
"jurisdictions": [
{
"jurisdiction": "PHOENIX",
"n_permits": 795764,
"last_issue_date": "2026-05-11",
"windows_measured": null
},
{
"jurisdiction": "MESA",
"n_permits": 330809,
"last_issue_date": "2026-05-29",
"windows_measured": null
},
{
"jurisdiction": "MARICOPA COUNTY",
"n_permits": 217628,
"last_issue_date": "2027-10-17",
"windows_measured": null
},
{
"jurisdiction": "SCOTTSDALE",
"n_permits": 182189,
"last_issue_date": "2024-11-05",
"windows_measured": null
},
{
"jurisdiction": "GOODYEAR",
"n_permits": 173391,
"last_issue_date": "2025-04-02",
"windows_measured": null
},
{
"jurisdiction": "GILBERT",
"n_permits": 160199,
"last_issue_date": "2025-04-07",
"windows_measured": null
},
{
"jurisdiction": "TEMPE",
"n_permits": 102909,
"last_issue_date": "2025-12-29",
"windows_measured": null
},
{
"jurisdiction": "BUCKEYE",
"n_permits": 94951,
"last_issue_date": "2026-03-18",
"windows_measured": null
},
{
"jurisdiction": "CHANDLER",
"n_permits": 94942,
"last_issue_date": "2026-05-29",
"windows_measured": null
},
{
"jurisdiction": "PEORIA",
"n_permits": 75435,
"last_issue_date": "2026-05-07",
"windows_measured": null
},
{
"jurisdiction": "QUEEN CREEK",
"n_permits": 59103,
"last_issue_date": "2026-04-24",
"windows_measured": null
},
{
"jurisdiction": null,
"n_permits": 43845,
"last_issue_date": "2026-06-05",
"windows_measured": null
},
{
"jurisdiction": "PARADISE VALLEY",
"n_permits": 23135,
"last_issue_date": "2026-04-24",
"windows_measured": null
},
{
"jurisdiction": "AVONDALE",
"n_permits": 7961,
"last_issue_date": "2026-04-24",
"windows_measured": null
},
{
"jurisdiction": "MARICOPA",
"n_permits": 5732,
"last_issue_date": "2026-12-12",
"windows_measured": null
},
{
"jurisdiction": "YOUNGTOWN",
"n_permits": 3979,
"last_issue_date": "2026-06-05",
"windows_measured": null
},
{
"jurisdiction": "EL MIRAGE",
"n_permits": 1971,
"last_issue_date": "2026-04-13",
"windows_measured": null
},
{
"jurisdiction": "YUMA",
"n_permits": 1909,
"last_issue_date": "2009-01-15",
"windows_measured": null
},
{
"jurisdiction": "FOUNTAIN HILLS",
"n_permits": 767,
"last_issue_date": "2026-05-21",
"windows_measured": null
},
{
"jurisdiction": "ELMIRAGE",
"n_permits": 521,
"last_issue_date": "2025-08-08",
"windows_measured": null
},
{
"jurisdiction": "SUN CITY",
"n_permits": 133,
"last_issue_date": null,
"windows_measured": null
},
{
"jurisdiction": "COCONINO COUNTY",
"n_permits": 63,
"last_issue_date": "2024-02-16",
"windows_measured": null
},
{
"jurisdiction": "PINAL COUNTY",
"n_permits": 54,
"last_issue_date": "2022-07-21",
"windows_measured": null
},
{
"jurisdiction": "APACHE JUNCTION",
"n_permits": 47,
"last_issue_date": "2025-05-13",
"windows_measured": null
},
{
"jurisdiction": "PIMA COUNTY",
"n_permits": 21,
"last_issue_date": "2016-10-24",
"windows_measured": null
},
{
"jurisdiction": "WITTMANN",
"n_permits": 8,
"last_issue_date": "2026-02-03",
"windows_measured": null
},
{
"jurisdiction": "JACKSON COUNTY",
"n_permits": 7,
"last_issue_date": null,
"windows_measured": null
},
{
"jurisdiction": "LEWISVILLE",
"n_permits": 5,
"last_issue_date": "2024-02-07",
"windows_measured": null
},
{
"jurisdiction": "MONTGOMERY",
"n_permits": 4,
"last_issue_date": "2023-06-05",
"windows_measured": null
},
{
"jurisdiction": "RIVERSIDE COUNTY",
"n_permits": 3,
"last_issue_date": "2026-06-20",
"windows_measured": null
},
{
"jurisdiction": "LITCHFIELD PARK",
"n_permits": 3,
"last_issue_date": null,
"windows_measured": null
},
{
"jurisdiction": "APACHE JUNCTION - SEWER UTILITY",
"n_permits": 2,
"last_issue_date": "2026-05-07",
"windows_measured": null
},
{
"jurisdiction": "FORT WORTH",
"n_permits": 2,
"last_issue_date": null,
"windows_measured": null
},
{
"jurisdiction": "YAVAPAI COUNTY",
"n_permits": 1,
"last_issue_date": null,
"windows_measured": null
},
{
"jurisdiction": "LOCUST GROVE",
"n_permits": 1,
"last_issue_date": null,
"windows_measured": null
},
{
"jurisdiction": "ORO VALLEY",
"n_permits": 1,
"last_issue_date": null,
"windows_measured": null
},
{
"jurisdiction": "TANGIPAHOA",
"n_permits": 1,
"last_issue_date": "2019-05-28",
"windows_measured": null
}
]
},
"owner_profile": {
"as_of": "2026-09-09",
"n_parcels": 1611077,
"n_multi": 646963,
"n_portfolio_5": 277841
},
"history": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"zips": [
"85251"
],
"n_parcels": 18774,
"n_events": 236022,
"n_weeks": 62,
"domains": {
"tax": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 18597
},
"deed": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 17615
},
"sale": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 1700
},
"listing": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 21122
},
"mailing": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 2128
},
"vacancy": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 2583
},
"financing": {
"first_week": "2025-12-02",
"last_week": "2026-06-25",
"n_events": 6420
},
"occupancy": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 1297
},
"ownership": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 3238
},
"structure": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 2548
},
"valuation": {
"first_week": "2025-07-24",
"last_week": "2026-06-25",
"n_events": 83657
},
"assessment": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 16450
},
"owner_profile": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 58404
},
"classification": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 263
}
}
}
},
"lenders": {
"as_of": "2026-06-25",
"recordings_through": "2026-06-11",
"counties": [
"04013"
],
"history_capture_share": 0.183706,
"n_lender_ids": 32046,
"purchase_measured": true,
"investor_lending_measured": true,
"flips_measured": true,
"borrowers_measured": true,
"takebacks_measured": true,
"counties_measured": false,
"dated": true,
"n_parcels_uncovered": 224192
}
}
],
"dated": [
{
"block": "financing",
"as_of": "2026-06-25",
"reason": "dataset not in current delivery"
},
{
"block": "lenders",
"as_of": "2026-06-25",
"reason": "dataset not in current delivery"
}
],
"terms": "Data: Investorlift Data Services. Public-record and MLS listing data licensed through BatchData; municipal short-term rental registries; Investorlift marketplace records. Attribution and data-use terms: https://developers.investorlift.com/guides/terms"
}
}Rank the lenders of a market, a ZIP, city, county or geometry
The lenders of a market ranked by loans recorded over a period: market-wide, inside one ZIP, city or county, or inside a geometry. Each row has volume, share, open book and typical loan, and the default period is the 24 months to the slice date.
A geometry resolves to the H3 res-8 cells whose centre lies inside it (about 0.3 sq mi each): the edge is hexagonal, not the circle. A key outside the covered counties is 422 outside_coverage. Dated: stamped in meta.dated[].
curl --request GET \
--url https://api.investorlift.com/v1/lenders \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.investorlift.com/v1/lenders', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.investorlift.com/v1/lenders"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": [
{
"rank": 1,
"lender": {
"id": "len_b959a8d2abef",
"name": "CAPITAL FUND I LLC",
"lender_class": "NONBANK",
"is_hard_money": true
},
"n": 816,
"volume": 436204000,
"n_unpriced": 0,
"share": 0.003146,
"n_first_lien": 515,
"n_heloc": 15,
"n_open_liens": 933,
"open_balance": 307985588,
"n_parcels": 3325,
"median_amount": 313500,
"last_recorded_on": "2026-06-11",
"n_purchase_money": 406,
"n_investor": 506,
"n_deals_financed": 222,
"share_by_volume": 0.004472,
"n_borrowers": 509,
"in_geometry": null,
"as_of": "2026-06-25",
"dated": true
},
{
"rank": 2,
"lender": {
"id": "len_86e697f7effc",
"name": "EZ HOMES INC",
"lender_class": "NONBANK",
"is_hard_money": true
},
"n": 315,
"volume": 83365730,
"n_unpriced": 0,
"share": 0.001214,
"n_first_lien": 227,
"n_heloc": 0,
"n_open_liens": 405,
"open_balance": 72385580,
"n_parcels": 848,
"median_amount": 220000,
"last_recorded_on": "2026-06-11",
"n_purchase_money": 148,
"n_investor": 119,
"n_deals_financed": 78,
"share_by_volume": 0.000855,
"n_borrowers": 277,
"in_geometry": null,
"as_of": "2026-06-25",
"dated": true
}
],
"page": {
"next_cursor": "eyJ2IjoxLCJydW4iOiIxNzg5NTMzMTgwIiwicSI6IjExMGJjNjdiMjJhNGY0YzdiZWUzMDM0MTc3YzI5MTc5YzM3YTIxMTg2YmI1ZDQ3MTEwNTUxMjRhYTRiNjIxZjUiLCJrIjpbMzE1LCJsZW5fODZlNjk3ZjdlZmZjIl19",
"limit": 2,
"returned": 2
},
"meta": {
"generated_at": "2026-09-15T12:00:00.000Z",
"coverage": [
{
"market": "phx",
"state": "AZ",
"counties": [
{
"fips": "04013",
"name": "Maricopa",
"data_end": "2026-08-12"
},
{
"fips": "04021",
"name": "Pinal",
"data_end": "2026-08-06"
}
],
"bbox": [
-113.332773,
32.46915,
-110.455491,
33.999503
],
"data_end": "2026-08-27",
"build_run_id": 3,
"registry_run": 11,
"registry_version": "v6-auction",
"dataset_version": 1789533180,
"loaded_at": "2026-09-16T04:32:59.760Z",
"metro_buy_to_resale_ratio": 0.719,
"universe_kind": "metro",
"universe_zips": null,
"point_tolerance_miles": 20,
"n_parcels": 1836311,
"listings_data_end": "2026-08-31",
"agents_data_end": "2026-08-31",
"wholesale_as_of": "2026-09-09",
"str_as_of": "2026-09-10",
"str": {
"jurisdictions": [
{
"name": "APACHE_JUNCTION",
"regime": "NOT_REQUIRED",
"coverage_reason": "NO_REQUIREMENT",
"served": false,
"snapshot_only": false,
"licence_start": null,
"snapshot_date": null,
"feed_stale": false,
"sources": [],
"n_licensed": 0,
"n_pending": 0,
"n_expired": 0,
"n_advertised": 0,
"share_unmatched": null,
"share_assumed": null
},
{
"name": "AVONDALE",
"regime": "REQUIRED",
"coverage_reason": "REQUIRED_NOT_PUBLISHED",
"served": false,
"snapshot_only": false,
"licence_start": null,
"snapshot_date": null,
"feed_stale": false,
"sources": [],
"n_licensed": 0,
"n_pending": 0,
"n_expired": 0,
"n_advertised": 0,
"share_unmatched": null,
"share_assumed": null
}
]
},
"auction_counted": true,
"parcel_as_of": "2026-08-27",
"address_as_of": null,
"parcel": {
"parcel_as_of": "2026-08-27",
"n_parcels": 1836311,
"sale_mortgage_measured": false,
"financing": {
"as_of": "2026-06-25",
"dated": true,
"dated_reason": "dataset not in current delivery",
"n_parcels": 1611957,
"n_with_open_lien": 1032808,
"n_free_and_clear": 579149,
"n_avm": 1528967,
"n_involuntary": 192400,
"n_lenders": 76212
},
"permits": {
"as_of": "2026-09-01",
"n_permits": 2377496,
"n_parcels": 663045,
"n_unmatched": 355,
"jurisdictions": [
{
"jurisdiction": "PHOENIX",
"n_permits": 795764,
"last_issue_date": "2026-05-11",
"windows_measured": null
},
{
"jurisdiction": "MESA",
"n_permits": 330809,
"last_issue_date": "2026-05-29",
"windows_measured": null
},
{
"jurisdiction": "MARICOPA COUNTY",
"n_permits": 217628,
"last_issue_date": "2027-10-17",
"windows_measured": null
},
{
"jurisdiction": "SCOTTSDALE",
"n_permits": 182189,
"last_issue_date": "2024-11-05",
"windows_measured": null
},
{
"jurisdiction": "GOODYEAR",
"n_permits": 173391,
"last_issue_date": "2025-04-02",
"windows_measured": null
},
{
"jurisdiction": "GILBERT",
"n_permits": 160199,
"last_issue_date": "2025-04-07",
"windows_measured": null
},
{
"jurisdiction": "TEMPE",
"n_permits": 102909,
"last_issue_date": "2025-12-29",
"windows_measured": null
},
{
"jurisdiction": "BUCKEYE",
"n_permits": 94951,
"last_issue_date": "2026-03-18",
"windows_measured": null
},
{
"jurisdiction": "CHANDLER",
"n_permits": 94942,
"last_issue_date": "2026-05-29",
"windows_measured": null
},
{
"jurisdiction": "PEORIA",
"n_permits": 75435,
"last_issue_date": "2026-05-07",
"windows_measured": null
},
{
"jurisdiction": "QUEEN CREEK",
"n_permits": 59103,
"last_issue_date": "2026-04-24",
"windows_measured": null
},
{
"jurisdiction": null,
"n_permits": 43845,
"last_issue_date": "2026-06-05",
"windows_measured": null
},
{
"jurisdiction": "PARADISE VALLEY",
"n_permits": 23135,
"last_issue_date": "2026-04-24",
"windows_measured": null
},
{
"jurisdiction": "AVONDALE",
"n_permits": 7961,
"last_issue_date": "2026-04-24",
"windows_measured": null
},
{
"jurisdiction": "MARICOPA",
"n_permits": 5732,
"last_issue_date": "2026-12-12",
"windows_measured": null
},
{
"jurisdiction": "YOUNGTOWN",
"n_permits": 3979,
"last_issue_date": "2026-06-05",
"windows_measured": null
},
{
"jurisdiction": "EL MIRAGE",
"n_permits": 1971,
"last_issue_date": "2026-04-13",
"windows_measured": null
},
{
"jurisdiction": "YUMA",
"n_permits": 1909,
"last_issue_date": "2009-01-15",
"windows_measured": null
},
{
"jurisdiction": "FOUNTAIN HILLS",
"n_permits": 767,
"last_issue_date": "2026-05-21",
"windows_measured": null
},
{
"jurisdiction": "ELMIRAGE",
"n_permits": 521,
"last_issue_date": "2025-08-08",
"windows_measured": null
},
{
"jurisdiction": "SUN CITY",
"n_permits": 133,
"last_issue_date": null,
"windows_measured": null
},
{
"jurisdiction": "COCONINO COUNTY",
"n_permits": 63,
"last_issue_date": "2024-02-16",
"windows_measured": null
},
{
"jurisdiction": "PINAL COUNTY",
"n_permits": 54,
"last_issue_date": "2022-07-21",
"windows_measured": null
},
{
"jurisdiction": "APACHE JUNCTION",
"n_permits": 47,
"last_issue_date": "2025-05-13",
"windows_measured": null
},
{
"jurisdiction": "PIMA COUNTY",
"n_permits": 21,
"last_issue_date": "2016-10-24",
"windows_measured": null
},
{
"jurisdiction": "WITTMANN",
"n_permits": 8,
"last_issue_date": "2026-02-03",
"windows_measured": null
},
{
"jurisdiction": "JACKSON COUNTY",
"n_permits": 7,
"last_issue_date": null,
"windows_measured": null
},
{
"jurisdiction": "LEWISVILLE",
"n_permits": 5,
"last_issue_date": "2024-02-07",
"windows_measured": null
},
{
"jurisdiction": "MONTGOMERY",
"n_permits": 4,
"last_issue_date": "2023-06-05",
"windows_measured": null
},
{
"jurisdiction": "RIVERSIDE COUNTY",
"n_permits": 3,
"last_issue_date": "2026-06-20",
"windows_measured": null
},
{
"jurisdiction": "LITCHFIELD PARK",
"n_permits": 3,
"last_issue_date": null,
"windows_measured": null
},
{
"jurisdiction": "APACHE JUNCTION - SEWER UTILITY",
"n_permits": 2,
"last_issue_date": "2026-05-07",
"windows_measured": null
},
{
"jurisdiction": "FORT WORTH",
"n_permits": 2,
"last_issue_date": null,
"windows_measured": null
},
{
"jurisdiction": "YAVAPAI COUNTY",
"n_permits": 1,
"last_issue_date": null,
"windows_measured": null
},
{
"jurisdiction": "LOCUST GROVE",
"n_permits": 1,
"last_issue_date": null,
"windows_measured": null
},
{
"jurisdiction": "ORO VALLEY",
"n_permits": 1,
"last_issue_date": null,
"windows_measured": null
},
{
"jurisdiction": "TANGIPAHOA",
"n_permits": 1,
"last_issue_date": "2019-05-28",
"windows_measured": null
}
]
},
"owner_profile": {
"as_of": "2026-09-09",
"n_parcels": 1611077,
"n_multi": 646963,
"n_portfolio_5": 277841
},
"history": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"zips": [
"85251"
],
"n_parcels": 18774,
"n_events": 236022,
"n_weeks": 62,
"domains": {
"tax": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 18597
},
"deed": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 17615
},
"sale": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 1700
},
"listing": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 21122
},
"mailing": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 2128
},
"vacancy": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 2583
},
"financing": {
"first_week": "2025-12-02",
"last_week": "2026-06-25",
"n_events": 6420
},
"occupancy": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 1297
},
"ownership": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 3238
},
"structure": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 2548
},
"valuation": {
"first_week": "2025-07-24",
"last_week": "2026-06-25",
"n_events": 83657
},
"assessment": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 16450
},
"owner_profile": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 58404
},
"classification": {
"first_week": "2025-07-24",
"last_week": "2026-09-09",
"n_events": 263
}
}
}
},
"lenders": {
"as_of": "2026-06-25",
"recordings_through": "2026-06-11",
"counties": [
"04013"
],
"history_capture_share": 0.183706,
"n_lender_ids": 32046,
"purchase_measured": true,
"investor_lending_measured": true,
"flips_measured": true,
"borrowers_measured": true,
"takebacks_measured": true,
"counties_measured": false,
"dated": true,
"n_parcels_uncovered": 224192
}
}
],
"dated": [
{
"block": "financing",
"as_of": "2026-06-25",
"reason": "dataset not in current delivery"
},
{
"block": "lenders",
"as_of": "2026-06-25",
"reason": "dataset not in current delivery"
}
],
"terms": "Data: Investorlift Data Services. Public-record and MLS listing data licensed through BatchData; municipal short-term rental registries; Investorlift marketplace records. Attribution and data-use terms: https://developers.investorlift.com/guides/terms"
}
}Authorizations
API key from the developer console (starts with zpka_). Create one at https://developers.investorlift.com/get-a-key.
Query Parameters
Market code, for example phx. The loaded markets are in meta.coverage[]. The list ranks inside one market. When meta.coverage[] lists more than one market and you send none, the API answers 400 market_required and lists them in extra.markets. If the market has no published lender registry, the API answers 422 lenders_unavailable.
1 - 16The window the counts cover: 24m, the default, is the 24 months ending on the slice date. 12m is the 12 months ending on it, all is every dated instrument, and a calendar year YYYY runs from 2002 to the slice year. A month YYYY-MM is one of the 36 ending on the slice month, and any other value answers 400 validation_error with code period_not_served. Market-wide the list serves 24m and a month, and the other periods need a ZIP, city, county or geometry. A geometry serves the three windows alone.
^(12m|24m|all|\d{4}|\d{4}-(0[1-9]|1[0-2]))$Point latitude (with lng). With radius_miles it is the geometry. The API resolves the circle to the H3 res-8 cells whose centre lies inside it, so its edge is a hex boundary. Do not send it with zip, city or county (400 geography_conflict). On a registry built before the place rankings, the API answers 422 lenders_unavailable.
-90 <= x <= 90Point longitude (with lat).
-180 <= x <= 180Search radius in miles around the point or around the centre of the property_id parcel, 0.25 to 20 (default 2). Not allowed with bbox.
0.25 <= x <= 20Viewport as west,south,east,north (WGS84 degrees). West must be less than east, south less than north, and the diagonal at most 40 mi. It must intersect a loaded market's coverage bbox (422 outside_coverage otherwise). It can carry lat + lng (without radius_miles) as the reference point for distances and sort=distance.
Parcel geometry: search around the centre of that parcel, with radius_miles. Not allowed with lat, lng or bbox.
^prop_[0-9a-f]{32}$Keep only lenders of these classes (comma list or repeated key): BANK, NONBANK, PRIVATE, INDIVIDUAL, GOVERNMENT. It does not lift the two defaults below: INDIVIDUAL and PRIVATE still need include_persons=true, and GOVERNMENT needs include_government=true. For the hard-money sense of private lender, use hard_money=true, not lender_class=PRIVATE.
1How the lender name reads. BANK: a bank, credit union or thrift. NONBANK: a mortgage company or other lending business. PRIVATE: a trust, a seller carry-back or another private party, not the hard-money sense of private lender, which the Lender object carries as is_hard_money. INDIVIDUAL: a person's name. GOVERNMENT: an agency or a public body.
BANK, NONBANK, PRIVATE, INDIVIDUAL, GOVERNMENT true keeps only hard-money lenders (is_hard_money true). false keeps only the rest. Default: every lender. The registry flags a hard-money lender by name or brand, or by behaviour in a market with the deed link.
true, false true includes lenders whose class reads INDIVIDUAL or PRIVATE: a person's name, a trust, a seller carry-back. Default false hides them, the way investor lists hide institutional investors.
true, false true includes GOVERNMENT lenders: HUD, the VA, a housing authority. Their counts are insurance claims and partial-claim seconds recorded under the agency's name, not originations. Default false hides them.
true, false 1 counts first liens only: the instruments whose open lien position is 1 (n_first_lien). The API serves no other value. With product[] the row's n is the first liens of the named products, from precomputed counts.
1 <= x <= 1Count only instruments of these products (comma list or repeated key): CONSTRUCTION, HELOC, OTHER. The row's n is the sum of the named counts. With position=1 it is their first liens alone. The row's share is null (no per-product denominator).
1What the file says the loan is, read from its flags and loan type and never from the label. CONSTRUCTION: the construction flag or a "Building or Construction Loan" type. HELOC: the credit-line flag or a "Credit Line (Revolving)" type. OTHER: everything else, that is a purchase-money or refinance mortgage of any kind.
CONSTRUCTION, HELOC, OTHER purchase counts only the window's purchase-money instruments: purpose PURCHASE by the deed link. The deed link sets PURCHASE when it finds a priced deed on the parcel in the 45 days up to the recording. The row's n is n_purchase_money and share is null (no purchase-money denominator). The API serves no other value. Do not send it with position or product (400 validation_error, code not_precomputed). While the market's registry predates the deed link, the API answers 422 lenders_unavailable (meta.coverage[].lenders.purchase_measured false).
purchase true keeps only investor lenders by behaviour (is_investor_lender true). false keeps only the rest. Default: every lender. The flag is true when half or more of the window's instruments go to registered investors and the window holds 20 or more. While the market's registry predates the borrower match, the API answers 422 lenders_unavailable.
true, false Rank inside one 5-digit ZIP, from the pre-aggregated geography table. For a ZIP outside the covered counties (meta.coverage[].lenders.counties), the API answers 422 outside_coverage. Send at most one of zip, city or county.
^\d{5}$Rank inside one city, as the parcel table writes it ("SCOTTSDALE"). Case does not matter. For a city outside the covered counties, the API answers 422 outside_coverage. Send at most one of zip, city or county.
1 - 100Rank inside one county, a 5-digit FIPS such as 04013. For a county outside meta.coverage[].lenders.counties, the API answers 422 outside_coverage. Send at most one of zip, city or county.
^\d{5}$Row order of the lender list: loans_desc, the default, puts the most loans in the window first. With volume_desc, the largest loan total in the window comes first, and with open_liens_desc the most open lien positions at the slice date. With open_balance_desc, the largest open balance comes first. With last_recorded_desc, the newest recording comes first and undated lenders last. With purchase_desc, the most purchase-money loans in the window by the deed link come first, and lenders without a deed link last.
loans_desc, volume_desc, open_liens_desc, open_balance_desc, last_recorded_desc, purchase_desc Keep only lenders whose newest recording (last_recorded_on) is on or after this date, YYYY-MM-DD. If you name a geography, the API reads the newest recording inside it.
Keep only lenders whose n is at least this, default 1. The n is the count that position or product selects. The API never lists a lender with nothing in the window.
1 <= x <= 9007199254740991Page size, 1-500 (default 100).
1 <= x <= 500Opaque cursor from page.next_cursor of the previous page. A change of query, sort, weights or data version invalidates it (400 invalid_cursor). Then restart from page 1.
1 - 4096true refuses the request with 422 dated_refused while the registry's source, the financing slice, is a dated snapshot. The default false serves it, and meta.dated[] carries the lenders and financing blocks.
true, false Response
The ranked lenders, one page in the requested sort.
The ranked lenders, one page in the requested sort.
The rows of this page.
Show child attributes
Show child attributes
Pagination: the page size, the rows returned and the cursor for the next page. Paged lists carry no total. The summary block does.
Show child attributes
Show child attributes
Response metadata: when the API produced it, which markets it covers, and how fresh they are.
Show child attributes
Show child attributes
Was this page helpful?