Vehicles

Search published US or Canadian inventory

Choose one country (US by default). US supports a matching ZIP or coordinates; Canada supports a postal code/FSA or region/place but not raw coordinates until authoritative province containment is available. Quebec is unavailable. Do not combine origin forms.

get/v1/vehicles

Request

  • Base URL: https://api.carhandshake.com
  • URL: https://api.carhandshake.com/v1/vehicles
  • Auth: none required

Query parameters

One URL-encoded JSON array. For large filters use POST /v1/vehicles/search.

One URL-encoded JSON array. For large filters use POST /v1/vehicles/search.

One URL-encoded JSON array. For large filters use POST /v1/vehicles/search.

One URL-encoded JSON array. For large filters use POST /v1/vehicles/search.

sstring

Committed SearchSpec v2 encoded as v2.<base64url of canonical JSON>, with at most 2 KiB decoded JSON and a 4 KiB complete URL. Contains typed catalog values and coarse location only. Do not combine with query text, legacy filters, location, or sort; update the specification instead. A supplied country must match its market. Cursor, offset, limit, facets and map viewport controls remain transport parameters.

qstring
country'US' | 'CA'
region_codestring

US state or Canadian code AB, BC, MB, NB, NL, NS, NT, NU, ON, PE, SK, or YT. QC is unavailable.

zipstring

Resolvable US ZIP/ZIP+4 or Canadian postal code/FSA matching country; mutually exclusive with latitude/longitude.

latitudenumber

US-only raw search origin; requires longitude and cannot accompany zip. For CA use a postal code/FSA or region.

longitudenumber

US-only raw search origin; requires latitude and cannot accompany zip. For CA use a postal code/FSA or region.

number
OR
'any'

Inclusive radius from 1 to 500 miles for US or kilometres for CA (wire name retained), or the literal 'any' for no distance cap; requires a postal or coordinate origin. Defaults to 50.

nationwideboolean
northnumber

Northern latitude of a map viewport. Requires south, east, and west.

southnumber

Southern latitude of a map viewport.

eastnumber

Eastern longitude. A value lower than west explicitly crosses the antimeridian.

westnumber

Western longitude of a map viewport.

map_clustersboolean

Return bounded map clusters. Requires a viewport and map_zoom.

map_zoominteger

Web map zoom used for geotile clustering.

vehicle_typestring[]

Repeatable; comma-separated values are also accepted.

makestring[]

Repeatable; comma-separated values are also accepted.

modelstring[]

Repeatable; comma-separated values are also accepted.

trimstring[]
conditionstring[]
bodystring[]
fuelstring[]
drivelinestring[]
transmissionstring[]
exterior_colorstring[]
interior_colorstring[]
featurestring[]
dealer_idstring[]
year_mininteger
year_maxinteger
price_mininteger
price_maxinteger
has_priceboolean

true returns only vehicles with an advertised price; false only those without. Omit to include both.

mileage_maxinteger

Miles for US searches; kilometres for Canadian searches.

seats_mininteger
seats_maxinteger
doors_mininteger
doors_maxinteger
city_mpg_mininteger
highway_mpg_mininteger
displacement_cc_mininteger
displacement_cc_maxinteger
electric_range_minnumber

Miles for US searches; kilometres for Canadian searches.

electric_range_maxnumber

Miles for US searches; kilometres for Canadian searches.

dc_fast_chargeboolean
charge_portstring[]

Repeatable; comma-separated values are also accepted.

delivery_availableboolean
statusstring[]
sort'relevance' | 'distance' | 'price' | 'mileage' | 'year' | 'freshness'
direction'asc' | 'desc'
cursorstring
limitinteger
offsetinteger

Deep-link pagination: skip this many results in the same sort. Cannot be combined with cursor (400). Use cursor for sequential paging, offset only where a page number must be addressable by URL.

facetstring[]

Response

Search results

facetsobject required
next_cursorstring nullable required
request_idstring required
index_timestampstring date-time required

Changes

No recorded changes to this operation across all 1 revision of this API.