The SmartyStreets JavaScript SDK Utils provide an additional level of analysis for US Street lookups validated through the SmartyStreets JavaScript SDK. This package consists of the following utilities for SmartyStreets API response analysis.
Determines if the lookup is considered mail deliverable by the USPS. Returns <Boolean>.
lookup
: (<Object>) a validated US Street Lookup
Determines if the lookup is not considered mail deliverable by the USPS. Returns <Boolean>.
lookup
: (<Object>) a validated US Street Lookup
Determines if the lookup returned multiple possible match candidates. Returns <Boolean>.
lookup
: (<Object>) a validated US Street Lookup
Determines if the lookup requires a secondary address. Returns <Boolean>.
lookup
: (<Object>) a validated US Street Lookup
This example is modified from the US Street API code example.
const SmartyStreetsSDK = require("smartystreets-javascript-sdk");
const SmartyStreetsCore = SmartyStreetsSDK.core;
const Lookup = SmartyStreetsSDK.usStreet.Lookup;
const utils = require("smartystreets-javascript-sdk-utils");
let authId = process.env.SMARTY_AUTH_ID;
let authToken = process.env.SMARTY_AUTH_TOKEN;
let clientBuilder = new SmartyStreetsCore.ClientBuilder(new SmartyStreetsCore.StaticCredentials(authId, authToken));
let client = clientBuilder.buildUsStreetApiClient();
let lookup1 = new Lookup();
lookup1.street = "1600 Pennsylvania Ave NW";
lookup1.city = "Washington";
lookup1.state = "DC";
client.send(lookup1)
.then(handleSuccess)
.catch(handleError);
function handleSuccess(response) {
response.lookups.map(lookup => console.log(lookup.result));
// Is lookup1 valid?
console.log(utils.isValid(response.lookups[0]));
// Is lookup1 invalid?
console.log(utils.isInvalid(response.lookups[0]));
// Is lookup1 ambiguous?
console.log(utils.isAmbiguous(response.lookups[0]));
// Is lookup1 missing a secondary address?
console.log(utils.isMissingSecondary(response.lookups[0]));
}
function handleError(response) {
console.log(response);
}