DIMO gives developers API access to Tesla Model S vehicle data. Model years 2013 and newer connect through the OEM cloud (Tesla). Headline signals include odometer, current charge level and vehicle speed.
DIMO gives developers API access to vehicle-state data: diagnostics, fault codes, battery and fuel health, odometer, and maintenance signals. For the Tesla Model S, 2013 and newer, data comes through Tesla's cloud connection, and this coverage has been tested. The record lists odometer, charge level, remaining range, charging status, tire pressure and door state signals, plus the recharge event. Vehicle owners consent to and control sharing, so builders get data with clear provenance.
Signals by connection type
OEM cloud (no hardware) — Tesla (2013 and newer)
| Signal | DIMO name | Unit |
|---|---|---|
| Odometer | powertrainTransmissionTravelledDistance | km |
| Current Charge Level | powertrainTractionBatteryStateOfChargeCurrent | % |
| Vehicle Speed | speed | km/h |
| Range (remaining) | powertrainRange | km |
| Air Temperature | exteriorAirTemperature | °C |
| AC Current Charge (Alternating Current) | powertrainTractionBatteryChargingChargeCurrentAC | amps |
| Back Driver Side Door | cabinDoorRow2DriverSideIsOpen | — |
| Back Driver Side Window | cabinDoorRow2DriverSideWindowIsOpen | — |
| Back Left Wheel | chassisAxleRow2WheelLeftTirePressure | kPa |
| Back Passenger Side Door | cabinDoorRow2PassengerSideIsOpen | — |
| Back Passenger Side Window | cabinDoorRow2PassengerSideWindowIsOpen | — |
| Back Right Wheel | chassisAxleRow2WheelRightTirePressure | kPa |
| Battery Power | powertrainTractionBatteryCurrentPower | watts |
| Charge Limit | powertrainTractionBatteryChargingChargeLimit | % |
| Charging Cable Connected | powertrainTractionBatteryChargingIsChargingCableConnected | — |
| Charging Status | powertrainTractionBatteryChargingIsCharging | — |
| Charging Voltage | powertrainTractionBatteryChargingChargeVoltageUnknownType | volts |
| Front Driver Side Door | cabinDoorRow1DriverSideIsOpen | — |
| Front Driver Side Window | cabinDoorRow1DriverSideWindowIsOpen | — |
| Front Left Wheel | chassisAxleRow1WheelLeftTirePressure | kPa |
| Front Passenger Side Door | cabinDoorRow1PassengerSideIsOpen | — |
| Front Passenger Side Window | cabinDoorRow1PassengerSideWindowIsOpen | — |
| Front Right Wheel | chassisAxleRow1WheelRightTirePressure | kPa |
| Remaining Energy | powertrainTractionBatteryStateOfChargeCurrentEnergy | kWh |
| Session Energy | powertrainTractionBatteryChargingAddedEnergy | kWh |
| Coordinates | currentLocationCoordinates | — |
Events available
- Recharge
Build it
Query the latest Tesla Model S signals with the DIMO TypeScript SDK. The vehicle owner must first share access with your app through DIMO Connect.
import { DIMO } from '@dimo-network/data-sdk';
const dimo = new DIMO('Production');const tokenId = Number(process.env.DIMO_TOKEN_ID); // from DIMO Connect
const developerJwt = await dimo.auth.getDeveloperJwt({ client_id: process.env.DIMO_CLIENT_ID, domain: process.env.DIMO_REDIRECT_URI, private_key: process.env.DIMO_API_KEY,});const vehicleJwt = await dimo.tokenexchange.getVehicleJwt({ ...developerJwt, tokenId,});
// Latest Tesla Model S signalsconst data = await dimo.telemetry.query({ ...vehicleJwt, query: ` query { signalsLatest(tokenId: ${tokenId}) { powertrainTransmissionTravelledDistance { value timestamp } powertrainTractionBatteryStateOfChargeCurrent { value timestamp } speed { value timestamp } } }`,});console.log(JSON.stringify(data, null, 2));Full walkthrough: Developer quickstart.
FAQ
How do I detect recharging on a Tesla Model S?
Tesla's cloud connection provides the charging signals and the recharge event. Query the Telemetry API segments resource with mechanism set to recharge, which uses charging signals and state of charge for detection. The maximum date range per query is 31 days.
How do I get notified when a Tesla Model S starts charging?
Create a webhook with the Vehicle Triggers API on the signal vss.powertrainTractionBatteryChargingIsCharging with a condition such as valueNumber == 1, then subscribe the vehicle to it. DIMO sends a POST request to your targetURL when the condition is met. Webhooks are in public beta.
How do I verify Tesla Model S mileage?
Tesla's cloud connection provides the odometer signal. Call the Attestation API odometer-statement endpoint with a Vehicle JWT, then retrieve the resulting rawVC through the Telemetry API. You need the vehicle shared with your Developer License to get that JWT.
Which Tesla Model S model years work with DIMO?
Tesla Model S model years 2013 and newer connect through the OEM cloud (Tesla). For older vehicles, contact DIMO for additional support.
Do I need hardware to get Tesla Model S data?
No. Every listed Tesla Model S model year connects through the OEM cloud without hardware.
Source: DIMO vehicle compatibility records. Coverage tested on a connected vehicle. Last verified .