smartystreets-javascript-sdk-utils

Utils library to use with the Smarty Javascript SDK

Usage no npm install needed!

<script type="module">
  import smartystreetsJavascriptSdkUtils from 'https://cdn.skypack.dev/smartystreets-javascript-sdk-utils';
</script>

README

Smarty JavaScript SDK Utils

The Smarty JavaScript SDK Utils provide an additional level of analysis for US Street lookups validated through the Smarty JavaScript SDK. This package consists of the following utilities for Smarty API response analysis.

isValid()

Determines if the lookup is considered mail deliverable by the USPS. Returns <Boolean>.

Parameters

isInvalid()

Determines if the lookup is not considered mail deliverable by the USPS. Returns <Boolean>.

Parameters

isAmbiguous()

Determines if the lookup returned multiple possible match candidates. Returns <Boolean>.

Parameters

isMissingSecondary()

Determines if the lookup requires a secondary address. Returns <Boolean>.

Parameters

Example

This example is modified from the US Street API code example.

const SmartySDK = require("smartystreets-javascript-sdk");
const SmartyCore = SmartySDK.core;
const Lookup = SmartySDK.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 SmartyCore.ClientBuilder(new SmartyCore.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);
}