API Documentation
Complete guide to integrating the AddressVerify API. One call validates a residential address, classifies its exact property type, and returns its estimated value, so you can qualify a lead by the home behind it.
Address Lookup
The Address Lookup endpoint validates a residential address and returns its exact property type (all seven classes, including manufactured and mobile homes) plus an estimated home value.
Single Line Address Request
Submit a complete address in a single line for quick verification. The API will parse and validate the address components automatically.
https://api.addressverify.io/service/lookup/addressRequest Headers
| Parameter | Description |
|---|---|
x-api-key | [Required] Your API access key |
Request Body
| Parameter | Description |
|---|---|
address | [Required] The address to be verified |
Query Parameters
| Parameter | Description |
|---|---|
expanded | [Optional] Set to true to return expanded property data. See Expanded Response. |
Response
{
"address": "1013 Bates Ave, Bakersfield, CA 93307",
"addressValid": true,
"homeType": "SINGLE_FAMILY",
"homeValue": 273900
}Multi Line Address Request
Submit address components separately for more precise validation. This method allows you to specify street, city, state, and zip code individually.
https://api.addressverify.io/service/lookup/address/fieldsRequest Body
| Parameter | Description |
|---|---|
street | [Required] Street number and name |
city | [Required] City name |
state | [Required] State abbreviation |
zip | [Required] ZIP code |
Query Parameters
| Parameter | Description |
|---|---|
expanded | [Optional] Set to true to return expanded property data. See Expanded Response. |
Expanded Response
Add the expanded=true query parameter to either endpoint to receive detailed property data including address components, property details, tax assessment, and listing information. Available on all plans at no additional cost.
https://api.addressverify.io/service/lookup/address?expanded=trueExample Expanded Response
{
"address": "20 Marie St, Iberia, MO 65486",
"homeType": "SINGLE_FAMILY",
"addressValid": true,
"homeValue": 371000,
"addressInfo": {
"streetAddress": "20 Marie St",
"zipcode": "65486",
"city": "Iberia",
"state": "MO"
},
"propertyInfo": {
"bathrooms": 2,
"bedrooms": 4,
"livingArea": 2072,
"yearBuilt": 2001,
"lotSize": "1.84 acres"
},
"taxAssessment": {
"taxAssessedValue": 150210,
"taxAssessmentYear": "2024"
},
"listing": {
"lastSoldDate": "2025-05-22",
"isPreforeclosureAuction": false,
"listingStatus": "recentlySold"
}
}Expanded Response Fields
addressInfo
| Field | Type | Description |
|---|---|---|
streetAddress | string | Street number and name |
zipcode | string | ZIP code |
city | string | City name |
state | string | State abbreviation |
propertyInfo
| Field | Type | Description |
|---|---|---|
bathrooms | number | Number of bathrooms |
bedrooms | number | Number of bedrooms |
livingArea | number | Living area in square feet |
yearBuilt | number | Year the property was built |
lotSize | string | Lot size with unit (e.g., "5001 sqft", "1.84 acres") |
taxAssessment
| Field | Type | Description |
|---|---|---|
taxAssessedValue | number | Tax assessed property value |
taxAssessmentYear | string | Year of the tax assessment |
listing
| Field | Type | Description |
|---|---|---|
lastSoldDate | string | Date the property was last sold (YYYY-MM-DD) |
isPreforeclosureAuction | boolean | Whether the property is in pre-foreclosure auction |
listingStatus | string | Current listing status (e.g., "forSale", "recentlySold", "offMarket") |
Home Type List
MANUFACTURED (mobile and manufactured homes) is always returned as its own type, never folded into SINGLE_FAMILY. If you filter for single-family homes, mobile homes are reliably excluded.| Home Type | Description |
|---|---|
APARTMENT | Apartment |
CONDO | Condominium |
LOT | Land Parcel |
MANUFACTURED | Mobile Home |
MULTI_FAMILY | Multi-Family Residence |
SINGLE_FAMILY | Single Family Residence |
TOWNHOUSE | Townhouse |
UNKNOWN | Could not verify property |
Error Code List
| Code | Type | Description |
|---|---|---|
400 | Bad Request | Invalid or missing parameters |
401 | Unauthorized | Invalid API key or authentication |
402 | Payment Required | No active subscription plan |
404 | Not Found | Resource not found |
422 | Unprocessable Entity | Invalid address. Please include the street number. |
429 | Too Many Requests | Rate limit exceeded |
SDKs & Libraries
Official SDKs
Prefer a typed client? Install an official open-source AddressVerify SDK for your language, or call the REST API directly using the request and response reference above.
SDKs cover the Address Lookup endpoint. Home Verify is available via the REST API below.
Home Verify
Confirm whether a specific person is the registered owner of an address, or retrieve detailed owner and property data for a given address.
Run in PostmanHomeowner Verification
Verify whether a person (identified by last name, email, or phone) is the registered owner of the property at a given address. Returns a simple is_homeowner boolean. Provider failures are returned as is_homeowner: false.
https://api.addressverify.io/service/lookup/address/isHomeOwnerRequest Headers
| Parameter | Description |
|---|---|
x-api-key | [Required] Your API access key |
Request Body
All four address fields are required. You must also supply at least one of last_name, email, or phone.
| Parameter | Description |
|---|---|
street | [Required] Street number and name |
city | [Required] City name |
state | [Required] State abbreviation |
zip | [Required] ZIP code |
last_name | [Optional] Last name of the person to verify |
email | [Optional] Email address of the person to verify |
phone | [Optional] 10-digit U.S. phone number. Invalid phone is ignored if other PII is supplied. |
Response
{
"is_homeowner": true
}Person & Property Lookup
Retrieve detailed owner and property information for a given address. Use this when you need full owner data rather than a simple homeowner-match boolean.
https://api.addressverify.io/service/lookup/address/isHomeOwner/homeOwnerRequest Headers
| Parameter | Description |
|---|---|
x-api-key | [Required] Your API access key |
Request Body
| Parameter | Description |
|---|---|
street | [Required] Street number and name |
city | [Required] City name |
state | [Required] State abbreviation |
zip | [Required] ZIP code |
Example Response
{
"success": true,
"data": {
"address": {
"full": "20 Marie St, Iberia, MO 65486",
"street_address": "20 Marie St",
"city": "Iberia",
"state": "MO",
"zip": "65486",
"zip4": "1234",
"latitude": 38.0922,
"longitude": -92.3022
},
"property": {
"year_built": 2001,
"bedrooms": 4,
"bathrooms": 2,
"building_size_sqft": 2072,
"lot_size_sqft": 80150,
"assessed_value": 150210,
"total_tax": 1820,
"use_code": "SFR"
},
"current_owners": [
{
"name": "Jane Doe",
"owner_occupied": true,
"phones": [
{ "number": "5551234567", "type": "Mobile", "active": true },
{ "number": "5557654321", "type": "Landline", "active": true }
],
"emails": [
{ "address": "[email protected]", "active": true }
]
}
],
"loan_info": {
"most_recent_loan": {
"date": "2022-08-15",
"lender": "Wells Fargo Bank",
"original_amount": 250000,
"loan_type": "Conventional",
"transaction_type": "Refinance",
"recorded_date": "2022-08-20"
},
"last_sale": {
"date": "2018-03-12",
"sale_price": 320000,
"buyer": "Jane Doe",
"seller": "John Smith",
"transaction_type": "Sale"
}
}
},
"message": "Lookup processed successfully"
}Response Fields
address
| Field | Type | Description |
|---|---|---|
full | string | Full normalized address |
street_address | string | Street number and name |
city | string | City name |
state | string | State abbreviation |
zip | string | 5-digit ZIP code |
zip4 | string | ZIP+4 extension (when available) |
latitude | number | Geocoded latitude (when available) |
longitude | number | Geocoded longitude (when available) |
property
| Field | Type | Description |
|---|---|---|
year_built | number | Year the property was built |
bedrooms | number | Number of bedrooms |
bathrooms | number | Number of bathrooms (may be fractional) |
building_size_sqft | number | Total building (living) area in square feet |
lot_size_sqft | number | Lot size in square feet |
assessed_value | number | Tax-assessed value (in dollars) |
total_tax | number | Total annual tax amount (in dollars) |
use_code | string | Property-use code (e.g., SFR single-family residential) |
current_owners[]
Deduplicated by name. Each owner contains:
| Field | Type | Description |
|---|---|---|
name | string | Owner's full name |
owner_occupied | boolean | True if the owner lives at the property |
phones[] | array | Active phone numbers (see below) |
emails[] | array | Email addresses (see below) |
current_owners[].phones[]
| Field | Type | Description |
|---|---|---|
number | string | 10-digit U.S. phone number, digits only |
type | string | Typically Mobile or Landline |
active | boolean | Inactive numbers are filtered out before this list is returned |
current_owners[].emails[]
| Field | Type | Description |
|---|---|---|
address | string | Email address |
active | boolean | Always true for emails returned in this list |
loan_info.most_recent_loan
| Field | Type | Description |
|---|---|---|
date | string | Origination date (ISO YYYY-MM-DD) |
lender | string | Lender name |
original_amount | number | Original loan amount (in dollars) |
loan_type | string | Provider-supplied (e.g., Conventional, FHA, VA) |
transaction_type | string | Provider-supplied (e.g., Sale, Refinance) |
recorded_date | string | Date the loan was recorded with the county |
loan_info.last_sale
| Field | Type | Description |
|---|---|---|
date | string | Sale date (ISO YYYY-MM-DD) |
sale_price | number | Sale price (in dollars) |
buyer | string | First buyer listed on the deed |
seller | string | First seller listed on the deed |
transaction_type | string | Transaction type as recorded |
Error Code List
| Code | Type | Description |
|---|---|---|
400 | Bad Request | Missing address fields, no PII supplied, or an invalid phone with no fallback PII |
401 | Unauthorized | Invalid API key or authentication |
402 | Payment Required | Insufficient balance to complete the lookup |
404 | Not Found | Resource not found |
429 | Too Many Requests | Rate limit exceeded |
502 | Bad Gateway | Upstream lookup provider failed (Person & Property Lookup only; the Homeowner Verification endpoint surfaces provider failures as is_homeowner: false) |
Code Examples
Snippets target the isHomeOwner/homeOwner endpoint (the Person & Property Lookup). The isHomeOwner endpoint takes the same request body plus one of last_name / email / phone.
const axios = require('axios');
const config = {
method: 'post',
url: 'https://api.addressverify.io/service/lookup/address/isHomeOwner/homeOwner',
headers: {
'x-api-key': 'YOUR_API_KEY',
'Content-Type': 'application/json'
},
data: {
street: '20 Marie St',
city: 'Iberia',
state: 'MO',
zip: '65486'
}
};
axios(config)
.then(response => console.log(JSON.stringify(response.data, null, 2)))
.catch(error => console.log(error));