Smartcar is compatible with Land Rover vehicles

Mobility apps and services use Smartcar’s APIs to verify their customers’ mileage, issue digital car keys, manage EV charging, and track fleets. Our platform allows your customers with compatible Land Rover vehicles to log in with their InControl account and connect their car to your app in just a few clicks.

What is Smartcar?

Smartcar is the leading developer platform for mobility businesses. Whether you need to track a vehicle’s location, verify its mileage, share a virtual key, start charging an EV, monitor a car’s fuel tank level, inspect the tire pressure, or check the engine oil life, Smartcar lets you do so with a single API request.

The best way to build apps for Land Rover vehicles

Our RESTful APIs are fast, reliable, and easy to use with every tech stack. No matter which framework your mobile or web app is built in, our documentation and SDKs support every major language.

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
const smartcar = require('smartcar');

// Get all vehicles associated with this access token
const {vehicles} = await smartcar.getVehicleIds("<access-token>");

// Construct a new vehicle instance using the first vehicle's id
const vehicle = new smartcar.Vehicle(vehicles[0], "<access-token>");

// Fetch the vehicle's location
const location = await vehicle.location();
console.log(location);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
import smartcar

# Get all vehicles associated with this access token
response = smartcar.get_vehicle_ids("<access-token>")

# Construct a new vehicle instance using the first vehicle's id
vehicle = smartcar.Vehicle(response["vehicles"][0], "<access-token>")

# Fetch the vehicle's location
location = vehicle.location()
print(location)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
import com.smartcar.sdk.*;

// Get all vehicles associated with this access token
SmartcarResponse<VehicleIds> response = AuthClient.getVehicleIds("<access-token>");
String[] vehicleIds = response.getData().getVehicleIds();

// Construct a new vehicle instance using the first vehicle's id
Vehicle vehicle = new Vehicle(vehicleIds[0], "<access-token>");

// Fetch the vehicle's location
SmartcarResponse<VehicleLocation> location = vehicle.location();
System.out.println(location.getData().getLatitude() + ", " + location.getData().getLongitude());
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
import (
  "context"
  smartcar "github.com/smartcar/go-sdk"
);

// Create a smartcar client
var smartcarClient = smartcar.NewClient();

// Get all vehicles associated with this access token
var vehicleIDs, resErr = smartcarClient.GetVehicleIDs(
  context.TODO(),
  &smartcar.VehicleIDsParams{Access: "<access-token>"},
);

// Construct a new vehicle instance using the first vehicle's id
var vehicle = smartcarClient.NewVehicle(&smartcar.VehicleParams{
  ID: vehicleIDs.VehicleIDs[0],
  AccessToken: "<access-token>"},
);

// Fetch the vehicle's location
var fuel, resErr = vehicle.GetLocation(context.TODO());
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
require 'smartcar'

# Get all vehicles associated with this access token
vehicle_ids =  Smartcar::Vehicle.all_vehicle_ids(token: token)

# Construct a new vehicle instance using the first vehicle's id
vehicle = Smartcar::Vehicle.new(
  token: "<access-token>",
  id: vehicle_ids.first
)

# Fetch the vehicle's location
location = vehicle.location()
puts location.to_hash.slice(*%I(latitude, longitude))
// Example response from Smartcar
{
  "latitude": 37.4292,
  "longitude": 122.1381
}

Product features

Compatible with Land Rover telematics

Compatible with Land Rover telematics

Extensive documentation and SDKs

Extensive documentation and SDKs

Friendly user consent flow

Friendly user consent flow

Trusted & secure

Trusted & secure

Access to live car data

Access to live car data

No need for aftermarket hardware

No need for aftermarket hardware

Compatible with your Land Rover

Our unified platform is compatible with 20 vehicle brands including Land Rover. Whether you have the Range Rover, the Discovery, or the Velar, your app can connect to all Land Rover models that support the Land Rover InControl Remote app.

What we’re building

All product names, logos, and brands are property of their respective owners. Use of these names, logos, and brands does not imply endorsement.