International Address Verification and Autocomplete

Allows you to autocomplete, verify, and standardize international addresses of 245+ countries in real-time.

Integrating Autocomplete

We provide a pre-built web-based autocomplete integration in the Developers section of the dashboard. However, if you want to integrate autocomplete manually, here are our recommended steps:

  1. Use the GET /completions endpoint and supply partialStreet via the query params
    • This endpoint does not use any lookups
  2. Allow the user to select one of the autocompleted international address previews
  3. If the selected type is 'Address'. Make a POST /completions request with request body 'id' which its value comes from the 'id' field of the selected preview.
  4. If the selected type is not 'Address'. Use the GET /completions endpoint again but this time supplies 'container' which its value comes from the 'id' of the selected preview as query param. In addition, supply query param advanced=true. Then proceed to step 2 again.

Response

The top-level JSON response has the following structure:

NameTypeDescription
statusstringEither success or error
messagestringDescribes the result of the request
dataobject or arrayThe response data.

Address Details

You can request additional address details when using the verification endpoints (both batch and single address) by supplying a query parameter includeDetails=true.

The details have the following schema:

NameTypeDescription
organizationstring or nullName of the company or organization where the address is located
buildingstring or nullName of the building where the address is located
subBuildingstring or nullName of the sub building where the address is located
premisestring or nullPremise number where the address is located
postBoxstring or nullPostal box number where the address is located
telephonestring or nullTelephone number registered where the address is located

Note that the details will be returned in a 'details' subobject and only the relevant fields for a given address will be returned. The fields that are empty will not.

Proper Case

You can have the verification and suggestion endpoints return addresses in Proper Case (e.g. 22-20 Bay St) by supplying a query parameter properCase=true.

Geographical Data

You can request additional geographical details when using the verification endpoints (both batch and single address) by supplying a query parameter geoData=true.

NameTypeDescription
latitudenumberThe latitude of the resulting address
longitudenumberThe longitude of the resulting address
geoAccuracynumberThe accuracy of the geographical information of the resulting address

Summary of Verification

NameTypeDescription
verificationStatusstring or nullThe status of the verification. See Verification Status
postProcessedVerificationMatchLevelstring or nullThe level to which the input data matches the available reference data once all changes and additions performed during the verification process have been taken into account.See Verification Match Level
preProcessedVerificationMatchLevelstring or nullThe level to which the input data matches the available reference data prior to any changes or additions performed during the verification process.See Verification Match Level
parsingStatusstring or nullEither 'identified_and_parsed' or 'unable_to_parse'
lexiconIdentificationMatchLevelstring or nullThe level to which the output data has some recognized form, through the use of pattern matching and lexicon matching.See Verification Match Level
contextIdentificationMatchLevelstring or nullThe level to which the output data can be recognized based on the context in which it appears.See Verification Match Level
postCodeStatusstring or nullThe status about postal code.See PostalCode Status
matchScorestring or nullIndicates how much the input data has been changed during the verification process in order to achieve the post-processed verification match level

Verification Status

  • V: Verified
    A complete match was made between the input data and a single record from the available reference data
  • P: Partially Verified
    A partial match was made between the input data and a single record from the available reference data
  • U: Unverified
    Unable to verify. The output fields will contain the input data|
  • A: Ambiguous
    More than one close reference data match
  • C: Conflict
    More than one close reference data match with conflicting values
  • R: Reverted
    Record could not be verified to the specified minimum acceptable level. The output fields will contain the input data

Verification Match Level

  • 5: Delivery Point (PostBox or SubBuilding)
  • 4: Premise (Premise or Building)
  • 3: Thoroughfare (Street or Road)
  • 2: Locality (City)
  • 1: AdministrativeArea (Province or State)
  • 0: None

Postcode Status

  • postal_code_primary_and_postal_code_secondary_verified
  • postal_code_primary_verified, postal_code_secondary_added_or_changed
  • postal_code_primary_verified
  • postal_code_primary_verified_with_small_change
  • postal_code_primary_verified_with_large_change
  • postal_code_primary_added
  • postal_code_primary_identified_by_lexicon
  • postal_code_primary_identified_by_context
  • postal_code_primary_empty

Verification

This is the data returned from the international verification endpoints. The batch verification endpoint returns an array of these. The final status of each result is stored inside the verificationStatus property of the summary field. See Verification Status. In addition, the summary field provides other information regarding the quality of each verification. See Summary of Verification

NameTypeDescription
formattedAddressstringThe complete address including all details
line1stringThe first line of the resulting address
line2string or nullThe second line of the resulting address
line3string or nullThe third line of the resulting address
line4string or nullThe fourth line of the resulting address
citystring or nullThe city of the resulting address
provinceOrStatestring or nullThe province or state of the resulting address
postalOrZipstring or nullThe Postal/ZIP code of the resulting address
countrystring or nullThe country of the resulting address
summarySummary of Verification or nullContains accuracy information of the verification (see below for details)
geoDataGeographical Data or nullContains geographic information (see below for details)
detailsAddress Details or nullDetailed information about the address (see below for details)
errorsstring or nullThe address errors that were fixed or caused verification failure

Completion Preview

This is the data returned from the GET completion endpoint (i.e. the preview endpoint). Each element of the returned array follows this schema.

NameTypeDescription
idstringThe ID of the autocompleted address
typestringEither 'Address' or 'BuildingNumber'
textstringThe name of the autocompleted address
highlightstringA list of number ranges identifying the matched characters in the Text and Description
descriptionstringDescriptive information about the result

Autocompleted Address

This is the data returned from the POST completions endpoint.

NameTypeDescription
formattedAddressstringThe complete address including all details
line1stringThe first line of the resulting address
line2string or nullThe second line of the resulting address
line3string or nullThe third line of the resulting address
line4string or nullThe fourth line of the resulting address
citystring or nullThe city of the resulting address
provinceOrStatestring or nullThe province or state of the resulting address
postalOrZipstring or nullThe Postal/ZIP code of the resulting address
countrystring or nullThe country of the resulting address
buildingstring or nullName of the building where the address is located
departmentstring or nullName of the department where the address is located
companystring or nullName of the company where the address is located
errorsstring or nullThe address errors that were fixed or caused verification failure