15. Integration Best Practices¶
To help ensure that your API integration is giving the best possible user experience, searches are being conducted correctly and will not negatively impact other customers, please find below a checklist of recommendations:
Transaction completion - GET ../ ValidateAddress?address is the last method in all address search transaction (refer to What constitutes a billable transaction under FAQ)
Error logging - Any errors that might be experienced are captured to enable us to assist in troubleshooting
Autocomplete configuration - Configured as per below so as not to flood our service
- Commence search only after a minimum of 3 characters are entered
- Only call service after a 200ms pause in user typing
- For optimum performance results suggestions should be limited to default 15 results or less.
Autocomplete service calls should only be performed after a minimum of 3 characters have been entered and the user input has paused for 200ms. The service should not be called again until the previous call has completed and a result is selected or the input has changed.
The Phone Number validation service is a multi-step process where the initial response returned may be ‘Status: 100 – queued’ indicating that the API is processing the final status of the phone number. Users are therefore encouraged to wait at least 500ms after submitting a request before attempting to retrieve a final status code. Only submit subsequent requests when the previous call has completed and a result of ‘Status: 100 – queued’ is provided. Stop triggering subsequent requests when the result provided is no longer ‘Status: 100 – queued’.