EasyPost provides address verification through the API to validate, correct, and classify addresses for shipping purposes.
Verification checks address accuracy, determines deliverability, and applies minor corrections when possible.
Street Name Abbreviation Behavior
As of August 25, 2025, EasyPost only abbreviates street names for USPS address verification when the validated street1 field exceeds 40 characters. Other carriers are not affected.
Street1-to-Street2 Splitting Logic
For U.S. and Canada addresses, if street1 exceeds 35 characters, street2 is empty, and the end of street1 contains a recognized unit number format (e.g., “Apt 101”, “Suite 205”, “Unit #99833”), the unit number is moved to street2.
This behavior ensures better address formatting and verification.
Before:
street1: "417 Montgomery St Floor 5"
steet2: ""
After:
street1: "417 Montgomery St"
street2: "Floor 5"Best Practices
-
Use the
verifyorverify_strictparameter when creating addresses to ensure verification occurs. Theverify_carrierparameter may also be included, but it must be used in combination withverifyorverify_strict(true) to validate directly against UPS or FedEx. Whenverify_carrieris used, the response includes averify_carrierkey in the verifications object (e.g., "verify_carrier": "fedex").Note: The
verify_strictparameter performs the same corrections asverify, but returns an error if the address cannot be verified. Correctable addresses are still corrected and returned. -
Including the
verifyorverify_strictparameter triggers address verification even if the value isfalse. To prevent verification, omit these parameters entirely. - Create and store address objects separately from shipments to reduce API calls and improve efficiency for repeat customers.
-
Always enter addresses in component form (
street1,street2,city,state,zip) instead of single-line format to ensure accurate parsing. -
Include suite or apartment numbers in the
street2field when applicable to avoid verification errors.
FAQs
Q: How are addresses validated using the API?
Refer to the Address Verification Guide for implementation details.
When address verification is enabled, the verifications field of the address object includes a status indicating success or failure.
Q: Can addresses be verified directly with UPS or FedEx?
Yes. Use the verify_carrier parameter in combination with verify or verify_strict (true) when creating an address. Setting verify_carrier to "ups" or "fedex" will validate the address against that carrier's Address Verification Service (AVS). If omitted or null, verification defaults to EasyPost's standard service.
Q: What does verify_strict mean?
The verify_strict parameter enables full address verification and correction, but will return an error if the address cannot be verified. Correctable addresses are still corrected and returned.
Q: Why is address verification occurring when verify or verify_strict is set to false?
Address verification is triggered whenever the verify or verify_strict parameter is included in the request, even if the value is false. To prevent verification, omit these parameters entirely.
Q: How can an address be verified and a shipment created in one API call?
Set the verify or verify_strict parameter on the to_address object when creating a shipment.
Creating addresses and shipments separately reduces API calls. Saving the address_id allows reuse for multiple shipments, which is efficient for repeat customers.
Q: How granular is address verification?
Verification granularity varies by country. In some regions, verification is available down to the housing unit level.
Q: Why is an address not verifying?
The address may be outside of supported regions.
Q: Why are addresses not auto-corrected?
Address verification does not auto-correct addresses with significant errors or multiple possible interpretations. These addresses are flagged as invalid.
Addresses are not auto-corrected if:
- Multiple errors exist (e.g., invalid ZIP and invalid street name).
- Multiple possible valid addresses exist based on the input.
Q: Does EasyPost support validation of addresses in U.S. territories?
Yes. U.S. territories are treated as domestic for verification purposes.
Q: How do I identify residential addresses?
Include the verifications field as delivery in the address object.
The response populates the residential field as true or false.
Q: Does the API support single-line address verification?
Single-line address verification is not supported. Addresses must be entered using component fields for accurate parsing.
Q: Does EasyPost support geocoding?
Yes, geocoding (latitude and longitude) is supported as part of address verification.
Q: What does the "Unable to validate Ship To address. Dial-A-Zip error: Address is too ambiguous" error mean?
This error indicates that USPS could not validate the address, confirming that address verification is functioning correctly.
To bypass verification when shipment creation must proceed, set address_verification = 0.
Q: Why are validation errors appearing on delivered packages?
This warning appears when the provided address cannot be validated, even if the package was successfully delivered.
Ensure the suite or apartment numbers are in the street2 field when applicable. Missing secondary address data often causes these warnings.