POST api/Locator/Search

This method is the primary entry point for the dealer locator. All requests to the locator should go through this single api method.

Request Information

URI Parameters

None.

Body Parameters

LocatorRequest
NameDescriptionTypeAdditional information
Zip

5 Character US zip code or a 7 Character Canadian Postal code. Required for all US/CA searches. (international not supported).

string

None.

Country

2 Character country code. Required.

string

None.

BrandFilter

Comma-delimited list of brand codes to include in the search. Required. (Fireplaces BU: HNG,HTL,MAJ,MON,SFE,STL Stoves BU: QDF,HAR,VMT,FFE )

string

None.

DealerType

Consumer or Professional. Required. Aligns with ADP/IDP Eligibility. Required.

string

None.

RuleSet

Rules engine to use for search: locator, lead or custom. Required.

string

None.

FiresideOnly

Restrict search to owned Fireside locations only.

boolean

None.

PrimarySort

How to present dealer results: award, distance. Optional. Defaults to 'award'. Not applicable to lead searches.

string

None.

Exclusions

Delimited list of dealer ID's to exclude from search results. Optional. (used for lead reassignment)

string

None.

CustomRadiantType

radius or nearest (search radius or number of dealers). Will only be evaluated for RuleSet:Custom searches. Internal use for custom searches.

string

None.

CustomRadiantValue

Enter number for either radius miles or number of dealers depending on selected CustomRadiantType. Will only be evaluated for RuleSet:Custom searches.Internal use for custom searches.

integer

None.

Request Formats

application/json, text/json

Sample:
{
  "Zip": "sample string 1",
  "Country": "sample string 2",
  "BrandFilter": "sample string 3",
  "DealerType": "sample string 4",
  "RuleSet": "sample string 5",
  "FiresideOnly": true,
  "PrimarySort": "sample string 7",
  "Exclusions": "sample string 8",
  "CustomRadiantType": "sample string 9",
  "CustomRadiantValue": 10
}

application/xml, text/xml

Sample:
<LocatorRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/data.hearthnhome.Models.Syndication.Request">
  <BrandFilter>sample string 3</BrandFilter>
  <Country>sample string 2</Country>
  <CustomRadiantType>sample string 9</CustomRadiantType>
  <CustomRadiantValue>10</CustomRadiantValue>
  <DealerType>sample string 4</DealerType>
  <Exclusions>sample string 8</Exclusions>
  <FiresideOnly>true</FiresideOnly>
  <PrimarySort>sample string 7</PrimarySort>
  <RuleSet>sample string 5</RuleSet>
  <Zip>sample string 1</Zip>
</LocatorRequest>

application/x-www-form-urlencoded

Sample:

Failed to generate the sample for media type 'application/x-www-form-urlencoded'. Cannot use formatter 'JQueryMvcFormUrlEncodedFormatter' to write type 'LocatorRequest'.

Response Information

Resource Description

LocatorSearchResponse
NameDescriptionTypeAdditional information
Success

boolean

None.

Count

integer

None.

Lat

string

None.

Lon

string

None.

Dealers

Collection of LocatorDealerResponse

None.

ProcessLog

Collection of string

None.

ValidationErrors

Collection of string

None.

RawRequest

LocatorRequest

None.

ExceptionMessage

string

None.

Response Formats

application/json, text/json

Sample:
{
  "Success": true,
  "Count": 2,
  "Lat": "sample string 3",
  "Lon": "sample string 4",
  "Dealers": [
    {
      "DealerID": "sample string 1",
      "Name": "sample string 2",
      "Address1": "sample string 3",
      "Address2": "sample string 4",
      "City": "sample string 5",
      "State": "sample string 6",
      "StateName": "sample string 7",
      "Zip": "sample string 8",
      "Country": "sample string 9",
      "CountryName": "sample string 10",
      "Website": "sample string 11",
      "Phone": "sample string 12",
      "Latitude": "sample string 13",
      "Longitude": "sample string 14",
      "Distance": "sample string 15",
      "AwardADPBest": 16,
      "AwardIDPBest": 17,
      "LeadEmailAddresses": "sample string 18",
      "TotalDisplays": 19,
      "TotalSiteDisplays": 20,
      "ReceivesLeadsForSearch": true,
      "Brands": [
        {
          "BrandName": "sample string 1",
          "Code": "sample string 2",
          "ADPLevel": "sample string 3",
          "IDPLevel": "sample string 4",
          "Displays": 5,
          "ReceivesLeadsForBrand": true
        },
        {
          "BrandName": "sample string 1",
          "Code": "sample string 2",
          "ADPLevel": "sample string 3",
          "IDPLevel": "sample string 4",
          "Displays": 5,
          "ReceivesLeadsForBrand": true
        }
      ]
    },
    {
      "DealerID": "sample string 1",
      "Name": "sample string 2",
      "Address1": "sample string 3",
      "Address2": "sample string 4",
      "City": "sample string 5",
      "State": "sample string 6",
      "StateName": "sample string 7",
      "Zip": "sample string 8",
      "Country": "sample string 9",
      "CountryName": "sample string 10",
      "Website": "sample string 11",
      "Phone": "sample string 12",
      "Latitude": "sample string 13",
      "Longitude": "sample string 14",
      "Distance": "sample string 15",
      "AwardADPBest": 16,
      "AwardIDPBest": 17,
      "LeadEmailAddresses": "sample string 18",
      "TotalDisplays": 19,
      "TotalSiteDisplays": 20,
      "ReceivesLeadsForSearch": true,
      "Brands": [
        {
          "BrandName": "sample string 1",
          "Code": "sample string 2",
          "ADPLevel": "sample string 3",
          "IDPLevel": "sample string 4",
          "Displays": 5,
          "ReceivesLeadsForBrand": true
        },
        {
          "BrandName": "sample string 1",
          "Code": "sample string 2",
          "ADPLevel": "sample string 3",
          "IDPLevel": "sample string 4",
          "Displays": 5,
          "ReceivesLeadsForBrand": true
        }
      ]
    }
  ],
  "ProcessLog": [
    "sample string 1",
    "sample string 2"
  ],
  "ValidationErrors": [
    "sample string 1",
    "sample string 2"
  ],
  "RawRequest": {
    "Zip": "sample string 1",
    "Country": "sample string 2",
    "BrandFilter": "sample string 3",
    "DealerType": "sample string 4",
    "RuleSet": "sample string 5",
    "FiresideOnly": true,
    "PrimarySort": "sample string 7",
    "Exclusions": "sample string 8",
    "CustomRadiantType": "sample string 9",
    "CustomRadiantValue": 10
  },
  "ExceptionMessage": "sample string 5"
}

application/xml, text/xml

Sample:
<Results xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/data.hearthnhome.Models.Locator.Responses">
  <Count>2</Count>
  <Dealers>
    <Dealer>
      <Address1>sample string 3</Address1>
      <Address2>sample string 4</Address2>
      <AwardADPBest>16</AwardADPBest>
      <AwardIDPBest>17</AwardIDPBest>
      <Brands>
        <Brand>
          <ADPLevel>sample string 3</ADPLevel>
          <BrandName>sample string 1</BrandName>
          <Code>sample string 2</Code>
          <Displays>5</Displays>
          <IDPLevel>sample string 4</IDPLevel>
          <ReceivesLeadsForBrand>true</ReceivesLeadsForBrand>
        </Brand>
        <Brand>
          <ADPLevel>sample string 3</ADPLevel>
          <BrandName>sample string 1</BrandName>
          <Code>sample string 2</Code>
          <Displays>5</Displays>
          <IDPLevel>sample string 4</IDPLevel>
          <ReceivesLeadsForBrand>true</ReceivesLeadsForBrand>
        </Brand>
      </Brands>
      <City>sample string 5</City>
      <Country>sample string 9</Country>
      <CountryName>sample string 10</CountryName>
      <DealerID>sample string 1</DealerID>
      <Distance>sample string 15</Distance>
      <Latitude>sample string 13</Latitude>
      <LeadEmailAddresses>sample string 18</LeadEmailAddresses>
      <Longitude>sample string 14</Longitude>
      <Name>sample string 2</Name>
      <Phone>sample string 12</Phone>
      <ReceivesLeadsForSearch>true</ReceivesLeadsForSearch>
      <State>sample string 6</State>
      <StateName>sample string 7</StateName>
      <TotalDisplays>19</TotalDisplays>
      <TotalSiteDisplays>20</TotalSiteDisplays>
      <Website>sample string 11</Website>
      <Zip>sample string 8</Zip>
    </Dealer>
    <Dealer>
      <Address1>sample string 3</Address1>
      <Address2>sample string 4</Address2>
      <AwardADPBest>16</AwardADPBest>
      <AwardIDPBest>17</AwardIDPBest>
      <Brands>
        <Brand>
          <ADPLevel>sample string 3</ADPLevel>
          <BrandName>sample string 1</BrandName>
          <Code>sample string 2</Code>
          <Displays>5</Displays>
          <IDPLevel>sample string 4</IDPLevel>
          <ReceivesLeadsForBrand>true</ReceivesLeadsForBrand>
        </Brand>
        <Brand>
          <ADPLevel>sample string 3</ADPLevel>
          <BrandName>sample string 1</BrandName>
          <Code>sample string 2</Code>
          <Displays>5</Displays>
          <IDPLevel>sample string 4</IDPLevel>
          <ReceivesLeadsForBrand>true</ReceivesLeadsForBrand>
        </Brand>
      </Brands>
      <City>sample string 5</City>
      <Country>sample string 9</Country>
      <CountryName>sample string 10</CountryName>
      <DealerID>sample string 1</DealerID>
      <Distance>sample string 15</Distance>
      <Latitude>sample string 13</Latitude>
      <LeadEmailAddresses>sample string 18</LeadEmailAddresses>
      <Longitude>sample string 14</Longitude>
      <Name>sample string 2</Name>
      <Phone>sample string 12</Phone>
      <ReceivesLeadsForSearch>true</ReceivesLeadsForSearch>
      <State>sample string 6</State>
      <StateName>sample string 7</StateName>
      <TotalDisplays>19</TotalDisplays>
      <TotalSiteDisplays>20</TotalSiteDisplays>
      <Website>sample string 11</Website>
      <Zip>sample string 8</Zip>
    </Dealer>
  </Dealers>
  <ExceptionMessage>sample string 5</ExceptionMessage>
  <Lat>sample string 3</Lat>
  <Lon>sample string 4</Lon>
  <ProcessLog xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:string>sample string 1</d2p1:string>
    <d2p1:string>sample string 2</d2p1:string>
  </ProcessLog>
  <RawRequest xmlns:d2p1="http://schemas.datacontract.org/2004/07/data.hearthnhome.Models.Syndication.Request">
    <d2p1:BrandFilter>sample string 3</d2p1:BrandFilter>
    <d2p1:Country>sample string 2</d2p1:Country>
    <d2p1:CustomRadiantType>sample string 9</d2p1:CustomRadiantType>
    <d2p1:CustomRadiantValue>10</d2p1:CustomRadiantValue>
    <d2p1:DealerType>sample string 4</d2p1:DealerType>
    <d2p1:Exclusions>sample string 8</d2p1:Exclusions>
    <d2p1:FiresideOnly>true</d2p1:FiresideOnly>
    <d2p1:PrimarySort>sample string 7</d2p1:PrimarySort>
    <d2p1:RuleSet>sample string 5</d2p1:RuleSet>
    <d2p1:Zip>sample string 1</d2p1:Zip>
  </RawRequest>
  <Success>true</Success>
  <ValidationErrors xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:string>sample string 1</d2p1:string>
    <d2p1:string>sample string 2</d2p1:string>
  </ValidationErrors>
</Results>