Skip to content

SmartMover CA

Overview

Contact data will deteriorate over time as people and businesses move around. SmartMover will allow you to keep that data up to date, both maintaining and confirming accuracy. The SmartMover Cloud API is able to validate and standardize addresses, detect moves, and provide an updated address for an individual or business. SmartMover is available for Canada using data from Canada Post.

You can use SmartMover CA to:

  • Keep contact addresses from Canada up to date.
  • Standardize and validate addresses.

SmartMover is also available for the US.

Documentation

Useful Resources

Product Page

Support Center

Download OpenAPI description
Languages
Servers
Canada Change of Address (CCOA)
https://smartmovercanada.melissadata.net/V3/WEB/SmartMover/

Change of Address Detection

Use this endpoint to check a move with a name and address, or check if a business has changed locations.

Operations

Check a move

Request

Uses HTTPS GET to accept one input record and return a response.

The following are the possible minimum input requirements:

  1. First and Last Name, Full Name, or Company

  2. Address Only

  3. City and State, ZIP Code, or AddressLastLine

Query
actstring

Selects which COA objects to be used in the request. For Canadian Change of Address Object, use CCOA.

colsstring

Columns - The column names or groups to be output.

Entering the column name will return the column. Specifying a group name will return all columns in the group.

Delimit multiple columns with a ,.

For example: ColumnName,ColumnName.

Columns:

GrpName - Name Details
  • NameFirst
  • NameFull
  • NameLast
  • NameMiddle
  • NamePrefix
  • NameSuffix
GrpOriginal - Original Address Details
  • OriginalAddressLine1
  • OriginalAddressLine2
  • OriginalCity
  • OriginalCityAbbreviation
  • OriginalCountryCode
  • OriginalPlus4
  • OriginalPostalCode
  • OriginalPrivateMailbox
  • OriginalResults
  • OriginalState
  • OriginalStateName
  • OriginalSuite
  • OriginalUrbanization
GrpParsed - Parsed Address Details
  • AddressDeliveryInstallation
  • AddressHouseNumber
  • AddressLockBox
  • AddressPostDirection
  • AddressPreDirection
  • AddressPrivateMailboxName
  • AddressPrivateMailboxRange
  • AddressRouteService
  • AddressStreetName
  • AddressStreetSuffix
  • AddressSuiteName
  • AddressSuiteNumber
GrpStandardized - Standardized Address Details
  • StandardizedAddressLine1
  • StandardizedAddressLine2
  • StandardizedBaseMelissaAddressKey
  • StandardizedCarrierRoute
  • StandardizedCity
  • StandardizedCityAbbreviation
  • StandardizedCountryCode
  • StandardizedDeliveryIndicator
  • StandardizedDeliveryPointCheckDigit
  • StandardizedDeliveryPointCode
  • StandardizedMelissaAddressKey
  • StandardizedPlus4
  • StandardizedPostalCode
  • StandardizedPrivateMailbox
  • StandardizedResults
  • StandardizedState
  • StandardizedStateName
  • StandardizedSuite
  • StandardizedUrbanization
[COLUMN NAME ONLY] - These columns can only be requested by using their name.
  • DPVFootNotes
  • MoveReturnCode
  • Plus4
  • PrivateMailbox
  • Suite
formatstring

The desired format of the response.

Enum"json""xml"
Example: format=json
idany(password)required

Required. The License Key issued by Melissa.

Example: id={REPLACE-WITH-YOUR-LICENSE-KEY}
jobidstring

This value will identify to the service which records belong to the same list for the purposes of the NCOA and CCOA report. All records from the same list should have the same JobID. This is NOT a database unique key, please use the RecordID field for that.

Example: jobid=001
liststring

Identifies the current list. It will be included in reports returned by SmartMover V3 after processing.

tstring

Transmission Reference - Optional. Serves as a unique identifier for this set of records.

Example: t=Test
a1stringrequired

A minimum address location for the name / company contact.

Example: a1=80 Wellington St.
a2string

The second address line.

citystringrequired

The city name.

Example: city=Ottawa
compstring

The name of the business.

ctrystring

The country code. SmartMover CA can only update addresses within Canada.

Example: ctry=CA
firststring

The parsed first name of an individual.

fullstringrequired

The full name of an individual. Required unless parsed name inputs are used.

Example: full=Prime Minister of Canada
laststring

The parsed last name of an individual.

middlestring

The parsed middle name of an individual.

nameprestring

The title or honorific prefix of the name. E.g. Mr, Miss, Dr.

namesuffixstring

The generational or professional suffix of the name. E.g. Jr, IV, Ph.D..

plus4string

The last four digits of a ZIP+4.

pmbstring

The private mailbox number, if this address is a box in a private mailbox service.

postalstringrequired

The five-digit ZIP Code, the first five digits of a ZIP+4, or a full nine-digit ZIP+4.

Example: postal=K1P 5K9
statestringrequired

The state name.

Example: state=ON
stestring

The suite number.

curl -i -X GET \
  'https://smartmovercanada.melissadata.net/V3/WEB/SmartMover/doSmartMover?id={REPLACE-WITH-YOUR-LICENSE-KEY}&a1=80+Wellington+St.&city=Ottawa&full=Prime+Minister+of+Canada&postal=K1P+5K9&state=ON'

Responses

Successful response

Body
Versionstring

The current service version number.

TransmissionReferencestring

A pass-through of the input TransmissionReference field.

TransmissionResultsstring

Lists error codes from any errors caused by the most recent request as a whole. For more information, see SmartMover Result Codes.

TotalRecordsstring

Total number of records.

RecordsArray of objects(ResponseRecord)

This is the returned array of records.

Response
{ "Records": { "AddressExtras": "", "AddressKey": "K1A0A2", "AddressLine1": "80 Wellington St", "AddressLine2": "", "AddressTypeCode": "1", "BaseMelissaAddressKey": "", "CarrierRoute": "", "City": "Ottawa", "CityAbbreviation": "Ottawa", "CompanyName": "", "CountryCode": "CA", "CountryName": "Canada", "DeliveryIndicator": "", "DeliveryPointCheckDigit": "", "DeliveryPointCode": "", "MelissaAddressKey": "8620912446", "MoveEffectiveDate": "", "MoveTypeCode": "", "PostalCode": "K1A 0A2", "RecordID": "1", "Results": "AC01,AS01", "State": "ON", "StateName": "Ontario", "Urbanization": "" }, "TotalRecords": "1", "TransmissionReference": "Test", "TransmissionResults": "", "Version": "8.4.1.1130" }

Check change of addresses

Request

An HTTPS POST is issued with the "ContentType" header specifying the format of the request and the "Accept" header specifying the format of the response.

Bodyrequired
Actionsstring

Selects which COA objects to be used in the request. For Canadian Change of Address Object, use CCOA.

Columnsstring

Columns - The column names or groups to be output.

Entering the column name will return the column. Specifying a group name will return all columns in the group.

Delimit multiple columns with a ,.

For example: ColumnName,ColumnName.

Columns:

GrpName - Name Details
  • NameFirst
  • NameFull
  • NameLast
  • NameMiddle
  • NamePrefix
  • NameSuffix
GrpOriginal - Original Address Details
  • OriginalAddressLine1
  • OriginalAddressLine2
  • OriginalCity
  • OriginalCityAbbreviation
  • OriginalCountryCode
  • OriginalPlus4
  • OriginalPostalCode
  • OriginalPrivateMailbox
  • OriginalResults
  • OriginalState
  • OriginalStateName
  • OriginalSuite
  • OriginalUrbanization
GrpParsed - Parsed Address Details
  • AddressDeliveryInstallation
  • AddressHouseNumber
  • AddressLockBox
  • AddressPostDirection
  • AddressPreDirection
  • AddressPrivateMailboxName
  • AddressPrivateMailboxRange
  • AddressRouteService
  • AddressStreetName
  • AddressStreetSuffix
  • AddressSuiteName
  • AddressSuiteNumber
GrpStandardized - Standardized Address Details
  • StandardizedAddressLine1
  • StandardizedAddressLine2
  • StandardizedBaseMelissaAddressKey
  • StandardizedCarrierRoute
  • StandardizedCity
  • StandardizedCityAbbreviation
  • StandardizedCountryCode
  • StandardizedDeliveryIndicator
  • StandardizedDeliveryPointCheckDigit
  • StandardizedDeliveryPointCode
  • StandardizedMelissaAddressKey
  • StandardizedPlus4
  • StandardizedPostalCode
  • StandardizedPrivateMailbox
  • StandardizedResults
  • StandardizedState
  • StandardizedStateName
  • StandardizedSuite
  • StandardizedUrbanization
[COLUMN NAME ONLY] - These columns can only be requested by using their name.
  • DPVFootNotes
  • MoveReturnCode
  • Plus4
  • PrivateMailbox
  • Suite
CustomerIDstringrequired

The License Key issued by Melissa.

ExecutionIDstring

In rare situations you may run into a situation where a request will be time-out by a client but finished on the server. The client then resends the same request but the server believes it is another request. So, that can result in the same record counting twice on the NCOA and CCOA report. To account for that possibility, we have the Execution ID input. We will take a hash of the input and if the hash of the current input is identical to the previous input with the same ExecutionID, we will consider it a duplicate and not count it towards the report. Specify different values for different threads. Default value is 0 if not set.

Formatstring

The desired format of the response.

Enum"json""xml"
JobIDstring

This value will identify to the service which records belong to the same list for the purposes of the NCOA and CCOA report. All records from the same list should have the same JobID. This is NOT a database unique key, please use the RecordID field for that.

OptionSmartMoverListNamestring

Identifies the current list. It will be included in reports returned by SmartMover V3 after processing.

TransmissionReferencestring

Serves as a unique identifier for this set of records. This allows you to match a response to a request.

RecordsArray of objects(RequestRecord)[ 1 .. 100 ] items
curl -i -X POST \
  https://smartmovercanada.melissadata.net/V3/WEB/SmartMover/doSmartMover \
  -H 'Content-Type: application/json' \
  -d '{
    "Actions": "",
    "Columns": "",
    "CustomerID": "{REPLACE-WITH-YOUR-LICENSE-KEY}",
    "Format": "json",
    "JobID": "001",
    "OptionSmartMoverListName": "",
    "TransmissionReference": "Test",
    "Records": [
      {
        "AddressLine1": "80 Wellington St.",
        "City": "Ottawa",
        "Company": "",
        "Country": "CA",
        "NameFull": "Prime Minister of Canada",
        "Plus4": "",
        "PostalCode": "K1P 5K9",
        "RecordID": "1",
        "State": "ON"
      }
    ]
  }'

Responses

Successful response

Body
Versionstring

The current service version number.

TransmissionReferencestring

A pass-through of the input TransmissionReference field.

TransmissionResultsstring

Lists error codes from any errors caused by the most recent request as a whole. For more information, see SmartMover Result Codes.

TotalRecordsstring

Total number of records.

RecordsArray of objects(ResponseRecord)

This is the returned array of records.

Response
{ "Records": { "AddressExtras": "", "AddressKey": "K1A0A2", "AddressLine1": "80 Wellington St", "AddressLine2": "", "AddressTypeCode": "1", "BaseMelissaAddressKey": "", "CarrierRoute": "", "City": "Ottawa", "CityAbbreviation": "Ottawa", "CompanyName": "", "CountryCode": "CA", "CountryName": "Canada", "DeliveryIndicator": "", "DeliveryPointCheckDigit": "", "DeliveryPointCode": "", "MelissaAddressKey": "8620912446", "MoveEffectiveDate": "", "MoveTypeCode": "", "PostalCode": "K1A 0A2", "RecordID": "1", "Results": "AC01,AS01", "State": "ON", "StateName": "Ontario", "Urbanization": "" }, "TotalRecords": "1", "TransmissionReference": "Test", "TransmissionResults": "", "Version": "8.4.1.1130" }