## Autocomplete

`client.addressVerification.autocomplete(AddressVerificationAutocompleteParamsparams, RequestOptionsoptions?): AddressVerificationAutocompleteResponse`

**post** `/v1/addver/completions`

Resolves a partial street address into a list of full address candidates,
optionally selecting a specific candidate by index and verifying it.

**Basic usage** — omit `index`: returns an array of `CompletedAddressItem`
results for the given `partialStreet`.

**With `index`** — specify `index` to resolve a single candidate. Returns
a single `CompletedAddressItem`.

**With `index` + `verify=true`** — additionally runs the selected address
through the USPS/Canada Post verifier and returns a `StandardVerifiedAddress`.

- Uses 1 lookup per call (plus 1 more if geocoding a result).

### Parameters

- `params: AddressVerificationAutocompleteParams`

  - `partialStreet: string`

    Body param: The partial street address to complete (e.g. `"22 Bay"`).

  - `filterExact?: boolean`

    Query param

  - `geocode?: boolean`

    Query param

  - `includeDetails?: boolean`

    Query param

  - `index?: number`

    Query param

  - `limit?: number`

    Query param

  - `properCase?: boolean`

    Query param

  - `body_verifiedOnly?: boolean`

    Body param: If true, only return addresses that passed USPS/Canada Post verification.

  - `verify?: boolean`

    Query param

  - `cityFilter?: string`

    Body param: Filter results to a specific city.

  - `countryFilter?: string`

    Body param: Filter results to a specific country code.

  - `pcFilter?: string`

    Body param: Filter results to a specific postal code prefix.

  - `stateFilter?: string`

    Body param: Filter results to a specific state or province abbreviation.

### Returns

- `AddressVerificationAutocompleteResponse`

  - `data: CompletedAddressItem | Array<UnionMember1> | StandardVerifiedAddress`

    - `CompletedAddressItem`

      - `address: Address`

        The resolved address components.

        - `address: string`

          The first line of the address.

        - `address2?: string`

          The second line of the address.

        - `city?: string`

          The city.

        - `country?: string`

          The ISO 2-letter country code.

        - `pc?: string`

          The postal code.

        - `prov?: string`

          The province or state abbreviation.

      - `errors?: Errors`

        Errors encountered during address verification.

        - `city?: Array<string>`

          Errors related to the city.

        - `generic?: Array<string>`

          Generic errors not tied to a specific field.

        - `line1?: Array<string>`

          Errors related to the first address line.

        - `line2?: Array<string>`

          Errors related to the second address line.

        - `postalOrZip?: Array<string>`

          Errors related to the postal or ZIP code.

        - `provinceOrState?: Array<string>`

          Errors related to the province or state.

      - `geocodeResult?: GeocodeResult`

        Geocoding result. Only present when `geocode=true` is supplied and an `index` is specified.

        - `accuracy: number`

          A real number from 0.00 to 1.00 which represents an [accuracy score](https://avdocs.postgrid.com/#accuracy-score)

        - `accuracyType: "rooftop" | "point" | "range_interpolation" | 5 more`

          A string representing the [accuracy type](https://avdocs.postgrid.com/#accuracy-type)

          - `"rooftop"`

          - `"point"`

          - `"range_interpolation"`

          - `"nearest_rooftop_match"`

          - `"intersection"`

          - `"street_center"`

          - `"place"`

          - `"state"`

        - `location: Location`

          Object that contains `lat`, `lng` properties with number values

          - `lat: number`

          - `lng: number`

    - `Array<UnionMember1>`

      - `address: Address`

        The resolved address components.

        - `address: string`

          The first line of the address.

        - `address2?: string`

          The second line of the address.

        - `city?: string`

          The city.

        - `country?: string`

          The ISO 2-letter country code.

        - `pc?: string`

          The postal code.

        - `prov?: string`

          The province or state abbreviation.

      - `errors?: Errors`

        Errors encountered during address verification.

      - `geocodeResult?: GeocodeResult`

        Geocoding result. Only present when `geocode=true` is supplied and an `index` is specified.

        - `accuracy: number`

          A real number from 0.00 to 1.00 which represents an [accuracy score](https://avdocs.postgrid.com/#accuracy-score)

        - `accuracyType: "rooftop" | "point" | "range_interpolation" | 5 more`

          A string representing the [accuracy type](https://avdocs.postgrid.com/#accuracy-type)

          - `"rooftop"`

          - `"point"`

          - `"range_interpolation"`

          - `"nearest_rooftop_match"`

          - `"intersection"`

          - `"street_center"`

          - `"place"`

          - `"state"`

        - `location: Location`

          Object that contains `lat`, `lng` properties with number values

          - `lat: number`

          - `lng: number`

    - `StandardVerifiedAddress`

      - `city: string`

        The city name of the address.

      - `country: string`

        The country code of the address.

      - `line1: string`

        The first line of the address.

      - `postalOrZip: string`

        The postal code or ZIP code of the address.

      - `provinceOrState: string`

        The province or state of the address.

      - `countryName?: string`

        The country name of the address.

      - `details?: Details`

        If you supply `includeDetails=true` as a query parameter, we will also populate an additional `details` field that follows the [Address Details](https://avdocs.postgrid.com/#address-details) schema.

        - `boxID?: string`

          PO Box ID

        - `county?: string`

          County in the United States (US address only)

        - `countyNum?: string`

          FIPS code for county (US address only)

        - `deliveryInstallationAreaName?: string`

          Delivery installation area name

        - `deliveryInstallationQualifier?: string`

          Delivery installation qualifier

        - `deliveryInstallationType?: string`

          Delivery installation type

        - `extraInfo?: string`

          Any extra information relevant to the address

        - `postDirection?: string`

          The post-direction of the street (after the street name, US addresses only)

        - `preDirection?: string`

          The pre-direction of the street (before the street name, US addresses only)

        - `residential?: boolean`

          Indicates that the address is residential (US address only)

        - `ruralRouteNumber?: string`

          Rural route number

        - `ruralRouteType?: string`

          Rural route type

        - `streetDirection?: string`

          The direction of the street (N, S, E, W, etc)

        - `streetName?: string`

          Name of the street where the address is located

        - `streetNumber?: string`

          Street number (e.g. the 20 in 20 Bay St)

        - `streetType?: string`

          Type of the street (DR, ST, BLVD, etc)

        - `suiteID?: string`

          The unit number/name

        - `suiteKey?: string`

          The suite key

        - `usCensusBlockNumber?: string`

          US Census block number

        - `usCensusCMSA?: string`

          US Census consolidated metropolitan statistical area

        - `usCensusFIPS?: string`

          US Census FIPS code (US address only)

        - `usCensusMA?: string`

          US Census metropolitan area

        - `usCensusMSA?: string`

          US Census metropolitan statistical area

        - `usCensusPMSA?: string`

          US Census primary metropolitan statistical area

        - `usCensusTractNumber?: string`

          US Census tract number

        - `usCongressionalDistrictNumber?: string`

          US congressional district number

        - `usHasDaylightSavings?: boolean`

          True if address location recognizes DST

        - `usMailingCheckDigit?: string`

          PostNet barcode digit

        - `usMailingsCarrierRoute?: string`

          4-character code assigned to mail delivery route within a 5 digit zip code

        - `usMailingsDefaultFlag?: boolean`

          True if US address matches a high-rise default or rural route default in the USPS data

        - `usMailingsDeliveryPoint?: string`

          Unique USPS identifier for the delivery point

        - `usMailingsDpvConfirmationIndicator?: string`

          See [USPS DPV](https://avdocs.postgrid.com/#usps-dpv)

        - `usMailingsDpvCrmaIndicator?: string`

          Y if this is a commercial mail receiving agency, N otherwise

        - `usMailingsDpvFootnote1?: string`

          See [USPS DPV](https://avdocs.postgrid.com/#usps-dpv)

        - `usMailingsDpvFootnote2?: string`

          See [USPS DPV](https://avdocs.postgrid.com/#usps-dpv)

        - `usMailingsDpvFootnote3?: string`

          See [USPS DPV](https://avdocs.postgrid.com/#usps-dpv)

        - `usMailingsElotAscDesc?: string`

          A for ascending, D for descending

        - `usMailingsElotSequenceNumber?: string`

          eLOT sequence number

        - `usMailingsEWSFlag?: string`

          Y if address is in early warning system database

        - `usMailingsLACSFlag?: string`

          Y if address converted by LACS

        - `usMailingsLACSReturnCode?: string`

          Corresponds to USPS LACSLink return code

        - `usMailingsRecordTypeCode?: string`

          See [USPS DPV](https://avdocs.postgrid.com/#usps-dpv)

        - `usMailingsSuiteLinkReturnCode?: string`

          See [USPS DPV](https://avdocs.postgrid.com/#usps-dpv)

        - `usPostnetBarcode?: string`

          PostNet barcode for the address (US address only)

        - `usStateLegislativeLower?: string`

          Lower legislative district for the US address

        - `usStateLegislativeUpper?: string`

          Upper legislative district for the US address

        - `usTimeZone?: string`

          Time zone for the US address area

        - `vacant?: boolean`

          Indicates that the address is vacant according to the USPS (US address only)

      - `errors?: Errors`

        Errors encountered during address verification.

      - `firmName?: string`

        The firm name of the address.

      - `geocodeResult?: GeocodeResult`

        If the `geocode=true` query parameter is supplied, the response will include a geocodeResult
        which follows the [Geocoding](https://avdocs.postgrid.com/#geocoding) schema.  You can request
        this feature be enabled by emailing `support@postgrid.com`. This includes our verification, batch
        verification, suggestions, and POST /completions endpoint. Note that you must supply country when
        geocoding to get the result successfully.

        - `accuracy: number`

          A real number from 0.00 to 1.00 which represents an [accuracy score](https://avdocs.postgrid.com/#accuracy-score)

        - `accuracyType: "rooftop" | "point" | "range_interpolation" | 5 more`

          A string representing the [accuracy type](https://avdocs.postgrid.com/#accuracy-type)

          - `"rooftop"`

          - `"point"`

          - `"range_interpolation"`

          - `"nearest_rooftop_match"`

          - `"intersection"`

          - `"street_center"`

          - `"place"`

          - `"state"`

        - `location: Location`

          Object that contains `lat`, `lng` properties with number values

          - `lat: number`

          - `lng: number`

      - `line2?: string`

        The second line of the address.

      - `provinceOrStateName?: string`

        The full name of the province or state.

      - `status?: Status`

        The verification status of an address.

        - `"verified"`

        - `"corrected"`

        - `"failed"`

      - `zipPlus4?: string`

        The zip plus 4 code of the address.

  - `message: string`

  - `status: "success" | "error"`

    - `"success"`

    - `"error"`

### Example

```typescript
import PostGrid from 'postgrid-node';

const client = new PostGrid({
  addressVerificationAPIKey: process.env['POSTGRID_ADDRESS_VERIFICATION_API_KEY'], // This is the default and can be omitted
});

const response = await client.addressVerification.autocomplete({ partialStreet: 'partialStreet' });

console.log(response.data);
```

#### Response

```json
{
  "data": {
    "address": {
      "address": "address",
      "address2": "address2",
      "city": "city",
      "country": "country",
      "pc": "pc",
      "prov": "prov"
    },
    "errors": {
      "city": [
        "string"
      ],
      "generic": [
        "string"
      ],
      "line1": [
        "string"
      ],
      "line2": [
        "string"
      ],
      "postalOrZip": [
        "string"
      ],
      "provinceOrState": [
        "string"
      ]
    },
    "geocodeResult": {
      "accuracy": 0,
      "accuracyType": "rooftop",
      "location": {
        "lat": 0,
        "lng": 0
      }
    }
  },
  "message": "message",
  "status": "success"
}
```
