Configuration

A single configuration describes what the engine should do — country, processing options, and output fields. It's expressed as JSON or XML, and the same structure applies across all languages.

Configuration structure

Everything the engine needs is described under a root Address_IQ_Configuration object. A handful of top-level settings control global behavior, and nested option groups configure each area of processing (CASS, Canada, NCOA, geocoding, and DSF2). The structure is identical in JSON and XML — pick whichever your application prefers with the Data_Format setting.

Tip: Always start from a shipped configuration example and adapt it. The examples are kept in step with the current release, including the Configuration_Version identifier that the engine expects.

Top-level settings

The most important global settings are:

SettingValuesPurpose
CountryUS, CanadaSelects the processing engine for the target country.
Data_FormatJSON, XMLThe format of records and results exchanged with the engine through API calls.
Output_CasingMixed, UpperWhether output is returned in mixed case or all uppercase.
Keyfile_FolderpathLocation of your firstlogic.key license file.
Supporting_Data_FolderpathLocation of the engine's supporting reference data.
Initial_Thread_Count / Max_ThreadsintegerResources the engine allocates for threading. You implement the threading; these size the engine's internal resources.

Option groups

Each processing area is configured under its own group. You include only the groups you need; each group also defines an Output_Fields list that selects which fields the engine returns for that area.

  • CASS_Processing_Options (US) — CASS data location, city-name preservation, dual-address handling, and the U.S. output fields.
  • Canada_Options — output language (English, French, preserve, or convert), unit description style, and dual-address handling for Canadian processing.
  • NCOA_Options — NCOALink move-update processing, including PAF, service-provider, processing, and data-caching options.
  • Geocoding_Options — geocoding mode (centroid, address, best, or all), whether to geocode the input and/or move address, and geo output fields.
  • DSF2_Options — DSF2 output selection and data caching.
Important: The exact set of settings and output fields within each group changes from release to release as USPS and Canada Post requirements evolve. Treat the examples and language documentation in your installation as the authoritative reference, and avoid hard-coding field lists you don't actively use.

Example

A trimmed U.S. configuration in JSON. Real configurations list explicit output fields and additional options; this shows the overall shape:

Abbreviated US configuration
{
  "Address_IQ_Configuration": {
    "Configuration_Version": "...",
    "Keyfile_Folder": "/opt/AddressIQ",
    "Supporting_Data_Folder": "/opt/AddressIQ/data",
    "Data_Format": "JSON",
    "Country": "US",
    "Output_Casing": "Mixed",
    "Initial_Thread_Count": "4",
    "Max_Threads": "8",
    "CASS_Processing_Options": {
      "CASS_Data_Folder": "/opt/AddressIQ/data/cass",
      "Preserve_Place_Names": "NO",
      "Output_Fields": [ "..." ]
    },
    "Geocoding_Options": {
      "Geocoding_Mode": "Best",
      "Geo_Output": "Input_Address",
      "Output_Fields": [ "..." ]
    }
  }
}