Smartcar API for BMW

Smartcar's API lets you locate, lock, unlock, and read data from BMW vehicles using just a few lines of code. Integrate Smartcar into your app, let your users connect with their BMW ConnectedDrive account, and start sending requests to their cars.

Compatible with your BMW

With Smartcar, your app can send simple HTTP requests to all BMW vehicles that support the BMW ConnectedDrive service. Our API allows you to communicate with the BMW X3, X4, and X5, as well as the 1 series, 3 series, and 4 series in a single integration. Even the BMW M3, i3, i8, and Z4 are compatible with Smartcar's API. The best part? There is no need to use aftermarket hardware like OBD2 dongles and GPS tracking devices.

Features

Compatible with BMW models

Compatible with BMW models

SDKs in six languages

SDKs in six languages

Self-service experience

Self-service experience

No aftermarket hardware

No aftermarket hardware

Reliable customer support

Reliable customer support

Scalable pay-as-you-go pricing

Scalable pay-as-you-go pricing

Our SDKs

Our RESTful API is fast, reliable, and easy to use with every tech stack. No matter which language you used to build your mobile or web app, our documentation includes six SDKs and several integration guides. Here is a sneak peek of our back-end SDKs:

Node

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
const smartcar = require('smartcar'); 
 
// List all vehicles associated with this access token
const {vehicles} = await smartcar.getVehicleIds("<access-token>");
 
// Use the first vehicle
const vehicle = new smartcar.Vehicle(vehicles[0], "<access-token>");
 
// Lock the vehicle
await vehicle.lock();
 
// Unlock the vehicle
await vehicle.unlock();

API endpoints

Lock & unlock

Location

Our lock and unlock API endpoints let you remotely lock and unlock a BMW vehicle, controlling the car doors directly via your app.

Our location API endpoint allows you to remotely locate a BMW vehicle, reading its live location by latitude and longitude.

Odometer

Vehicle attributes

Our odometer API endpoint lets you remotely access a BMW's mileage information. It returns the total distance traveled by the vehicle.

Our vehicle attributes API endpoint lets you read basic data points such as the model and year of a BMW.

Lock & unlock

Our lock and unlock API endpoints let you remotely lock and unlock a BMW vehicle, controlling the car doors directly via your app.

Location

Our location API endpoint allows you to remotely locate a BMW vehicle, reading its live location by latitude and longitude.

Odometer

Our odometer API endpoint lets you remotely access a BMW's mileage information. It returns the total distance traveled by the vehicle.

Vehicle attributes

Our vehicle attributes API endpoint lets you read basic data points such as the model and year of a BMW.

What we're building

Ready to hit the road?

Get Started

Ready to hit the road?

Get Started

All product names, logos, and brands are property of their respective owners. The use of names, logos, and brands is for identification purposes only and does not indicate endorsement or affiliation.