curl --request GET \
--url https://api.investorlift.com/v1/wholesalers/search \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.investorlift.com/v1/wholesalers/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.investorlift.com/v1/wholesalers/search"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": [
{
"id": "wsr_4b8d1df516b9",
"market": "phx",
"name": "Pulse Capital LLC",
"brands": [
"Pulse Capital"
],
"n_listings": 15,
"n_verified": 12,
"last_listed_on": "2022-07-29",
"matched_name": "Pulse Capital",
"match": "exact",
"similarity": null
},
{
"id": "wsr_90b9d17d52d6",
"market": "phx",
"name": "RDC Real Estate LLC",
"brands": [
"America Home Solutions"
],
"n_listings": 76,
"n_verified": 18,
"last_listed_on": "2026-08-11",
"matched_name": "PULSE CAPITAL LLC",
"match": "tokens",
"similarity": null
},
{
"id": "wsr_947511502acd",
"market": "phx",
"name": "Pulse Capital REI",
"brands": [
"Pulse Capital LLC"
],
"n_listings": 1,
"n_verified": 1,
"last_listed_on": "2025-06-19",
"matched_name": "Pulse Capital LLC",
"match": "tokens",
"similarity": null
}
],
"page": {
"next_cursor": null,
"limit": 3,
"returned": 3,
"capped": false
},
"meta": {
"generated_at": "2026-09-10T00:34: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-12",
"build_run_id": 1,
"registry_run": 8,
"registry_version": "v4-metro-review-fixes",
"dataset_version": 1788999683,
"loaded_at": "2026-09-10T00:21:23.302Z",
"metro_buy_to_resale_ratio": 0.7192,
"universe_kind": "metro",
"universe_zips": null,
"point_tolerance_miles": 20,
"n_parcels": 1836307,
"listings_data_end": "2026-08-31",
"agents_data_end": "2026-08-31",
"wholesale_as_of": "2026-09-09",
"str_as_of": null,
"str": null,
"auction_counted": true,
"parcel_as_of": null,
"address_as_of": null,
"parcel": null,
"lenders": null
}
],
"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"
}
}Find an Investorlift listing company
Find a listing company by its Investorlift name, a brand, or a legal entity name from its contracts.
curl --request GET \
--url https://api.investorlift.com/v1/wholesalers/search \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.investorlift.com/v1/wholesalers/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.investorlift.com/v1/wholesalers/search"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": [
{
"id": "wsr_4b8d1df516b9",
"market": "phx",
"name": "Pulse Capital LLC",
"brands": [
"Pulse Capital"
],
"n_listings": 15,
"n_verified": 12,
"last_listed_on": "2022-07-29",
"matched_name": "Pulse Capital",
"match": "exact",
"similarity": null
},
{
"id": "wsr_90b9d17d52d6",
"market": "phx",
"name": "RDC Real Estate LLC",
"brands": [
"America Home Solutions"
],
"n_listings": 76,
"n_verified": 18,
"last_listed_on": "2026-08-11",
"matched_name": "PULSE CAPITAL LLC",
"match": "tokens",
"similarity": null
},
{
"id": "wsr_947511502acd",
"market": "phx",
"name": "Pulse Capital REI",
"brands": [
"Pulse Capital LLC"
],
"n_listings": 1,
"n_verified": 1,
"last_listed_on": "2025-06-19",
"matched_name": "Pulse Capital LLC",
"match": "tokens",
"similarity": null
}
],
"page": {
"next_cursor": null,
"limit": 3,
"returned": 3,
"capped": false
},
"meta": {
"generated_at": "2026-09-10T00:34: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-12",
"build_run_id": 1,
"registry_run": 8,
"registry_version": "v4-metro-review-fixes",
"dataset_version": 1788999683,
"loaded_at": "2026-09-10T00:21:23.302Z",
"metro_buy_to_resale_ratio": 0.7192,
"universe_kind": "metro",
"universe_zips": null,
"point_tolerance_miles": 20,
"n_parcels": 1836307,
"listings_data_end": "2026-08-31",
"agents_data_end": "2026-08-31",
"wholesale_as_of": "2026-09-09",
"str_as_of": null,
"str": null,
"auction_counted": true,
"parcel_as_of": null,
"address_as_of": null,
"parcel": null,
"lenders": null
}
],
"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"
}
}Use it when
You build a wholesaler typeahead. You have a company name and need its id.wholesaler.id.Read the response
match says how the API found the hit, best first: exact, tokens, contains, then trigram. A tokens hit has
every word of the query in one of the company’s names, in any order. A trigram hit is fuzzy. The API tries it only
when fewer than 10 companies matched otherwise, and then sets similarity.
matched_name is the name that hit: the Investorlift name, a brand, or an entity name from its contracts. Within
one match level, the companies with the most verified transactions come first.
page.capped is true when the API cut the page at limit. The envelope’s page block has the rule
and what to do when it is true.
Without market=, the API searches every loaded market with wholesale tables. A company that lists in two markets
appears once per market.
Gotchas
- A query of fewer than three letters or digits after normalisation is a 400.
- No cursor:
page.next_cursoris always null. - Every name here is a business name. The API serves it in full.
- A market with no published wholesale tables answers
422 wholesale_unavailable. With no market loaded at all, the search answers503 not_ready.
Authorizations
API key from the developer console (starts with zpka_). Create one at https://developers.investorlift.com/get-a-key.
Query Parameters
The company to look for: its Investorlift name ("Home Team Investors"), a brand, or a legal entity name ("HOME TEAM INVESTORS LLC"). Part of one is enough. Case and punctuation do not matter. At least 3 letters or digits after normalisation (400 otherwise).
1 - 200Market code, for example phx. The loaded markets are in meta.coverage[]. It narrows the search to that market. The API answers 400 when that market is not loaded, 422 wholesale_unavailable when it has no published wholesale tables. Without it the API searches every loaded market with wholesale tables and each hit carries its market.
1 - 16Companies to return, 1 to 50 (default 10).
1 <= x <= 50Response
Companies whose name, brand or entity name matches the query, best match first. page.next_cursor is always null and page.capped is true when the API cut the page at limit.
Companies whose name, brand or entity name matches the query, best match first. page.next_cursor is always null and page.capped is true when the API cut the page at limit.
The hits, best match first.
Show child attributes
Show child attributes
The page block of a name search: no cursor, the limit applied, the hits returned and if the API cut the page at the limit.
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?