When a search has been performed by our service, the list of suggestions that is returned contains many properties and flags, the can_step_in
property can be used to simplify the address validation process for your user. The flag should be checked after the search has been performed, but before the results are presented to the user.
Use the /suggestions/stepin/ endpoint when your list of suggestions contains a single match, with a high match score and the can_step_in
property set to true
. In this case, we suggest that your integration automatically steps into that single match, without displaying the suggestion to the user.
Supported search types
Name | Type | Description |
---|---|---|
Auth-Token | string | Input your unique token here. This is required to submit an API request. |
x-app-key (Optional) |
string | Alternative authentication header. Auth-Token takes precedence. |
Reference-Id (Optional) |
string | Identifier that will be returned to the response to help you track the request. |
Timeout-Seconds (Optional) |
integer | Maximum time you are prepared to wait for a response, expressed in seconds. Acceptable values: 2-15. If a timeout occurs, an HTTP status code of 408 - Request Timeout will be returned. The default value of this setting is 15. |
Name | Type | Description |
---|---|---|
global_address_key | string | Global address key of the suggestion you want to step into. |
Name | Type | Description |
---|---|---|
Reference-Id (Optional) |
string | Identifier that was supplied by you in the request header to help you track the request. |
The response from the API returns the below fields within a result
object. Should an error occur, an error
object is returned instead.
Name | Type | Description | |
---|---|---|---|
more_results_available | boolean | To indicate that there are more suggestions available than returned in this request. | |
confidence | string | The confidence level of the search result.
|
|
suggestions_key | string | The suggestions key for address suggestion refinement. | |
suggestions_prompt | string | The prompt to display to the user, indicating what information they should enter next. | |
suggestions | collection | The collection of the suggestions that match the address search input. | |
global_address_key | string | The ID of the address matched as part of a search. | |
text | string | The suggestion that should be presented to the user as a possible match to their input. | |
matched | collection | A collection of the characters in the suggestion that have been matched. Integrators can use this information to highlight matched text. | |
format | string | The format URL of the suggested address. | |
dataset | string | The dataset of the suggestion. | |
additional_attributes | collection | The additional attributes of the suggestion. |
The following response codes can be returned by the API:
Status Code | Reason phrase | Description |
---|---|---|
200 | Success | Request processed successfully. |
204 | No Content | Request processed successfully, but there is no content to be returned. |
400 | Bad Request | Request failed due to malformed syntax. |
401 | Unauthorized | Auth-Token provided is incorrect. Sign in to the Self Service Portal to find the right token. |
403 | Forbidden | Request is not authorized to use this service. |
404 | Not Found | Request is not found. |
406 | Not Acceptable | Request is not in an acceptable format. |
408 | Request Timeout | Your request has timed out (the web server failed to respond in the specified time frame). Try submitting another request. If the issue persists, contact us. |
415 | Unsupported Media Type | You've specified an invalid Content-Type header. Try submitting another call and make sure you specify a valid Content-Type value. |
429 | Too many requests | Too many requests were sent. To protect all customers, your account has been temporarily throttled. Check our rate limiting for more details. |
500 | Internal Server Error | An unexpected server error was encountered. Try submitting another request. If the issue persists, contact us. |
503 | Service Unavailable | Service unavailable. Check service status for up-to-date information. |
The /Suggestions/Stepin method can be used in your addess validation workflow to produce a list of suggestions that contains more detail than the current item, e.g. a suggestion that represents a street can be stepped into to produce a new list of suggestions that contain premises within the street.
Given the response contains the following suggestion:
{
"global_address_key": "dWc1ltOTFjbTVsQUEtLX45fjc",
"text": "Mary Street, HAWTHORN VIC 3122",
"additional_attributes": [
{ "name": "picklist_display", "value": "Mary Street, HAWTHORN VIC" },
{ "name": "score", "value": "100" },
{ "name": "postcode", "value": "3122" },
{ "name": "can_step_in", "value": "true" },
{ "name": "multiples", "value": "true" }
]
}
You can step into it to produce a list of premises within Mary Street by passing the returned global_address_key
to the /Suggestions/Stepin method:
GET /address/suggestions/stepin/v1/dWc1ltOTFjbTVsQUEtLX45fjc HTTP/1.1
The returned list of suggestions can include full addresses as well as items that need further steping into or refinement.
{
"result": {
"more_results_available": true,
"confidence": "Multiple matches",
"suggestions_key": "VBQUFBQkxkYktKaEVBQlJHQUlBQUFB",
"suggestions_prompt": "Enter building number/name",
"suggestions": [
{
"global_address_key": "UFBQUFBQUFBQUFBQUFBQS0tfjIxfjc",
"text": "1 ... 5 Mary Street, HAWTHORN VIC 3122",
"additional_attributes": [
{ "name": "picklist_display", "value": "1 ... 5" },
{ "name": "score", "value": "0" },
{ "name": "can_step_in", "value": "true" },
{ "name": "multiples", "value": "true" }
]
},
{
"global_address_key": "QVVTfjcuNzMwNU9BVVNIQVBtQnd",
"text": "21a Mary Street, HAWTHORN VIC 3122",
"format": "https://api.experianaperture.io/address/format/v1/QVVTfjcuNzMwNU9BVVNIQVBtQnd",
"additional_attributes": [
{ "name": "picklist_display", "value": "21a" },
{ "name": "score", "value": "0" },
{ "name": "full_address", "value": "true" }
]
}
]
}
}
The /Suggestions/Stepin method can be used in your addess validation workflow to produce a list of suggestions that contains more detail than the current item, e.g. a suggestion that represents a street can be stepped into to produce a new list of suggestions that contain premises within the street.
Given the response contains the following suggestion:
{
"global_address_key": "zTnlBeGNtWUFBQUFBQUEtLX43fjc",
"text": "Valley Road, PLYMOUTH PL7 1RF",
"additional_attributes": [
{ "name": "picklist_display", "value": "Valley Road, PLYMOUTH" },
{ "name": "score", "value": "100" },
{ "name": "postcode", "value": "PL7 1RF" },
{ "name": "can_step_in", "value": "true" },
{ "name": "multiples", "value": "true" }
]
}
You can step into the it to produce a list of premises within Valley Road by passing the returned global_address_key
to the /Suggestions/Stepin method:
GET /address/suggestions/stepin/v1/zTnlBeGNtWUFBQUFBQUEtLX43fjc HTTP/1.1
Host: api.experianaperture.io
Content-Type: application/json
The returned list of suggestions can include full addresses as well as items that need further steping into or refinement.
{
"result": {
"more_results_available": true,
"confidence": "Multiple matches",
"suggestions_key": "R0JSfjcuNzMwRU9HQlJFZ0xtQndBQUFBQUJBQUVBQUFBQVkwWlRrZ0FnQ",
"suggestions_prompt": "Enter building number/name or organisation",
"suggestions": [
{
"global_address_key": "R0JSfjcuNzMwOU9HQlJFZ0xtQndBQU",
"text": "Wise Road Management Ltd, Valley Road, PLYMOUTH PL7 1RF",
"format": "https://api.experianaperture.io/address/format/v1/R0JSfjcuNzMwOU9HQlJFZ0xtQndBQU",
"additional_attributes": [
{ "name": "picklist_display", "value": "Wise Road Management Ltd" },
{ "name": "score", "value": "0" },
{ "name": "full_address", "value": "true" }
]
},
{
"global_address_key": "BQUFBQUFBQUFBQX43fjc",
"text": "Alan Jeffery Engineering, 1 Valley Road, PLYMOUTH PL7 1RF",
"format": "https://api.experianaperture.io/address/format/v1/BQUFBQUFBQUFBQX43fjc",
"additional_attributes": [
{ "name": "picklist_display", "value": "Alan Jeffery Engineering, 1" },
{ "name": "score", "value": "0" },
{ "name": "full_address", "value": "true" }
]
}
]
}
}
The /Suggestions/Stepin method can be used in your addess validation workflow to produce a list of suggestions that contains more detail than the current item, e.g. a suggestion that represents a street can be stepped into to produce a new list of suggestions that contain premises within the street.
Given the response contains the following suggestion:
{
"global_address_key": "pXVjBMQ0JTU1VOSVRVOU9SQUFBQUFBQX4yNH43",
"text": "Charles St, Richmond IL 60071",
"additional_attributes": [
{ "name": "picklist_display", "value": "Charles St, Richmond IL" },
{ "name": "score", "value": "100" },
{ "name": "postcode", "value": "60071" },
{ "name": "can_step_in", "value": "true" },
{ "name": "multiples", "value": "true" }
]
}
You can step into the it to produce a list of premises within Charles St by passing the returned global_address_key
to the /Suggestions/Stepin method:
GET /address/suggestions/stepin/v1/pXVjBMQ0JTU1VOSVRVOU9SQUFBQUFBQX4yNH43 HTTP/1.1
Host: api.experianaperture.io
Content-Type: application/json
The returned list of suggestions can include full addresses as well as items that need further steping into or refinement.
{
"result": {
"more_results_available": false,
"confidence": "Multiple matches",
"suggestions_key": "VVNBfjcuNzMwdk9VU0FEd1BtQndBQUFBQUJBQUVBQUFBQzQzT3ZVWUFoTV3",
"suggestions_prompt": "Enter building number/name or organisation",
"suggestions": [
{
"global_address_key": "VVNBfjcuNzMwbk9VU0FEd1BtQndBQUFBQUJBZ0VBQ",
"text": "10001 ... 10099 Charles St, Richmond IL 60071-9589",
"additional_attributes": [
{ "name": "picklist_display", "value": "10001 ... 10099 [odd]" },
{ "name": "score", "value": "0" },
{ "name": "postcode", "value": "60071-9589" },
{ "name": "multiples", "value": "true" },
{ "name": "unresolvable_range", "value": "true" }
]
},
{
"global_address_key": "BQUFBQUFBQUFBQUFBQUFBQX4yNH43",
"text": "10101 ... 10199 Charles St, Richmond IL 60071-9590",
"additional_attributes": [
{ "name": "picklist_display", "value": "10101 ... 10199 [odd]" },
{ "name": "score", "value": "0" },
{ "name": "postcode", "value": "60071-9590" },
{ "name": "multiples", "value": "true" },
{ "name": "unresolvable_range", "value": "true" }
]
}
]
}
}
Experian Address Validation can return 2 special items in the response and your integration should handle them according to our best practises.
Should you encounter the below response, capture more input from the user to refine the selected suggestion.
{
"result": {
"more_results_available": true,
"confidence": "Multiple matches",
"suggestions_key": "F3QUJ3QUFBQUFBMng4TUFBQUFBQUFBQUVFZURBUEtLX45fjc",
"suggestions_prompt": "Enter street name or PO Box type",
"suggestions": [
{
"text": "Continue typing (too many matches)",
"additional_attributes": [
{ "name": "picklist_display", "value": "Continue typing (too many matches)" },
{ "name": "score", "value": "0" },
{ "name": "information", "value": "true" }
]
}
]
}
}
Should you encounter the below response, capture more input from the user to refine the selected suggestion.
{
"result": {
"more_results_available": true,
"confidence": "Multiple matches",
"suggestions_key": "F3QUJ3QUFBQUFBMng4TUFBQUFBQUFBQUVFZURBUEtLX45fjc",
"suggestions_prompt": "Enter street name, organisation or PO Box type",
"suggestions": [
{
"text": "Continue typing (or select to show all matches)",
"additional_attributes": [
{ "name": "picklist_display", "value": "Continue typing (or select to show all matches)" },
{ "name": "score", "value": "0" },
{ "name": "multiples", "value": "true" },
{ "name": "information", "value": "true" }
]
}
]
}
}
Should you encounter a response that only includes a single item with the can_step_in
attribute set to true that is not a informational item, we suggest to have your integration step into the item automatically and display the returned suggestions.
{
"result": {
"more_results_available": false,
"confidence": "Multiple matches",
"suggestions_key": "QVVTfjcuNzMwUFRBVVNIQVBtQndBQUFBQUNBUUFBTUFBUUFBRUFBQUF1SHd3QUFBQUFBRzFsYkdKdmRYSnVaUUEtfjl-Nw",
"suggestions_prompt": "Enter street name or PO Box type",
"suggestions": [
{
"global_address_key": "QVVTfjcuNzMwWlRBVVNIQVBtQndBQUFBQUNBUUlBTUFBUUFBRUFBQUF1SHd3QUFBQUFBRzFsYkdKdmRYSnVaUUEtfjl-Nw",
"text": "<PO Box types>",
"additional_attributes": [
{ "name": "picklist_display", "value": "<PO Box types>" },
{ "name": "score", "value": "0" },
{ "name": "can_step_in", "value": "true" },
{ "name": "multiples", "value": "true" },
{ "name": "dummy_po_box", "value": "true" }
]
}
]
}
}