CarsXE Images API
Vehicle imagery search — 1 operation (getVehicleImages) returning photo links, thumbnails, sources and dimensions filtered by make, model, year, trim, colour, angle, photo type and transparent-background option.
Vehicle imagery search — 1 operation (getVehicleImages) returning photo links, thumbnails, sources and dimensions filtered by make, model, year, trim, colour, angle, photo type and transparent-background option.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/carsxe-images-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.1.0
info:
title: CarsXE Images API
description: 'CarsXE is a B2B vehicle data API by PiWaves, LLC. It provides vehicle
specifications (VIN decoding), market values, vehicle history, recalls,
license plate decoding, vehicle images, plate/VIN image recognition,
Year Make Model data and OBD code decoding.
## Authentication
Most requests use a CarsXE API key in the `key` query parameter, e.g.
`https://api.carsxe.com/specs?key=YOUR_API_KEY&vin=...`. Supported endpoints
also accept x402 payment without a CarsXE key. Recalls Batch x402 follow-up
requests use the scoped `X-CarsXE-Batch-Token` returned at submission.
## Caching
Many endpoints cache upstream results. A cached response may include the
message "The response is from the cache".
'
version: 1.0.0
contact:
name: CarsXE
url: https://api.carsxe.com
servers:
- url: https://api.carsxe.com
security:
- ApiKeyQuery: []
tags:
- name: Images
description: Vehicle images by make/model
paths:
/images:
get:
operationId: getVehicleImages
security:
- ApiKeyQuery: []
- X402Payment: []
- {}
tags:
- Images
summary: Vehicle Images
description: Retrieve images of a vehicle by make, model and other filters.
parameters:
- name: make
in: query
required: true
schema:
type: string
description: The vehicle make.
- name: model
in: query
required: true
schema:
type: string
description: The vehicle model.
- name: year
in: query
required: false
schema:
type: string
description: The vehicle year.
- name: trim
in: query
required: false
schema:
type: string
description: The vehicle trim.
- name: color
in: query
required: false
schema:
type: string
description: The vehicle color.
- name: transparent
in: query
required: false
schema:
type: boolean
description: Prioritize images with transparent background. Defaults to `true`.
- name: angle
in: query
required: false
schema:
type: string
enum:
- front
- side
- back
description: The angle to show the car in.
- name: photoType
in: query
required: false
schema:
type: string
enum:
- interior
- exterior
- engine
description: Request images of the interior, exterior or engine. Can only be used in conjunction
with year, make, model and trim query params.
- name: size
in: query
required: false
schema:
type: string
enum:
- Small
- Medium
- Large
- Wallpaper
- All
description: Request images of a given size. Defaults to all sizes.
- name: license
in: query
required: false
schema:
type: string
enum:
- Public
- Share
- ShareCommercially
- Modify
- ModifyCommercially
description: Filter images by license type. Leave blank to return all images.
- $ref: '#/components/parameters/format'
responses:
'200':
description: Images retrieved.
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
error:
type: string
images:
type: array
items:
type: object
properties:
mime:
type: string
link:
type: string
contextLink:
type: string
height:
type: integer
width:
type: integer
byteSize:
type: integer
thumbnailLink:
type: string
accentColor:
type: string
additionalProperties: true
query:
type: object
additionalProperties: true
additionalProperties: true
example:
success: true
images:
- mime: image/png
link: https://bit.ly/34tpueu
contextLink: https://www.mariettatoyota.com/toyota-tacoma/
height: 272
width: 1000
byteSize: 56662
thumbnailLink: https://bit.ly/34xewVr
accentColor: B51617
query:
year: '2018'
make: toyota
model: tacoma
color: blue
format: json
'401':
$ref: '#/components/responses/Unauthorized'
'404':
description: No images found for this query.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
success: false
message: No images found
'429':
$ref: '#/components/responses/UsageLimitExceeded'
'500':
description: Missing make/model, or the image search failed.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
missingMakeModel:
value:
success: false
message: Please supply a make and model. Visit https://carsxe.com/docs for more information
cannotAccessInternet:
value:
success: false
message: Cannot access the internet at this time
components:
parameters:
format:
name: format
in: query
required: false
schema:
type: string
enum:
- json
- xml
default: json
description: The format of the response. One of `json` or `xml`.
responses:
Unauthorized:
description: Missing API key, unknown/disabled API key, or inactive account.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
missingKey:
value:
success: false
message: Missing API key
userNotFound:
value:
success: false
message: User with this API key was not found or the API key is disabled
userNotActive:
value:
success: false
message: User with this API key is not active. To activate update your billing on https://carsxe.com/dashboard/billing
UsageLimitExceeded:
description: API usage limit exceeded for the current billing period.
content:
application/json:
schema:
$ref: '#/components/schemas/UsageLimitError'
example:
success: false
message: API usage limit exceeded
usage:
current: 1000
limit: 1000
remaining: 0
schemas:
Error:
type: object
properties:
success:
type: boolean
const: false
message:
type: string
required:
- success
- message
additionalProperties: true
UsageLimitError:
allOf:
- $ref: '#/components/schemas/Error'
- type: object
properties:
usage:
type: object
properties:
current:
type: number
description: Current usage in the billing period.
limit:
type: number
description: Included quota for the billing period.
remaining:
type: number
description: Remaining included quota.
securitySchemes:
ApiKeyQuery:
type: apiKey
in: query
name: key
description: Your CarsXE API key, passed as the `key` query parameter.
X402Payment:
type: apiKey
in: header
name: PAYMENT-SIGNATURE
description: x402 payment proof for supported operations. Start without a CarsXE key to receive
HTTP 402 payment requirements, then retry the identical request with the payment header produced
by your x402 client. CarsXE also accepts the legacy X-PAYMENT header.