Skip to content

AddressVerify-io/addressverify-python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AddressVerify Python SDK

Official SDK for the AddressVerify API — validate U.S. residential addresses, classify home types, and get estimated property values in real time.

PyPI license

  • 🏠 Address validation — confirm an address is a real, deliverable U.S. residence
  • 🏷️ Home-type classificationSINGLE_FAMILY, MULTI_FAMILY, APARTMENT, CONDO, TOWNHOUSE, MANUFACTURED, LOT
  • 💰 Property values — estimated home value, plus optional expanded property data
  • 🐍 TypedTypedDict response types and full type hints

Installation

pip install addressverify

Get an API key

Create a free account at app.addressverify.io and copy your API key from the dashboard. The free tier includes 100 calls/month.

Quick start

from addressverify import AddressVerify

av = AddressVerify(api_key="YOUR_API_KEY")

# Single-line address
result = av.verify("123 Main St, New York, NY 10001")

print(result["addressValid"])  # True
print(result["homeType"])      # "SINGLE_FAMILY"
print(result["homeValue"])     # 273900

Multi-line address

result = av.verify(
    street="20 Marie St",
    city="Iberia",
    state="MO",
    zip="65486",
)

Expanded property data

Pass expanded=True to receive parsed address components, property details, tax assessment, and listing data (available on all plans at no extra cost):

result = av.verify("20 Marie St, Iberia, MO 65486", expanded=True)

print(result["propertyInfo"]["bedrooms"])         # 4
print(result["taxAssessment"]["taxAssessedValue"]) # 150210
print(result["listing"]["listingStatus"])         # "recentlySold"

Response shape

{
  "address": "20 Marie St, Iberia, MO 65486",
  "addressValid": true,
  "homeType": "SINGLE_FAMILY",
  "homeValue": 371000,

  // present only with expanded=True
  "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" }
}

Error handling

Non-2xx responses raise AddressVerifyError with the HTTP status_code and parsed body:

from addressverify import AddressVerify, AddressVerifyError

av = AddressVerify(api_key="YOUR_API_KEY")

try:
    av.verify("not a real address")
except AddressVerifyError as err:
    print(err.status_code)  # e.g. 422
    print(err.body)         # API error payload
Status Meaning
400 Bad Request — invalid or missing parameters
401 Unauthorized — invalid API key
422 Invalid address (e.g. missing street number)
429 Too Many Requests — rate limit exceeded

Usage as a context manager

with AddressVerify(api_key="YOUR_API_KEY") as av:
    result = av.verify("123 Main St, New York, NY 10001")

Roadmap

  • Home Verify (homeowner + person & property lookup, …/isHomeOwner/homeOwner) — coming to the SDK. Already available on the REST API.

Links

License

MIT © AddressVerify

About

Official Python SDK for the AddressVerify API — validate residential addresses, classify home types, and get property values.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages