Verify Address
/v1/verify/addressesVerifies an address against the USPS Coding Accuracy Support System (CASS) and returns it standardized and corrected.
Submit the whole address in query, or the first address line in query with either zip_code, or city and state. A freeform query is parsed into those components before the search runs.
A match returns the standardized address lines, city, state and ZIP+4, scored by fit and confidence. It also carries the CASS record behind the match: delivery point, DPV flags, carrier route, eLOT, county, congressional district, RDI, time zone and coordinates. No match returns 200 with a count of 0, a null match and empty address fields.
Only a match draws on your balance. A key without address verification enabled returns 401. A verification still running after 9.5 seconds aborts with 429.
Countries
Verify defaults to the United States, where it is CASS certified. Pass context with an ISO 3166-1 alpha-3 country code to verify an address elsewhere, e.g. context=GBR or context=FRA. The address datasets your key is licensed for decide which countries it can verify.
Outside the United States there is no CASS record to return, so match carries the standardized address from that country's dataset instead. The top-level fields (address_line_one, city, state, zip_code, country_iso_2) are populated for every country, along with confidence and fit.
Query parameters
api_keystring optionalAPI Key
Your unique identifier that allows access to our APIs.
Begins
ak_. Available from your dashboard.tagsstring optionalTags
A comma separated list of tags to query over.
Useful if you want to specify the circumstances in which the request was made.
If you specify multiple tags, the response comprises only requests that satisfy all of them. Searching
"foo,bar"queries only requests tagged both"foo"and"bar".contextstring optionalIdentify the country of the address to verify. Defaults to United States (USA)
Request body
A JSON object holding the address to verify. Only query is required.
bodyobjectquerystring requiredAddress input to verify.
If submitting a freeform address verification query, enter the full address. E.g.
query=123 Main St, Springfield, CO, 81073Otherwise, query can be accompanied with the following address components:
zip_codecityandstate
If you supply
zip_code, orcityandstate, omit that information fromqueryand use it for the first address line only. E.g.query=123 Main Stzip_codestring optionalSpecify the ZIP code of an address. The following formats are accepted:
81073-1119,810731119,81073.citystring optionalCity of an address.
statestring optionalState of an address. For the US, use the 2 letter state abbreviation.
Response
result is one of two shapes: a verified match with the standardized address
fields and deliverability indicators, or a no-match object. The response sits
inside the standard { result, code, message } envelope; see the
API reference for the wrapper format.
resultone ofUsaVerifyMatch
querystringSubmitted query
query_citystringSubmitted city
query_statestringSubmitted state
query_zip_codestringSubmitted zip_code
matchobjectNearest matching address
address1stringPrimary delivery address
address2stringSecondary address information
address3stringAdditional secondary address information
area_codestringArea code. Also known as Numbering Plan Area (NPA) https://en.wikipedia.org/wiki/List_of_North_American_Numbering_Plan_area_codes
carrier_routestringData required to perform a Carrier Route sort
check_digitstringCharacter following the 5 or 9 digit ZIP Code. Part of the 11-digit barcode
citystringCity name
city_abbreviationstringCity Abbreviation. Empty string if not present
congressional_districtstringIdentifies the Congressional District. Empty string if not present
country_codestringISO3166 country code. Empty string if not present
countystringName of the county
day_light_savingsbooleanDaylight saving time indicator
delivery_pointstringLast 2 digits of the primary street address number or Post Office box
dpvstringDelivery Point Validation (DPV) Confirmation code.
Possible values:
- 'Y' Primary and secondary address information was validated
- 'S' Extraneous or incorrect secondary address present
- 'D' Secondary address information missing
- 'N' Primary and secondary address information was not validated
- '' Address was not submitted to DPV lookup. Address was not ZIP+4 matched.
dpv_cmrastringDelivery Point Validation (DPV) CMRA code.
Indicates if the address is linked to a Commercial Mail Receiving Agency (CMRA), such as the UPS Store or Mailboxes Etc., where USPS mail can be sent or received.
Possible values:
- 'Y' Address is associated with a CMRA
- 'N' Address is not associated with a CMRA
- '' Empty string if address is not DPV validated.
dpv_footnotesstringDelivery Point Validation (DPV) Footnotes. Empty string if not present
Possible values:
- 'AA' ZIP+4 matched.
- 'A1' ZIP+4 did not match.
- 'BB' Primary and secondary address information was DPV validated.
- 'CC' Primary address information was DPV validated. Input secondary address information dropped.
- 'F1' Military address.
- 'G1' General delivery address.
- 'N1' Primary address information was DPV validated. Highrise address with missing secondary address information.
- 'M1' Primary number missing from address.
- 'M3' Primary number invalid.
- 'P1' Box number missing.
- 'P3' Box number invalid.
- 'RR' Validated CMRA address with PMB information.
- 'R1' Validated CMRA address without PMB information.
- 'U1' Unique 5-digit ZIP code.
dpv_no_statstringDelivery Point Validation (DPV) NoStat code.
Indicates whether the address is a vacant property, it receives mail as a part of a drop, or it does not have an established delivery yet.
Possible values:
- 'Y' Confirmed
- 'N' Not confirmed
- '' Empty string if address is not DPV validated.
dpv_vacantstringDelivery Point Validation (DPV) Vacant code.
USPS records indicate that although this may be a valid address, the residence or business is vacant.
Possible values:
- 'Y' Confirmed vacant
- 'N' Not confirmed vacant
- '' Empty string if address is not DPV validated.
elotstringEnhanced Line of Travel. For arranging records in the order that a route is served by a carrier. eLOT sequencing, when combined with Carrier Route codes, may allow Enhanced Carrier Route (ECR) discounts to be claimed.
finance_numberstringInternal accounting number used by the USPS® when Post Offices or ZIP Codes are discontinued and reassigned. The finance number reflects the geographic grouping of ZIP + 4 areas in which these changes can be made.
Empty string if not present
fips_county_codestringFederal Information Processing Standard code for a county. Empty string if not present
firmstringCompany name in a business address
footnotesstringLetter codes returned by ZIP+4 encoding. Empty string if not present
geo_codedbooleanIndicates whether the address was geo-coded
lacs_indicatorstringIndicates whether a record may benefit from LACS processing.
Possible values:
- 'L' Yes
- '' No
lacs_link_footnotestringLACSLink Footnote. Return Code returned by the LACSLink process when an accurate address match could not be made. These codes help identify the type of move and the type of deficiency in the record which prevents a match. Possible values:
- 'A' Address matched
- '00' No match
- '09' The input record matched to a record in the master file, but the old address is a highrise default
- '14' The input record matched to a record in the master file. The new address could not be converted to a deliverable address
- '92' LACSLink Record: Secondary Number Dropped from Input Address - The input record matched to a master file record, but the input address had a secondary number and the master file record did not. The record is a ZIP + 4 street level or high-rise match
- '' Address not submitted to LACSLink lookup
lacs_link_indicatorstringLACSLink Indicator. Indicates whether the input address matched a record in the LACSLink database.
Possible values:
- 'Y' Matched a record in the master file
- 'S' The input record matched a master file record, but the input address included a secondary number that the master file record lacked
- 'N' No match
- '' Empty string if not present
latitudestringLatitude of the encoded address. Empty string if not present
longitudestringLongitude of the encoded address. Empty string if not present
parsed_pmb_designatorstringInformation if a Private Mail Box (PMB) is found in an address. Empty string if not present
parsed_pmb_numberstringInformation if a Private Mail Box (PMB) is found in an address. Empty string if not present
parsed_post_directionalstringNotation following the street name indicating street direction. Empty string if not present
parsed_pre_directionalstringNotation preceding the street name indicating street direction. Empty string if not present
parsed_primary_numberstringNumber preceding the street name. Empty string if not present
parsed_street_namestringStreet name. Empty string if not present
parsed_suffixstringPart of the delivery address line following the street name. Empty string if not present
parsed_unit_designatorstringIdentification of the secondary address unit. Empty string if not present
parsed_unit_numberstringApartment or suite number. Empty string if not present
rdistringResidential Delivery Indicator (RDI). Indicates whether USPS classifies the delivery point as residential. Empty string if not present
record_typestringType of address record.
Possible values:
- 'C' Multi-Carrier
- 'F' Firm
- 'G' General Delivery
- 'H' High-rise or Apartment Building
- 'M' Military
- 'P' PO Box
- 'R' Route (Rural Route/Highway Contract)
- 'S' Street
- 'U' Unique 5-Digit
statestringStandard two-letter state abbreviation
suite_link_footnotestringResults of the SuiteLink lookup.
Possible values: ' ' (Space), '00' (Double Zero), 'A' (A). Empty string if not present
time_zonestringTime zone. Empty string if not present
urbanizationstringUrban name required in the address of all mail being delivered to Puerto Rico. Empty string if not present
zip_codestring5-digit ZIP Code and the four additional digits
countnumberThe number of addresses we matched to the input. We return the closest match by default.
fitnumberA score represented as number between 1 and 0. Fit compares the address elements present in your query against the matching address elements. It does not incorporate elements you have not presented in the score. A partial address (e.g. 123 Main St) will have a fit of 1 even though it is missing city and zip code. Its confidence score will be less than 1 however because it is missing some crucial elements.
confidencenumberA confidence score represented as number between 1 and 0. 1 indicates a full match. 0 indicates no complete matching elements.
match_informationstringAdditional information about the match.
This information is for human consumption and may not be present in all responses.
address_line_onestringPrimary delivery address
address_line_twostringSecondary address information
citystringCity name
statestringState name
zip_codestringZip code
country_iso_2string2 letter ISO country code
UsaVerifyNoMatch
querystringOriginally submitted query
query_citystringOriginally submitted city
query_statestringOriginally submitted state
query_zip_codestringOriginally submitted zip_code
matchobjectNearest matching address
countnumberfitnumberconfidencenumberaddress_line_onestringEmpty if no match
address_line_twostringEmpty if no match
citystringEmpty if no match
statestringEmpty if no match
zip_codestringEmpty if no match
country_iso_2stringEmpty if no match