While what3words is not a traditional reverse geocoding system, combined with Experian Address Validation, it provides a unique and innovative way of associating a user-friendly location description to an address.
Finding hard-to-reach addresses can be a real headache, causing problems and delays in getting deliveries to their destinations. This is especially true for rural areas and places with imprecise postal codes, where orders often end up in the wrong spot, leading to frustration and wasted time and resources. To make things smoother, let your customers tell you exactly where they want their deliveries. Thanks to Experian Address Validation's what3words feature, it's super easy for customers to pinpoint their exact delivery location, accurate to within 3 meters. Give customers an easy way to provide an accurate what3words delivery point alongside their postal address.
United Kingdom only
On user input into an address search field, use the RegEx to detect partial 3 word addresses.
While the RegEx does not detect a partial 3 word address, pass the user input to the /address/search/v1/
endpoint.
POST /address/search/v1 HTTP/1.1
{
"country_iso": "gbr",
"components": {
"unspecified": [
"wool"
]
},
"datasets": [ "gb-address" ]
}
Once a partial 3 word address is detected, pass the user input to the /address/lookup/v2/
endpoint. Strip off any leading slashes '/' to get a list of matching 3 word addresses.
POST /address/lookup/v2 HTTP/1.1
{
"country_iso":"gbr",
"key": {
"type": "what3words",
"value": "faced.potato.p"
},
"datasets":[ "gb-address" ]
}
The end user selects one of the 3 word addresses or keeps typing to refine the 3 word addresses. Your integration should detect further user input and keep sending request to either the /address/search/v1
or /address/lookup/v2
endpoint.
POST /address/lookup/v2 HTTP/1.1
{
"country_iso":"gbr",
"key": {
"type": "what3words",
"value": "faced.potato.poin"
},
"datasets":[ "gb-address" ]
}
Once a user selects a suggested 3 word address, the integration should pass the selected 3 word address to the /address/lookup/v2
endpoint. Prepend 3 slashes '///' to signal this is a full, valid 3 word address for the API to return addresses within a 100m radius of the 3 word address.
POST /address/lookup/v2 HTTP/1.1
{
"country_iso":"gbr",
"key": {
"type": "what3words",
"value": "///faced.potato.points"
},
"datasets":[ "gb-address" ]
}
Once the user selects an address, pass the global_address_key
to the /address/format/v1/
endpoint to retrieve the formatted address.
In parallel unlock the power of the 3x3m square accuracy of what3words by passing the global_address_key
to the /enrichment/v2/
endpoint with dataset what3words
to retrieve the latitude and longitude assigned to the 3 word address, not the postal address.
POST /enrichment/v2 HTTP/1.1
{
"country_iso": "GBR",
"keys": {
"global_address_key": "<insert the global_address_key of the selected address>"
},
"attributes": {
"what3words": [
"latitude",
"longitude",
"name",
"description"
]
}
}
Add-Addresses