US Address Verification API - USPS Deliverability and ZIP+4
Pricing
$10.00 / 1,000 address checkeds
US Address Verification API - USPS Deliverability and ZIP+4
Check whether a US address is really deliverable by USPS. Returns the corrected address, ZIP+4, delivery point barcode, DPV confirmation, vacancy and CMRA flags, residential or commercial type, county FIPS, carrier route and coordinates, plus a confidence score on every row.
Pricing
$10.00 / 1,000 address checkeds
Rating
0.0
(0)
Developer
Nabeel Hassan
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Find out whether a US address is really deliverable before you post to it, and get back the corrected address with ZIP+4, DPV confirmation and a confidence score.
What it does
- Answers the actual question: will mail arrive? Every row carries a deliverability verdict that separates a good address from one missing an apartment number, one with an apartment number that does not exist, and one that is simply not real.
- Corrects and standardizes as it verifies. Misspelled street names, missing directionals, wrong ZIP codes and abbreviated suffixes come back fixed and in USPS format.
- Returns ZIP+4 and the delivery point barcode. The four digit add-on and the 12 digit barcode that presorted postage discounts depend on.
- Flags vacant addresses, CMRAs and PO boxes. DPV analysis reports whether the address has been vacant for 90 days, whether it is a commercial mail receiving agency such as a mailbox rental, and whether it accepts only PO box mail.
- Tells residential from commercial. The address type field is what shipping rate logic needs, since carriers apply a residential surcharge that quotes are wrong without.
- Scores its own confidence. A numeric score and a high, medium or low level on every row, so a review queue can be sorted by how much a result should be trusted.
- Adds county FIPS, carrier route and coordinates. Latitude and longitude come back on the same call, so tax lookup and territory logic do not need a second provider.
- Verifies twenty addresses per request. Addresses given as components are batched automatically, so a large list costs far fewer HTTP round trips than one call per address.
- Never loses a row. An address that cannot be verified still produces a row saying why, so the output lines up with the input.
Input
Paste a list of addresses and your own API key. Everything else has a working default.
{"addresses": [{ "primary_line": "210 King St", "city": "San Francisco", "state": "CA", "zip_code": "94107" },{ "primary_line": "1600 Amphitheatre Pkwy", "zip_code": "94043" },{ "line1": "350 5th Ave", "town": "New York", "province": "NY", "zip": "10118" },"1 Infinite Loop, Cupertino CA 95014"],"casing": "upper","maxResults": 100}
Each address needs a street line plus either a ZIP code or both a city and a state. A row with neither is refused before it is sent, so it costs nothing.
Example output
One row per address.
{"verified": true,"deliverability": "deliverable","validAddress": true,"inputIndex": 0,"inputSummary": "210 King St, San Francisco, CA, 94107","id": "us_ver_c7cb63d68f8d6","primaryLine": "210 KING ST","lastLine": "SAN FRANCISCO CA 94107-1702","city": "SAN FRANCISCO","state": "CA","zipCode": "94107","zipCodePlus4": "1702","zipCodeType": "standard","deliveryPointBarcode": "941071702108","addressType": "commercial","recordType": "street","county": "SAN FRANCISCO","countyFips": "06075","carrierRoute": "C032","carrierRouteType": "city_delivery","latitude": 37.77597542841264,"longitude": -122.3929557343685,"dpvConfirmation": "Y","dpvCmra": "N","dpvVacant": "N","dpvActive": "Y","dpvFootnotes": ["AA", "BB"],"confidenceScore": 100,"confidenceLevel": "high"}
Frequently asked questions
What does the deliverability field actually mean?
It is a single verdict on whether USPS will deliver mail to the address. deliverable means yes. deliverable_unnecessary_unit means yes, but the apartment or suite number you supplied is not needed. deliverable_incorrect_unit means the building is real but the unit number probably is not, so mail may reach the building and not the person. deliverable_missing_unit means the building is real and a unit number is required but was not given. undeliverable means USPS will not deliver there at all.
What is DPV confirmation?
Delivery Point Validation is the USPS check that an address is a real, individual delivery point rather than merely a plausible one on a real street. dpvConfirmation of Y means every element including the secondary unit was confirmed. S means the street address is confirmed but the unit is not. D means a required unit number is missing. N means the address was not confirmed.
Can it tell me if an address is vacant?
Yes. dpvVacant is Y when USPS has recorded the address as unoccupied for 90 days or more. This is the field that catches customers who moved, and it is a common reason mail is returned even though the address itself is perfectly valid.
What is a CMRA and why would I care?
A commercial mail receiving agency is a private mailbox rental, the kind of address that looks like a suite number but is really a box at a shipping store. dpvCmra flags it. It matters for fraud screening, for identity verification, and for anyone whose terms require a real street address rather than a mail drop.
Does it return latitude and longitude?
Yes. Coordinates come back on the same verification call, alongside county, county FIPS code and carrier route, so a single run covers address checking, geocoding and tax jurisdiction lookup at once.
How many addresses does one request handle?
Twenty. Addresses supplied as components are batched twenty per request automatically, which is the provider's documented ceiling. Addresses supplied as a single string go one per request, because the bulk route does not accept them. Both produce identical rows, so you do not need to care which lane an address took.
Do I need my own API key?
Yes. This actor is bring your own key: it calls the verification API using your own account key, so you keep your own plan, your own rate limits and your own data agreement. Use a live key. A test key is accepted, but the provider answers it with placeholder data instead of checking the real address, and this actor warns you in the log when it sees one.
What is the confidence score?
A numeric score from 0 to 100 with a high, medium or low band, reflecting how strongly the provider believes the returned address matches what you sent. It is the field to sort by when a human has to review borderline results, because it separates a clean exact match from a correction that happened to be plausible.
What happens to an address that cannot be verified?
It is still written to the dataset. An address USPS rejects gets a row with its deliverability verdict; an address the provider refused outright gets a row with the provider's own reason. Set skipUndeliverable to true if you only want the good ones.
How much does a run cost?
Charging is per row. Every address the provider answered is charged, deliverable or not, because the provider bills that lookup either way. Rows refused before sending, such as a street line with no ZIP and no city and state, are never charged. Set maxResults to cap what a run can spend.
Keyword map
US address verification API, USPS address validation, address deliverability check, DPV confirmation, delivery point validation, ZIP+4 lookup, delivery point barcode, CASS certified address checking, address standardization, vacant address detection, CMRA detection, residential vs commercial address, address type lookup, county FIPS by address, carrier route lookup, bulk address verification, mailing list cleaning, address geocoding, undeliverable mail prevention, direct mail data hygiene