Tesla APItesla.com ↗
Access Tesla vehicle listings, detailed pricing by model, current financing offers, and energy product data from tesla.com via a single structured API.
What is the Tesla API?
The Tesla.com API covers 4 endpoints that expose vehicle listings, model-level pricing with loan and lease breakdowns, active financing offers, and energy products. The get_vehicle_pricing endpoint returns cash prices, APR rates, and lease payment details grouped by model code (ct, m3, ms, mx, my) for supported markets. This makes it straightforward to build pricing trackers, comparison tools, or purchase-readiness apps against live Tesla catalog data.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/745589ec-5ba6-44d6-bb7f-ffe5bb500c80/get_all_vehicles' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace tesla-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.tesla.com_api import Tesla, Product, VehicleVariant, Offer, EnergyProduct, Market
tesla = Tesla()
# Get vehicle pricing by market using the Market enum
pricing_data = tesla.vehiclevariants.by_market(market=Market.US)
# List all Tesla products from the megamenu
for product in tesla.products.list():
print(product.name, product.category, product.url)
# List current offers with financing details
for offer in tesla.offers.list():
print(offer.model, offer.trim_name, offer.price, offer.federal_incentives)
if offer.loan_offer:
print(offer.loan_offer.interest_rate, offer.loan_offer.monthly_payment, offer.loan_offer.term)
if offer.lease_offer:
print(offer.lease_offer.monthly_payment, offer.lease_offer.term, offer.lease_offer.annual_mileage)
# List energy products
for ep in tesla.energyproducts.list():
print(ep.name, ep.url, ep.order_url, ep.category)
Returns all Tesla products from the megamenu navigation, spanning vehicles, energy, charging, and shop categories. Each product includes its name, relative URL path, category grouping, and thumbnail image URL. The full catalog is returned in a single page.
No input parameters required.
{
"type": "object",
"fields": {
"vehicles": "array of product objects with name, url, category, and image"
},
"sample": {
"data": {
"vehicles": [
{
"url": "/models",
"name": "Model S",
"image": "https://digitalassets.tesla.com/tesla-contents/image/upload/f_auto,q_auto,w_220,c_scale/dpr_2.0/Mega-Menu-Vehicles-Model-S-New-NA-TW-KR.png",
"category": "Vehicles"
},
{
"url": "/model3",
"name": "Model 3",
"image": "https://digitalassets.tesla.com/tesla-contents/image/upload/f_auto,q_auto,w_220,c_scale/dpr_2.0/Mega-Menu-Vehicles-Model-3-Performance-LHD.png",
"category": "Vehicles"
}
]
},
"status": "success"
}
}About the Tesla API
Vehicle Catalog and Energy Products
The get_all_vehicles endpoint returns every product Tesla surfaces in its main navigation, including vehicles, energy products, charging equipment, and shop items. Each object includes name, url, category, and image. The get_energy_products endpoint narrows this to Solar Panels, Solar Roof, Powerwall, and Megapack, adding both a general url and an order_url for each product — useful when you need direct deep-links to purchase pages.
Pricing Data by Model and Market
get_vehicle_pricing accepts optional market and region parameters. Verified market values are US and CA. The response is keyed first by market, then by model code — ct (Cybertruck), m3 (Model 3), ms (Model S), mx (Model X), my (Model Y) — and each model contains an array of variant objects covering cash_price, loan_options (APR and term lengths), and lease options. The region parameter can surface regional incentive adjustments within a market.
Current Offers and Incentives
get_current_offers is US-only and returns a flattened list of active Tesla financing and lease promotions. Each offer object includes model, variant, trim_name, price, federal_incentives, regional_incentives, loan_offer (best available APR), and lease_offer (lowest monthly payment). This endpoint is well-suited for monitoring promotional changes over time or building alerts when rates shift.
Coverage Scope
All four endpoints reflect publicly available Tesla catalog and pricing data. The API does not require any account credentials and does not expose order status, delivery timelines, or inventory by location. Pricing coverage is confirmed for the US and CA markets; other regions may return partial or no data from get_vehicle_pricing.
The Tesla API is a managed, monitored endpoint for tesla.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when tesla.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official tesla.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Track Tesla Model 3 and Model Y cash prices and APR changes over time using
get_vehicle_pricing. - Build a side-by-side financing calculator comparing loan vs. lease options across all Tesla models.
- Monitor
get_current_offersto alert users when federal or regional incentives are updated. - Aggregate Tesla energy product order URLs for a home energy comparison site using
get_energy_products. - Populate a Tesla product directory with names, categories, and images from
get_all_vehicles. - Compare US vs. CA pricing for Cybertruck and Model S using the
marketparameter. - Feed a deal-tracking newsletter with the lowest available lease payments from
get_current_offers.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Tesla have an official public developer API?+
What does `get_current_offers` return and how is it different from `get_vehicle_pricing`?+
get_current_offers is US-only and returns a flattened list of active promotional offers including loan_offer (best APR) and lease_offer (lowest monthly payment) per variant, alongside federal_incentives and regional_incentives. get_vehicle_pricing is broader — it accepts a market parameter (US or CA) and returns full variant arrays with multiple loan term options and cash prices, but does not break out incentives separately.Does the API cover Tesla inventory by location or real-time delivery estimates?+
Which markets are supported by `get_vehicle_pricing`?+
market parameter. Other market codes may return partial or empty data. The region parameter can refine results within a market for regional incentive data, but coverage outside the US and Canada is not guaranteed.