# Lookup a Melissa Address Key (MAK)

Search for the equivalent address associated with a MAK.

Endpoint: GET /doMAKLookup

## Header parameters:

  - `Accept` (string, required)
    Format of the response.
    Enum: "application/json", "*/*"

  - `Content-Type` (string, required)
    Format of the request.
    Enum: "application/json", "application/xml"

## Query parameters:

  - `id` (string, required)
    The License Key issued by Melissa. This only takes a license key, it will not accept the Customer ID.
    Example: "{REPLACE-WITH-YOUR-LICENSE-KEY}"

  - `format` (string)
    The output format.
    Enum: "JSON", "XML"

  - `opt` (string)
    Options - List options in the format OptionName:Parameter, with multiple options delimited with a ,.

For example: OptionName:Parameter,OptionName:Parameter
- ResponseSchema: - Converts the output fields to use naming conventions for the specified country. Default is US

  - `ctry` (string)
    The country where your MAK lookup is for. This helps optimize MAK searches.
    Example: "US"

  - `mak` (string, required)
    The MAK number input (US and Global). MAK Numbers are unique identifiers for all delivery point addresses for all countries when available.
    Example: "8008006245"

## Response 200 fields (application/json):

  - `TotalRecords` (string)
    Total number of records.

  - `TransmissionReference` (string)
    Optional. Serves as a unique request identifier.

  - `TransmissionResults` (string)
    Lists error codes from any errors caused by the most recent request as a whole. For more information, see [Melissa Keys Lookup Result Codes](https://docs.melissa.com/cloud-api/melissa-keys-lookup/result-codes.html).

  - `Version` (string)
    The current service version number.

  - `Records` (array)

  - `Records.AddressLine1` (string)
    These are string values that return the standardized or corrected address for the associated MAK.

  - `Records.AddressLine2` (string)
    Standardized or corrected contents of the input address line 2.

  - `Records.AddressLine3` (string)
    Standardized or corrected contents of the input address line 3.

  - `Records.AddressLine4` (string)
    Standardized or corrected contents of the input address line 4.

  - `Records.AddressLine5` (string)
    Standardized or corrected contents of the input address line 5.

  - `Records.AddressLine6` (string)
    Standardized or corrected contents of the input address line 6.

  - `Records.AddressLine7` (string)
    Standardized or corrected contents of the input address line 7.

  - `Records.AddressLine8` (string)
    Standardized or corrected contents of the input address line 8.

  - `Records.AdministrativeArea` (string)
    State, Province. This is a common geographic area unit for larger countries.

  - `Records.City` (string)
    The city name for the associated MAK.

  - `Records.CountryISO3166_1_Alpha2` (string)
    The 2 letter ISO 3166 country code value.

For example: US for United States or CA for Canada.

  - `Records.CountryISO3166_1_Alpha3` (string)
    The 3 letter ISO 3166 country code value.

For example: USA for United States or CAN for Canada.

  - `Records.CountryISO3166_1_Numeric` (string)
    The ISO 3166 country number value.

For example: 840 for United States or 124 for Canada.

  - `Records.CountryName` (string)
    The full country name for the associated MAK.

  - `Records.CountrySubdivisionCode` (string)
    The ISO3166-2 code for country subdivisions, usually tied to the administrative area for a country. The format is the 2 letter country code followed by a dash followed by 2 or 3 characters or two numbers.

For example: US-CA, CN-16, or AU-VIC.

This field is only populated for the following countries: AE, AR, AT, AU, BB, BE, BH, BR,BS, CA, CH, CL, CN, CO, CR, DE, DK, DM, DO, ES, FI, FJ, FR, GB, GH, GT, GY, HN, ID, IE, IL, IN, IS, IT, JP, KR, KW, LT, LU, LV, MX, MY, NC, NG, NI, NL, NO, NZ, PE, PH, PK, PL, PR, PT, RS, SA, SG, SI, SV, TH, TR, UA, US, UY, VN.

  - `Records.DependentLocality` (string)
    Urbanization. A dependent locality is a logical area unit that is smaller than a locality but larger than a double dependent locality or thoroughfare. It can often be associated with a neighborhood or sector.

Great Britain is an example of a country that uses double dependent locality. In the United States, this would correspond to Urbanization, which is used only in Puerto Rico.

  - `Records.DoubleDependentLocality` (string)
    A double dependent locality is a logical area unit that is smaller than a dependent locality but bigger than a thoroughfare. This field is very rarely used.

Great Britain is an example of a country that uses double dependent locality.

  - `Records.Locality` (string)
    City. This is the most common geographic area and used by virtually all countries. This is usually the value that is written on a mailing label and referred to by terms like City, Town, or Postal Town.

  - `Records.PostalCode` (string)
    ZIP Code. Most countries have some form of a postal code system.

  - `Records.RecordID` (string)
    The number of the record. Always 1 for a single request, otherwise it serves as an index of the array of records.

  - `Records.Results` (string)
    Comma delimited status, error codes, and change codes for the record.

  - `Records.State` (string)
    The state name.

  - `Records.SubAdministrativeArea` (string)
    County. This is a logical area that that is smaller than the administrative area but larger than a locality. While many countries can have a sub-administrative area value, it is very rarely used as part of an official address.

  - `Records.SubNationalArea` (string)
    The standardized arbitrary administrative region below that of the sovereign state. A sub-national area is a logical area unit that is larger than an administrative area but smaller than the country itself. It is extremely rarely used.

  - `Records.SubPremises` (string)
    Suite, Apartment. A subpremise are individual units with their own addresses inside a building.

## Response 400 fields (application/json):

  - `type` (string)
    The type of error that occurred.

  - `title` (string)
    A short summary of the error.

  - `status` (integer)
    The HTTP status code for the error.

  - `errors` (object)

  - `errors.$.<PropertyName>` (array)
    A detailed message about the error.

  - `traceId` (string)
    A unique identifier for the request, useful for debugging.


