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.
- 🏠 Address validation: confirm an address is a real, deliverable U.S. residence
- 🏷️ Home-type classification:
SINGLE_FAMILY,MULTI_FAMILY,APARTMENT,CONDO,TOWNHOUSE,MANUFACTURED,LOT - 💰 Property values: estimated home value, plus optional expanded property data
- 🐍 Typed:
TypedDictresponse 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 50 free API calls to get started.
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
- 🌐 Website: https://addressverify.io
- 📚 API docs: https://addressverify.io/docs
- 🔑 Get an API key: https://app.addressverify.io/user/register
License
MIT © AddressVerify
Release files for addressverify 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| addressverify-0.1.0.tar.gz | 5.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| addressverify-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.6 kB
Release files / addressverify-0.1.0.tar.gz
| Download URL | addressverify-0.1.0.tar.gz |
|---|---|
| Size | 5.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
daca0134777b6dadc60d8c595c0681b37f64b8f0664478ffe5a7907e72c0bb7b
|
|
BLAKE2b-256 checksum How to use checksums |
65e75ab8e79c96e51afcf085168bd082bff4a1eeb5a9cc5bcf514722d879f103
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.5
|
Release files / addressverify-0.1.0-py3-none-any.whl
| Download URL | addressverify-0.1.0-py3-none-any.whl |
|---|---|
| Size | 6.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f4d9a35e24adb8db2fe6775a53990e2f37e92f80bda26b6a551365991074184c
|
|
BLAKE2b-256 checksum How to use checksums |
0dae0dc06c513fb8290610464445e470942440466a664bf63919b4449d5b7388
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.5
|