List the building permits on a parcel
curl --request GET \
--url https://api.investorlift.com/v1/properties/{property_id}/permits \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.investorlift.com/v1/properties/{property_id}/permits', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.investorlift.com/v1/properties/{property_id}/permits"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": {
"property_id": "prop_e93c776c53354a88de4e58448a6bf21b",
"as_of": "2026-09-01",
"summary": null,
"permits": []
},
"meta": {
"generated_at": "2026-09-16T21: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": 1789574268,
"loaded_at": "2026-09-16T15:57:47.926Z",
"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": "2026-08-27",
"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
}
]
},
"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
}
}
],
"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"
}
}Properties
List the building permits on a parcel
Every building permit on one parcel from the jurisdictions’ own rolls, newest first. Each row carries the normalised work tags, the dates, the job value and the aggregates the search filters read.
The API never serves applicant names, phones and addresses. A parcel with no permit answers with an empty list and a null summary.
GET
/
v1
/
properties
/
{property_id}
/
permits
List the building permits on a parcel
curl --request GET \
--url https://api.investorlift.com/v1/properties/{property_id}/permits \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.investorlift.com/v1/properties/{property_id}/permits', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.investorlift.com/v1/properties/{property_id}/permits"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": {
"property_id": "prop_e93c776c53354a88de4e58448a6bf21b",
"as_of": "2026-09-01",
"summary": null,
"permits": []
},
"meta": {
"generated_at": "2026-09-16T21: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": 1789574268,
"loaded_at": "2026-09-16T15:57:47.926Z",
"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": "2026-08-27",
"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
}
]
},
"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
}
}
],
"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.
Path Parameters
Parcel id, prop_<32 hex>, from /v1/properties/resolve or any deal's property.id. The prefix is part of the id (400 invalid_id otherwise).
Required string length:
1 - 64Response
The permits of one parcel.
Was this page helpful?