Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. The API is Real Time and is able to validate addresses in real-time, allowing users to receive instant feedback on whether an address is valid or not

  2. The API can detect if the address is a residential or business address, a deliverable address, a central delivery address , vacant address or a military vacant address

  3. The API automatically corrects contents of address such as misspellings, no city name, incorrect zip code and it also formats the address compatible with USPS address standards

  4. Auto populates the county code when applicable

  5. Detects if the apartment number is missing from the address

  6. Auto suggests a better address if available

...

Below is the sample Fenix Address Validation request and response.

    

Request

Response

Code Block

{

{
    "requestId": "df3a89af-5de9-4051-82e8-040d9333adaf", 
    "address": {
        "address1": "
xyz",     
123 williams str", 
        "address2":
"47 W Broadway",     
 null, 
        "city": "
Bangor",     
new york", 
        "state": "NY",
     
 
        "country": "US",
     
 
        "zipCode": "
04401"

}

{

    "error": {

        "code": "SUCCESS", 

        "identifier": 200, 

        "description": "We found a better match for your address"

    }, 

    "originalAddress": {

        "address1": "47 W Broadway", 

        "address2": "Apt #1", 

        "city": "Bangor", 

        "state": "NV", 

        "country": "US", 

        "zipCode": "04401"

    }, 

    "proposedAddresses": [

        {

            "address1": "47 W Broadway", 

            "address2": "Apt #1", 

            "city": "BANGOR", 

            "state": "ME", 

            "country": "US", 

            "zipCode": "04401", 

            "zipCode4": "4502", 

            "metainfo": {

                "deliverable": true, 

                "business": true, 

                "vacant": false, 

                "cmrvIndicator": false

            }

        }

    ]

}
10001", 
        "zipCode4": null
    }
}
Code Block
{
    "requestId": "df3a89af-5de9-4051-82e8-040d9333adaf", 
    "originalAddress": {
        "address1": "123 williams str", 
        "address2": null, 
        "city": "new york", 
        "state": "NY", 
        "country": null, 
        "zipCode": "10001", 
        "zipCode4": null
    }, 
    "recommendedAddress": {
        "address1": "123 WILLIAM ST", 
        "address2": null, 
        "city": "NEW YORK", 
        "state": "NY", 
        "country": null, 
        "zipCode": "10038", 
        "zipCode4": "3804"
    }, 
    "metainfo": {
        "vacant": false, 
        "business": false
    }, 
    "addressCorrections": [
        {
            "code": "ZIPCODE_CORRECTED", 
            "description": "Zip Code Corrected"
        }, 
        {
            "code": "STREET_NAME_CHANGED", 
            "description": "Street Name changed"
        }
    ], 
    "addressErrors": [
        {
            "code": "MISSING_SECONDARY_NUMBER", 
            "description": "Missing Apt/Unit Number"
        }
    ], 
    "validationError": null
}

Flow

   Retailers can integrate with Fenix Address Validation at three important places in the order flow. 

...

Retailers can call FAVS API at the time of label printing to make sure the label is printed for the correct address. Printing labels for incorrect addresses can lead to delivery delays, additional shipping spend to correct addresses and in the worst case, return the package back to the warehouse.

API Details 

    

Resource Name

Fenix Address Validation and Standardization

Resource URL

/fenixaddressvalidate/api/v1/address/validate

Method

POST

Params (query/path)

Headers

store_name

Request Payload

Code Block

{

{
    "requestId": "df3a89af-5de9-4051-82e8-040d9333adaf", 
    "address": {
        "address1": "
xyz",     
123 williams str", 
        "address2":
"47 W Broadway",     
 null, 
        "city": "
Bangor",     
new york", 
        "state": "NY",
     
 
        "country": "US",
     
 
        "zipCode":
"04401"}
 "10001", 
        "zipCode4": null
    }
}

Response Payload

{    
Code Block

    "error": {

        "code": "SUCCESS", 

        "identifier": 200, 

        "description": "We found a better match for your address"

    }, 

{
    "requestId": null, 
    "originalAddress":
{        
 {
        "address1":
"47 W Broadway",         
 "123 williams str", 
        "address2":
"Apt #1",         
 null, 
        "city": "
Bangor",         
new york", 
        "state": "
NV
NY",
         
 
        "country":
"US",         
 null, 
        "zipCode":
"04401"

    }, 

    "proposedAddresses": [

        {

            
 "10001", 
        "zipCode4": null
    }, 
    "recommendedAddress": {
        "address1":
"47 W Broadway",             
 "123 WILLIAM ST", 
        "address2":
"Apt #1",             
 null, 
        "city": "
BANGOR",             
NEW YORK", 
        "state": "
ME
NY",
             
 
        "country":
"US",             
 null, 
        "zipCode": "
04401
10038",
             
 
        "zipCode4": "
4502",             
3804"
    }, 
    "metainfo":
{

                "deliverable": true, 

                
 {
        "vacant": false, 
        "business":
true, 

                "vacant": false, 

                "cmrvIndicator": false,

                "partialAddressIndicator": false,

            }

        }

    ]

}
 false
    }, 
    "addressCorrections": [
        {
            "code": "ZIPCODE_CORRECTED", 
            "description": "Zip Code Corrected"
        }, 
        {
            "code": "STREET_NAME_CHANGED", 
            "description": "Street Name changed"
        }
    ], 
    "addressErrors": [
        {
            "code": "MISSING_SECONDARY_NUMBER", 
            "description": "Missing Apt/Unit Number"
        }
    ], 
    "validationError": null
}

Response Status

200 - Success

400 - Failure

Error Codes

S No

Use Case

Description

Error Identifier

Error Codes

1

Valid address provided

Thank You for providing correct address

200

SUCCESS

2

Address corrected

We found a better match for your address

200

SUCCESS_WITH_CORRECTION

3

Partial address provided 

Some fields of the address are missing. See metainfo.partialAddressIndicator for what’s missing

206

PARTIAL_ADDRESS

4

Invalid address provided

Your address appears to be incorrect

400

INVALID_ADDRESS

Use Cases

In partial address validation use cases, Fenix takes care of the below things.

...

S No

...

Description

...

Definition

...

1

...

Zip Code Corrected

...

The address was found to have a different 5-digit Zip Code than given in the submitted list. The correct Zip Code is shown in the output address. 

...

2

...

City / State Spelling Corrected

...

The spelling of the city name and/or state abbreviation in the submitted address was found to be different from the standard spelling. The standard spelling of the city name and state abbreviation are shown in the output address.

...

3

...

Street Name Changed

...

The spelling of the street name was changed in order to achieve a match.

...

4

...

Apartment number missing

...

Incorrect apartment number or missing apartment number

Partial Address Indicator

When the address has some fields corrected or missing in it, Fenix populates an indicator that suggests what part of the address is corrected or  missing. The possible values are as follows.

Indicator

Description

A

Zip Code corrected

B

City or State name corrected

H

Missing apartment number

M

Street name changed