Read which states the lean set serves
curl --request GET \
--url https://api.investorlift.com/v3/coverage \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.investorlift.com/v3/coverage', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.investorlift.com/v3/coverage"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": {
"states": [
{
"state": "AZ",
"build_id": null,
"built_at": "2026-09-22T13:41:32.949Z",
"published_at": "2026-09-23T01:02:16.717Z",
"run_id": 1790123752,
"deeds_through": "2026-09-03",
"listings_through": "2026-09-14",
"registry_rows": 2812108,
"counties": [
{
"fips": "04001",
"n_parcels": 23432
},
{
"fips": "04003",
"n_parcels": 59935
},
{
"fips": "04005",
"n_parcels": 75438
},
{
"fips": "04007",
"n_parcels": 31388
},
{
"fips": "04009",
"n_parcels": 12777
},
{
"fips": "04011",
"n_parcels": 2843
},
{
"fips": "04012",
"n_parcels": 17178
},
{
"fips": "04013",
"n_parcels": 1612128
},
{
"fips": "04015",
"n_parcels": 157485
},
{
"fips": "04017",
"n_parcels": 64079
},
{
"fips": "04019",
"n_parcels": 434185
},
{
"fips": "04021",
"n_parcels": 224293
},
{
"fips": "04023",
"n_parcels": 33196
},
{
"fips": "04025",
"n_parcels": 146546
},
{
"fips": "04027",
"n_parcels": 93801
}
],
"counts": {
"lean_org": 2141873,
"lean_deal": 1795922,
"lean_agent": 81004,
"lean_alias": 10250,
"lean_party": 16999557,
"lean_entity": 2812108,
"lean_filing": 7171397,
"lean_holder": 1145881,
"lean_person": 3252452,
"lean_search": 16754221,
"lean_address": 2988704,
"lean_listing": 3641412,
"lean_org_link": 4409377,
"lean_purchase": 6410825,
"lean_agent_org": 2095940,
"lean_agent_edge": 66178,
"lean_listing_geo": 1230101,
"lean_person_edge": 83156,
"lean_counterparty": 7085673,
"lean_agent_listing": 3333385,
"lean_agent_person_org": 7917
},
"gates": [
{
"step": "10",
"gate": "L12 SOLD listings of ZIP 85251 since 2025 with a dated sale that meet a purchase inside the window, percent",
"value": "93.46",
"bar": ">= 75",
"pass": true
},
{
"step": "10",
"gate": "L12 links with no rule, no listing or no side",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "10",
"gate": "L12 current listings with a holder deed after the listing date beyond the tolerance",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "11",
"gate": "L11 agents joined to two persons",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "11",
"gate": "L11 persons with two agents",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "11",
"gate": "L11 the golden self-listing agent is one person with the roles agent and principal",
"value": "1",
"bar": "= 1, or no golden row",
"pass": true
},
{
"step": "12",
"gate": "L13 sampled parcels of ZIP 85251 whose own line keys to their address row, percent",
"value": "100",
"bar": ">= 99",
"pass": true
},
{
"step": "12",
"gate": "L13 parcels of the state with a point and no address row",
"value": "2720",
"bar": "<= 2 percent of parcels",
"pass": true
},
{
"step": "12",
"gate": "L13 a five-mile circle at the centre of ZIP 85251: the band ranges count what the full scan counts",
"value": "34861",
"bar": "= 34861",
"pass": true
},
{
"step": "13",
"gate": "L14 rows of the index out of order (the file is sorted by the rotation)",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "13",
"gate": "L14 persons with no row in the index",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "14",
"gate": "L16 (purchase, side, key) party rows with two rows",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "14",
"gate": "L16 buyer party rows of a flagged purchase whose organization differs from the deal row of step 07",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "14",
"gate": "L16 deal rows of step 07 with no buyer party row",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "14",
"gate": "L16 (organization, counterparty, relation) rows with two rows",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "14",
"gate": "L16 bought_from rows whose counterparty has a page and no sold_to mirror",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "01",
"gate": "L1 business rows of the delivery",
"value": "2812125",
"bar": "2812125 +/- 5 %",
"pass": true
},
{
"step": "01",
"gate": "L1 principal rows of the delivery",
"value": "4854932",
"bar": "4854932 +/- 5 %",
"pass": true
},
{
"step": "01",
"gate": "L1 registry numbers on two rows of the source (one row stays)",
"value": "15",
"bar": "<= 25",
"pass": true
},
{
"step": "01",
"gate": "L1 former names (229,891 on 2026-09-21)",
"value": "233546",
"bar": "200000 to 260000",
"pass": true
},
{
"step": "02",
"gate": "L2 entities with a name and no name key",
"value": "8",
"bar": "<= 50",
"pass": true
},
{
"step": "03",
"gate": "L3 kept edge rows",
"value": "1961009",
"bar": "> 0",
"pass": true
},
{
"step": "03",
"gate": "L3 entities with a kept edge",
"value": "1031885",
"bar": "> 0",
"pass": true
},
{
"step": "03",
"gate": "L3 person links above the cap of 100, per 10,000",
"value": "0",
"bar": "<= 50",
"pass": true
},
{
"step": "04",
"gate": "L4 each entity has one organization",
"value": "2812108",
"bar": "= 2812108",
"pass": true
},
{
"step": "04",
"gate": "L4 organizations with two or more entities",
"value": "297108",
"bar": "> 0",
"pass": true
},
{
"step": "04",
"gate": "L4 largest kept organization",
"value": "197",
"bar": "<= 200",
"pass": true
},
{
"step": "04",
"gate": "L4 refused components",
"value": "7",
"bar": "<= 25",
"pass": true
},
{
"step": "04",
"gate": "L4 entities in a refused component, per 10,000",
"value": "7",
"bar": "<= 100",
"pass": true
},
{
"step": "06",
"gate": "L2 deed names that the old function changes: the port gives the same key, percent",
"value": "100",
"bar": ">= 99.5",
"pass": true
},
{
"step": "06",
"gate": "L2 deed names that the old function leaves alone: the port leaves them alone too, percent",
"value": "100",
"bar": ">= 99.5",
"pass": true
},
{
"step": "06",
"gate": "L5 deeds of ZIP 85251 in the raw cut against the count of the stage database, percent",
"value": "100.04",
"bar": "98 to 102",
"pass": true
},
{
"step": "06",
"gate": "L6 document types of the state that the class list does not hold",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "06",
"gate": "L6 deal ids that two purchases share",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "06",
"gate": "L6 purchases of the old build for ZIP 85251 that this step holds, percent",
"value": "100",
"bar": ">= 99",
"pass": true
},
{
"step": "06",
"gate": "L6 the same arm's-length verdict on those purchases, percent",
"value": "100",
"bar": ">= 99",
"pass": true
},
{
"step": "06",
"gate": "L6 the same entity verdict (flag 1) on the arm's-length ones, percent",
"value": "100",
"bar": ">= 98",
"pass": true
},
{
"step": "06",
"gate": "L6 the same resale verdict (flag 3) on the arm's-length ones, percent",
"value": "99.99",
"bar": ">= 98",
"pass": true
},
{
"step": "07",
"gate": "L7 (deal, buyer key) pairs with two rows",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "07",
"gate": "L7 company-like buyers of flagged purchases in ZIP 85251 that meet a registry entity, percent of rows",
"value": "63.64",
"bar": ">= 60 continues, >= 80 continues with no list",
"pass": true
},
{
"step": "08",
"gate": "L9 listing rows with a listing date and no status",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "08",
"gate": "L9 listing ids with two current versions",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "08",
"gate": "L9 rows of the old served listing table of ZIP 85251 that this step holds, percent",
"value": "100",
"bar": ">= 99, or no reference row",
"pass": true
},
{
"step": "08",
"gate": "L9 the same listing date on those rows, percent",
"value": "100",
"bar": ">= 99, or no reference row",
"pass": true
},
{
"step": "08",
"gate": "L9 the same status on those rows, percent",
"value": "100",
"bar": ">= 99, or no reference row",
"pass": true
},
{
"step": "08",
"gate": "L9 the same asking price on those rows, percent",
"value": "100",
"bar": ">= 99, or no reference row",
"pass": true
},
{
"step": "08",
"gate": "L9 the same rental verdict on those rows, percent",
"value": "100",
"bar": ">= 99, or no reference row",
"pass": true
},
{
"step": "09",
"gate": "L10 agents whose folds carry two licences",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "09",
"gate": "L10 mentions of a person fold with no agent id",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "09",
"gate": "L10 agent ids on two rows of the agent file",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "09",
"gate": "L10 old agent ids of ZIP 85251 that map to ONE agent here, percent",
"value": "99.58",
"bar": ">= 90, or no reference row",
"pass": true
},
{
"step": "09",
"gate": "L10 the golden self-listing agent of the old build maps to one agent",
"value": "1",
"bar": "= 1, or no golden row",
"pass": true
},
{
"step": "09",
"gate": "L10 the golden two-spelling agent of the old build maps to one agent",
"value": "1",
"bar": "= 1, or no golden row",
"pass": true
}
]
}
]
},
"meta": {
"generated_at": "2026-09-23T01:23:32.928Z",
"coverage": [],
"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",
"build": {
"states": [
{
"state": "AZ",
"build_id": null,
"built_at": "2026-09-22T13:41:32.949Z",
"published_at": "2026-09-23T01:02:16.717Z",
"run_id": 1790123752
}
]
}
}
}Lean set (/v3)
Read which states the lean set serves
Read which states the lean set serves.
GET
/
v3
/
coverage
Read which states the lean set serves
curl --request GET \
--url https://api.investorlift.com/v3/coverage \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.investorlift.com/v3/coverage', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.investorlift.com/v3/coverage"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": {
"states": [
{
"state": "AZ",
"build_id": null,
"built_at": "2026-09-22T13:41:32.949Z",
"published_at": "2026-09-23T01:02:16.717Z",
"run_id": 1790123752,
"deeds_through": "2026-09-03",
"listings_through": "2026-09-14",
"registry_rows": 2812108,
"counties": [
{
"fips": "04001",
"n_parcels": 23432
},
{
"fips": "04003",
"n_parcels": 59935
},
{
"fips": "04005",
"n_parcels": 75438
},
{
"fips": "04007",
"n_parcels": 31388
},
{
"fips": "04009",
"n_parcels": 12777
},
{
"fips": "04011",
"n_parcels": 2843
},
{
"fips": "04012",
"n_parcels": 17178
},
{
"fips": "04013",
"n_parcels": 1612128
},
{
"fips": "04015",
"n_parcels": 157485
},
{
"fips": "04017",
"n_parcels": 64079
},
{
"fips": "04019",
"n_parcels": 434185
},
{
"fips": "04021",
"n_parcels": 224293
},
{
"fips": "04023",
"n_parcels": 33196
},
{
"fips": "04025",
"n_parcels": 146546
},
{
"fips": "04027",
"n_parcels": 93801
}
],
"counts": {
"lean_org": 2141873,
"lean_deal": 1795922,
"lean_agent": 81004,
"lean_alias": 10250,
"lean_party": 16999557,
"lean_entity": 2812108,
"lean_filing": 7171397,
"lean_holder": 1145881,
"lean_person": 3252452,
"lean_search": 16754221,
"lean_address": 2988704,
"lean_listing": 3641412,
"lean_org_link": 4409377,
"lean_purchase": 6410825,
"lean_agent_org": 2095940,
"lean_agent_edge": 66178,
"lean_listing_geo": 1230101,
"lean_person_edge": 83156,
"lean_counterparty": 7085673,
"lean_agent_listing": 3333385,
"lean_agent_person_org": 7917
},
"gates": [
{
"step": "10",
"gate": "L12 SOLD listings of ZIP 85251 since 2025 with a dated sale that meet a purchase inside the window, percent",
"value": "93.46",
"bar": ">= 75",
"pass": true
},
{
"step": "10",
"gate": "L12 links with no rule, no listing or no side",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "10",
"gate": "L12 current listings with a holder deed after the listing date beyond the tolerance",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "11",
"gate": "L11 agents joined to two persons",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "11",
"gate": "L11 persons with two agents",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "11",
"gate": "L11 the golden self-listing agent is one person with the roles agent and principal",
"value": "1",
"bar": "= 1, or no golden row",
"pass": true
},
{
"step": "12",
"gate": "L13 sampled parcels of ZIP 85251 whose own line keys to their address row, percent",
"value": "100",
"bar": ">= 99",
"pass": true
},
{
"step": "12",
"gate": "L13 parcels of the state with a point and no address row",
"value": "2720",
"bar": "<= 2 percent of parcels",
"pass": true
},
{
"step": "12",
"gate": "L13 a five-mile circle at the centre of ZIP 85251: the band ranges count what the full scan counts",
"value": "34861",
"bar": "= 34861",
"pass": true
},
{
"step": "13",
"gate": "L14 rows of the index out of order (the file is sorted by the rotation)",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "13",
"gate": "L14 persons with no row in the index",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "14",
"gate": "L16 (purchase, side, key) party rows with two rows",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "14",
"gate": "L16 buyer party rows of a flagged purchase whose organization differs from the deal row of step 07",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "14",
"gate": "L16 deal rows of step 07 with no buyer party row",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "14",
"gate": "L16 (organization, counterparty, relation) rows with two rows",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "14",
"gate": "L16 bought_from rows whose counterparty has a page and no sold_to mirror",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "01",
"gate": "L1 business rows of the delivery",
"value": "2812125",
"bar": "2812125 +/- 5 %",
"pass": true
},
{
"step": "01",
"gate": "L1 principal rows of the delivery",
"value": "4854932",
"bar": "4854932 +/- 5 %",
"pass": true
},
{
"step": "01",
"gate": "L1 registry numbers on two rows of the source (one row stays)",
"value": "15",
"bar": "<= 25",
"pass": true
},
{
"step": "01",
"gate": "L1 former names (229,891 on 2026-09-21)",
"value": "233546",
"bar": "200000 to 260000",
"pass": true
},
{
"step": "02",
"gate": "L2 entities with a name and no name key",
"value": "8",
"bar": "<= 50",
"pass": true
},
{
"step": "03",
"gate": "L3 kept edge rows",
"value": "1961009",
"bar": "> 0",
"pass": true
},
{
"step": "03",
"gate": "L3 entities with a kept edge",
"value": "1031885",
"bar": "> 0",
"pass": true
},
{
"step": "03",
"gate": "L3 person links above the cap of 100, per 10,000",
"value": "0",
"bar": "<= 50",
"pass": true
},
{
"step": "04",
"gate": "L4 each entity has one organization",
"value": "2812108",
"bar": "= 2812108",
"pass": true
},
{
"step": "04",
"gate": "L4 organizations with two or more entities",
"value": "297108",
"bar": "> 0",
"pass": true
},
{
"step": "04",
"gate": "L4 largest kept organization",
"value": "197",
"bar": "<= 200",
"pass": true
},
{
"step": "04",
"gate": "L4 refused components",
"value": "7",
"bar": "<= 25",
"pass": true
},
{
"step": "04",
"gate": "L4 entities in a refused component, per 10,000",
"value": "7",
"bar": "<= 100",
"pass": true
},
{
"step": "06",
"gate": "L2 deed names that the old function changes: the port gives the same key, percent",
"value": "100",
"bar": ">= 99.5",
"pass": true
},
{
"step": "06",
"gate": "L2 deed names that the old function leaves alone: the port leaves them alone too, percent",
"value": "100",
"bar": ">= 99.5",
"pass": true
},
{
"step": "06",
"gate": "L5 deeds of ZIP 85251 in the raw cut against the count of the stage database, percent",
"value": "100.04",
"bar": "98 to 102",
"pass": true
},
{
"step": "06",
"gate": "L6 document types of the state that the class list does not hold",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "06",
"gate": "L6 deal ids that two purchases share",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "06",
"gate": "L6 purchases of the old build for ZIP 85251 that this step holds, percent",
"value": "100",
"bar": ">= 99",
"pass": true
},
{
"step": "06",
"gate": "L6 the same arm's-length verdict on those purchases, percent",
"value": "100",
"bar": ">= 99",
"pass": true
},
{
"step": "06",
"gate": "L6 the same entity verdict (flag 1) on the arm's-length ones, percent",
"value": "100",
"bar": ">= 98",
"pass": true
},
{
"step": "06",
"gate": "L6 the same resale verdict (flag 3) on the arm's-length ones, percent",
"value": "99.99",
"bar": ">= 98",
"pass": true
},
{
"step": "07",
"gate": "L7 (deal, buyer key) pairs with two rows",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "07",
"gate": "L7 company-like buyers of flagged purchases in ZIP 85251 that meet a registry entity, percent of rows",
"value": "63.64",
"bar": ">= 60 continues, >= 80 continues with no list",
"pass": true
},
{
"step": "08",
"gate": "L9 listing rows with a listing date and no status",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "08",
"gate": "L9 listing ids with two current versions",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "08",
"gate": "L9 rows of the old served listing table of ZIP 85251 that this step holds, percent",
"value": "100",
"bar": ">= 99, or no reference row",
"pass": true
},
{
"step": "08",
"gate": "L9 the same listing date on those rows, percent",
"value": "100",
"bar": ">= 99, or no reference row",
"pass": true
},
{
"step": "08",
"gate": "L9 the same status on those rows, percent",
"value": "100",
"bar": ">= 99, or no reference row",
"pass": true
},
{
"step": "08",
"gate": "L9 the same asking price on those rows, percent",
"value": "100",
"bar": ">= 99, or no reference row",
"pass": true
},
{
"step": "08",
"gate": "L9 the same rental verdict on those rows, percent",
"value": "100",
"bar": ">= 99, or no reference row",
"pass": true
},
{
"step": "09",
"gate": "L10 agents whose folds carry two licences",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "09",
"gate": "L10 mentions of a person fold with no agent id",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "09",
"gate": "L10 agent ids on two rows of the agent file",
"value": "0",
"bar": "= 0",
"pass": true
},
{
"step": "09",
"gate": "L10 old agent ids of ZIP 85251 that map to ONE agent here, percent",
"value": "99.58",
"bar": ">= 90, or no reference row",
"pass": true
},
{
"step": "09",
"gate": "L10 the golden self-listing agent of the old build maps to one agent",
"value": "1",
"bar": "= 1, or no golden row",
"pass": true
},
{
"step": "09",
"gate": "L10 the golden two-spelling agent of the old build maps to one agent",
"value": "1",
"bar": "= 1, or no golden row",
"pass": true
}
]
}
]
},
"meta": {
"generated_at": "2026-09-23T01:23:32.928Z",
"coverage": [],
"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",
"build": {
"states": [
{
"state": "AZ",
"build_id": null,
"built_at": "2026-09-22T13:41:32.949Z",
"published_at": "2026-09-23T01:02:16.717Z",
"run_id": 1790123752
}
]
}
}
}This route serves the lean set under
/v3/coverage. See The lean dataset for the tier rules.Authorizations
API key from the developer console (starts with zpka_). Create one at https://developers.investorlift.com/get-a-key. The same key works on POST /mcp.
Query Parameters
One state alone. Default: every served state.
Pattern:
^[A-Z]{2}$Response
The coverage of the lean set: each served state with its data ends, its counties, its counts and its gates.
The coverage of the lean set: each served state with its data ends, its counties, its counts and its gates.
Was this page helpful?