We've been heads-down rebuilding the core of the Smartcar platform, and today we're announcing the next version of the Smartcar API. Version 3 comes with a new authentication model, a new set of endpoints, a revamped webhook system, and a standardized signal schema that ties it all together.
Here's a full walkthrough of everything that's new.
A new authentication model: one token, all vehicles
The biggest change in V3 is how authentication works.
In our previous version, every connected vehicle had its own access token, and you were on the hook for refreshing each one. At scale, this meant token bookkeeping across potentially thousands of vehicles.
V3 collapses that to one application-level access token, valid for an hour. To scope a request to a specific user, pass their ID in the sc-user-id header. No per-vehicle tokens. No per-vehicle refresh logic.
You can generate your API credentials from the API Credentials tab in the Smartcar Dashboard, and requests can be scoped to a specific user with the sc-user-id header.
→ API Authentication Setup — step-by-step setup and code examples
→ Auth Overview — how it works, key concepts, and security model
New V3 API endpoints
V3 introduces a new set of endpoints across connections, webhooks, vehicle data, and commands. Here's the full picture:
Connection management
Webhook management
Webhook payloads in V3 now include user.id, making it straightforward to route events at the user level, not just the vehicle level.
Vehicle commands
V3 standardizes vehicle commands into a unified request format. The full command set:
All commands follow the same request shape, regardless of OEM.
One signal schema across OEMs
All V3 endpoints use the standardized signal schema introduced last year. One shape for every signal, across every make Smartcar supports.
In practice, this means you write your integration once and it works across your entire vehicle fleet, regardless of manufacturer. No make-specific branches. No OEM-specific handling.
Webhooks: the recommended way to receive data
The V3 Vehicles API is designed for exploration and on-demand queries. Checking a vehicle's current state, issuing a command, testing a signal for the first time, or filling in a missed webhook delivery. For continuous data, webhooks are the right tool.
Subscribe a vehicle to a webhook and Smartcar streams signals to your endpoint as often as the OEM permits. You pick the signals. Smartcar handles delivery, retries (with exponential backoff), and token management. Webhook payloads now include user.id for cleaner user-level routing.
Compatibility, down to the signal
The new Compatibility API and Compatibility Matrix let you check whether a specific vehicle supports a specific signal. Compatibility data is derived from real platform traffic, meaning the matrix reflects actual successful data retrievals and commands across vehicles on the platform. Not theoretical support. Actual behavior.
This is useful at every layer of your product: filtering out ineligible vehicles before onboarding, surfacing feature availability to users, and scoping what your integration requests at all.
Revamped documentation
Every guide has been rewritten around the V3 workflow: check compatibility → authenticate → connect vehicles → receive data. Whether you're starting fresh or migrating from V2, the guides now reflect how the platform actually works.
→ Guides
What this means for your integration
If you're on V2: nothing breaks. Per-vehicle tokens continue to work alongside the new application-level token while you migrate. V2 will be deprecated in Q4 2026, so we recommend planning your migration when ready. The Migration Guide walks through it step by step.
If you're getting started: go straight to V3. You'll be authenticating and receiving vehicle data within minutes.
Questions? Email us at support@smartcar.com or reach out to your account contact.


.jpg)
