Tesla Fleet API for shops: what it can and cannot do
The Fleet API gives an authorized application about 60 vehicle commands and a streaming telemetry channel — scoped by OAuth, gated by a virtual key the owner adds to the car, and revocable by the owner at any time.
What it does not give anyone is Service Mode, a key-card wipe, or a way for a shop to connect a car without the owner in the loop. Every honest shop-side Tesla product is built inside those three walls.
What is the Tesla Fleet API?
It is Tesla's official interface for third-party applications: an OAuth-scoped REST API of roughly 60 vehicle commands plus Fleet Telemetry, a streaming channel that pushes vehicle signals to an authorized application. A shop uses it through a vendor's application; it is not something a shop stands up on its own counter.
The published command list at developer.tesla.com includes door_lock and door_unlock, actuate_trunk, charge_port_door_open and _close, honk_horn, flash_lights, remote_start_drive, set_valet_mode, reset_valet_pin, set_sentry_mode, set_pin_to_drive, window_control, guest_mode, and trigger_homelink. It is a useful list. It is a partial list — Tesla publishes roughly sixty. What matters is that the published list is exhaustive: if a capability is not on it, no application has it.
Can a shop connect a customer's Tesla without the owner?
No. Signed vehicle commands require the owner to add the application's virtual key to the car through a tesla.com/_ak/<domain> link or QR code. Tesla describes this as requiring a trusted user-in-the-loop, preventing even Tesla's backend from accessing these capabilities. There is no path where a shop unilaterally instruments a customer's car.
Tesla’s own phrasing in the virtual-keys developer guide is worth quoting because it settles arguments: adding a key “requires a trusted user-in-the-loop, preventing even Tesla’s backend from accessing these capabilities” (developer.tesla.com). If your vendor’s demo skips this step, ask which car they were demoing on.
Which scopes does a custody use case actually need?
vehicle_device_data for vehicle state, vehicle_location for anything geofenced, vehicle_cmds for lock and unlock style commands, vehicle_charging_cmds for charging, and offline_access for refresh tokens across a multi-day visit. Applications cannot self-escalate — a wider scope requires the owner to grant again.
- vehicle_device_data — state of charge, odometer, climate, doors.
- vehicle_location — mandatory for geofences. No location grant means no lot watch, and a product should say so rather than degrade quietly.
- vehicle_cmds and vehicle_charging_cmds — command surfaces.
- offline_access — refresh tokens, which last three months.
- No self-escalation. Widening scope means the owner authorizes again (authentication overview).
Is Fleet Telemetry cheaper than polling the REST API?
Substantially. Telemetry buckets data every 500 milliseconds and pushes only when a value has changed and the interval has elapsed, instead of asking the car repeatedly. Tesla's own billing example works out to about $0.0067 per hour for telemetry against $0.12 per hour for REST polling — roughly 94% cheaper.
- Fleet Telemetry compared with REST polling
Model
Ask the car repeatedly
Car pushes when a value changes
Granularity
Whatever your poll interval is
Data bucketed every 500 ms
Tesla billing example
~$0.12 per vehicle-hour
~$0.0067 per vehicle-hour
Effect on the vehicle
Wakes the car to answer
Streams without repeated wake-ups
Concurrency
Per-application requests
Up to 5 third-party apps at once
Both figures come from Tesla’s billing and limits documentation (developer.tesla.com), alongside the Fleet Telemetry overview. The cost difference is why flat per-location pricing is even possible for a custody product — a car parked in a paint booth for two weeks generates almost no telemetry traffic, because almost nothing about it changes.
How many apps can stream from one Tesla at once?
A vehicle can stream Fleet Telemetry to five third-party applications simultaneously. In practice that means a shop's custody app does not have to displace whatever the owner already uses; both can be connected during the same visit.
What can the Fleet API never do?
It cannot enter or exit Service Mode — no such command exists in the vehicle-commands list. It cannot wipe an NFC key card. It cannot recover a scope the owner revoked, and revoking a scope automatically removes telemetry configurations that depended on it. Anything a vendor claims beyond the published command list should be treated as marketing.
On Service Mode specifically, the API is asymmetric in a way shops should understand: Fleet Telemetry streams a read-only vehicle_state.service_mode boolean (available data reference), so software can see the state but never set it. Entry is a touchscreen sequence or a cabled Toolbox 3 session — see Valet Mode vs Service Mode.
Revocation belongs to the owner and works from either end: Tesla Account > Security > Third-Party Apps, or delete the virtual key from the car’s Locks screen (Fleet API FAQ).
What are the privacy obligations around connected-car data?
Regulators have moved from guidance to enforcement. The FTC finalized its order against GM and OnStar in January 2026 — a twenty-year order with a five-year ban on sharing geolocation data with consumer reporting agencies. California's Attorney General settled with GM for $12.75 million, and the California Privacy Protection Agency's first CCPA settlement, with Honda, landed at $632,500 in March 2025. The defensible posture is to collect only what the job requires and to end collection when the job ends.
The FTC’s finalized GM and OnStar order is the clearest signal (ftc.gov). The through-line across all three actions is not “connected car data is illegal” — it is that collection without meaningful consent, and retention past the purpose, is what gets punished. A shop that turns collection on at check-in and off at pickup is on the right side of that line by construction. Our own version is on the privacy page: collect only what the custody job needs, never sell vehicle data, end the consent window at pickup.
Why this matters commercially
There are roughly 105,000 auto body shops in the United States running a $67.7 billion industry (IBISWorld, 2026), and millions of Teslas on US roads feeding into them. Meanwhile a 2025 PartsTech and OEC survey of 752 shops found only about 3% of technicians proficient in EV maintenance, under 10% qualified for battery work, and 25% of general shops doing no EV work at all (PartsTech).
- The shops that can take Tesla work are competing on confidence, not just capacity.
- Owners arriving at an independent shop are unusually attentive to what happens to their car.
- The Fleet API is the only sanctioned way to answer that attention with something better than a promise.
Sources
- Fleet API vehicle commands — developer.tesla.com
- Fleet Telemetry overview — developer.tesla.com
- Fleet Telemetry available data — developer.tesla.com
- Billing and limits — developer.tesla.com
- Authentication and scopes — developer.tesla.com
- Virtual keys developer guide — developer.tesla.com
- Fleet API FAQ — developer.tesla.com
- FTC finalizes GM / OnStar geolocation order, January 2026
- Auto body shops industry report — IBISWorld, 2026
- 2025 EV servicing survey of 752 shops — PartsTech / OEC