Dealers Search

Search through MarketCheck's heavy equipment dealer directory from the US using various criteria like location, dealer type, and inventory characteristics
Limited Support Warning: Heavy Equipment APIs is maintained less frequently than our primary cars dataset, with reduced priority and support. Data quality, coverage, and feature updates may be less comprehensive and occur less often than in our core automotive offerings.

The Dealers Search API allows you to find heavy equipment dealers in the US based on various criteria such as geographic location, dealer type, and inventory characteristics. This API is useful for locating heavy equipment dealers near a specific area or filtering by business attributes.

Overview

  • MarketCheck's dealer directories from the US are accessible
  • These are the dealers whose heavy equipment inventory is monitored by MarketCheck
  • Only active dealers are made available and included in the search results

Base Path

GET https://api.marketcheck.com/v2/dealers/heavy-equipment

The following example demonstrates a basic request to the Heavy Equipment Dealers Search API:

request.js
import axios from 'axios';

const options = {
method: 'GET',
url: 'https://api.marketcheck.com/v2/dealers/heavy-equipment',
params: {api_key: 'YOUR_API_KEY', rows: 2},
headers: {Accept: 'application/json'}
};

try {
const { data } = await axios.request(options);
console.log(data);
} catch (error) {
console.error(error);
}

Request

The Dealers Search API provides extensive filtering and search capabilities for dealer directory information. You can search by geographic location, dealer type, inventory characteristics, and numerous other criteria to find dealers that match your requirements.

Parameters

Available parameters for filtering, sorting, and configuring search results:

18 Params
api_key
string required

Your MarketCheck API authentication key. Required for every request, unless OAuth is used.

city
string

Filters listings by city name (e.g. Los Angeles, San Francisco, Houston).

created_at_days
string

Filters dealerships by age in days since creation. Specify as min-max days. Alternative of created_at_range.

created_at_range
string

Filters dealerships by creation date. Specify as YYYYMMDD-YYYYMMDD. Alternative of created_at_days.

dealer_type
string

Filters dealers by type. Allowed values — franchise, independent.

facets
string

Field name to return bucket facets for. Accepts multiple fields as a comma-separated list.

inventory_url
string

Filters dealerships with their domain (e.g., carmax.com).

latitude
float

Latitude component of the search location (decimal degrees). Used for geospatial queries along with longitude and radius parameters.

listing_count_range
string

Filters dealerships by the count of active listings. Specify as min-max.

longitude
float

Longitude component of the search location (decimal degrees). Used for geospatial queries along with latitude and radius parameters.

radius
integer

Search radius around the specified location in miles. Used with zip or latitude and longitude for geospatial queries.

range_facets
string

Comma-separated list of numeric field names for which to return range facets in the response.

rows
integer

Number of results to return per request. Default — 10. Maximum — 50.

sort_by
string

Field to sort results by. If omitted, defaults to distance when a location filter is used.

sort_order
string

Specifies result sort order. Allowed values — asc or desc. Default — asc.

start
integer

Pagination offset (0-based). Default — 0. Maximum page is limited to 10,000/rows.

state
string

Filters listings by US or Canadian state/province code (e.g., CA, NY, ON). Accepts multiple codes separated by commas.

zip
string

Filters listings within the specified 5-digit ZIP code.

Pagination

Use start and rows parameters to iterate through search results efficiently.

The pagination parameters, interface and limits are similar to the Inventory Search API pagination, refer to that section for more details.

Sorting

The sort_by and sort_order parameters allow you to control the order of results. The interface of these parameters is similar to the Inventory Search API sorting, refer to that section for more details.

Default Sorting:

  • Results are sorted on dealer_id in ascending order by default.

Sorting Options:

Following are the fields you can sort by:

Field Namesort_byData TypeDefault OrderDescription
DistancedistNumericascApplied by default for geo spatial requests
IDidStringascUnique dealer identifier
Listing Countlisting_countNumericdescNumber of heavy equipment listings at the dealer
Created Atcreated_at_daysDatedescDate when the dealer was created
Created At Rangecreated_at_rangeDate RangedescDate range when the dealer was created

Facets

Similar to the Inventory Search API, this API also supports facets for aggregating results based on specific fields. Use facets to get unique value counts for categorical fields and range-based counts for numeric fields.

Field Facets

Field facets return unique terms and their counts for categorical data. For example, you can get counts of dealers by state or dealer type.

The interface and usage of facets is similar to the Inventory Search API facets, refer to that section for more details.

Available Field Facets:

Field Namefacet_nameDescription
CitycityUnique cities where dealers are located
StatestateUnique states where dealers are located

Range Facets

Range facets help create buckets for numeric fields.

The interface and usage of range facets is similar to the Inventory Search API range facets, refer to that section for more details.

Available Range Facets:

Field Namefacet_nameDescription
Listing Countlisting_countBuckets for number of heavy equipment listings at the dealer

Response

The Heavy Equipment Dealers Search API returns dealer information in JSON format with pagination metadata for multiple results.

Schema

interface DealersResponse {
  num_found: number; // Total number of dealers matching search criteria
  dealers: Dealer[]; // Array of dealer objects
}

interface Dealer {
  id: string; // Unique dealer identifier in MarketCheck system
  seller_name: string; // Display name of the dealer
  inventory_url: string; // URL to dealer's inventory page
  data_source: string; // Source system identifier
  status: string; // Current status of the dealer (active, inactive)
  listing_count: number; // Number of heavy equipment currently listed by dealer
  dealer_type: string; // Type classification (franchise, independent)
  street: string; // Street address of the dealer
  city: string; // City where dealer is located
  state: string; // State or province abbreviation
  country: string; // Country code (US)
  zip: string; // ZIP code
  latitude: string; // Geographic latitude coordinate
  longitude: string; // Geographic longitude coordinate
  seller_phone: string; // Primary phone number
  seller_email?: string; // Email address if available
  created_at: string; // Timestamp when dealer record was created
}

Success Response

  • 200 OK - Returns a JSON object containing dealer search results and pagination information

Error Response

Status CodeDescriptionCommon Causes
400Bad RequestInvalid parameter values
401UnauthorizedMissing/invalid API key
403ForbiddenAccess denied to resource
422Unprocessable EntityPagination limit exceeded
429Too Many RequestsRate limit exceeded
500Internal Server ErrorTemporary server issues
502Bad GatewayIssues with upstream services
503Service UnavailableAPI maintenance or downtime

Use Cases & Examples

Search Dealers Near a Location

Using spatial search with latitude and longitude coordinates you can find dealers within a specified radius. Either latitude and longitude or zip code can be used as the center point for the search.

Example:

Here in this example, we are searching for dealers within a 100-mile radius of a specific latitude and longitude.

request.js
import axios from 'axios';

const options = {
method: 'GET',
url: 'https://api.marketcheck.com/v2/dealers/heavy-equipment',
params: {
api_key: 'YOUR_API_KEY',
latitude: '27.72844',
longitude: '-97.414846',
radius: '100',
rows: 2
},
headers: {Accept: 'application/json'}
};

try {
const { data } = await axios.request(options);
console.log(data);
} catch (error) {
console.error(error);
}

Find Dealers Carrying Inventory Above a Certain Count

You can filter heavy equipment dealers based on the number of listings they have using listing_count_range parameter. This is useful for finding larger dealers with more heavy equipment inventory or smaller dealers with specialized offerings.

Example:

Here we are searching for heavy equipment dealers with inventory counts between 10 and 100. Sorting based on listing count in descending order.

request.js
import axios from 'axios';

const options = {
method: 'GET',
url: 'https://api.marketcheck.com/v2/dealers/heavy-equipment',
params: {
api_key: 'YOUR_API_KEY',
listing_count_range: '10-100',
sort_by: 'listing_count',
sort_order: 'desc',
rows: 2
},
headers: {Accept: 'application/json'}
};

try {
const { data } = await axios.request(options);
console.log(data);
} catch (error) {
console.error(error);
}

Check If a Dealer Exists Using Inventory URL

You can verify if a heavy equipment dealer exists with MarketCheck by using the inventory_url parameter. This is useful for validating dealer information or checking if a specific dealer is monitored by MarketCheck.

Example:

Here we are searching for a heavy equipment dealer by their inventory URL.

request.js
import axios from 'axios';

const options = {
method: 'GET',
url: 'https://api.marketcheck.com/v2/dealers/heavy-equipment',
params: {api_key: 'YOUR_API_KEY', inventory_url: 'laufequipment.com'},
headers: {Accept: 'application/json'}
};

try {
const { data } = await axios.request(options);
console.log(data);
} catch (error) {
console.error(error);
}

Find Low Volume Independent Dealers

Using dealer_type parameter, you can filter dealers by their type, such as franchise or independent. This is useful for finding specific types of heavy equipment dealers based on your business needs.

Example:

Here we are searching for low volume independent heavy equipment dealers that carry less than 20 units in inventory.

request.js
import axios from 'axios';

const options = {
method: 'GET',
url: 'https://api.marketcheck.com/v2/dealers/heavy-equipment',
params: {
api_key: 'YOUR_API_KEY',
dealer_type: 'independent',
listing_count_range: '1-20',
rows: 2
},
headers: {Accept: 'application/json'}
};

try {
const { data } = await axios.request(options);
console.log(data);
} catch (error) {
console.error(error);
}

See Also