Access to a MyBMW account and all vehicles therein.

class bimmer_connected.account.MyBMWAccount(username: str, password: dataclasses.InitVar, region: bimmer_connected.const.Regions, config: bimmer_connected.api.client.MyBMWClientConfiguration = None, log_responses: dataclasses.InitVar = None, observer_position: dataclasses.InitVar = None, use_metric_units: dataclasses.InitVar = True)[source]

Create a new connection to the MyBMW web service.

config = None

Optional. If provided, username/password/region are ignored.

get_vehicle(vin: str) → Optional[bimmer_connected.vehicle.vehicle.MyBMWVehicle][source]

Get vehicle with given VIN.

The search is NOT case sensitive. :param vin: VIN of the vehicle you want to get. :return: Returns None if no vehicle is found.

get_vehicles() → None[source]

Retrieve vehicle data from BMW servers.

log_responses = None

Optional. If set, all responses from the server will be logged to this directory.

observer_position = None

Optional. Required for getting a position on older cars.

password = None

MyBMW password.


Returns the current refresh_token.

region = None

Region of the account. See api.Regions.

set_observer_position(latitude: float, longitude: float) → None[source]

Set the position of the observer for all vehicles.

set_refresh_token(refresh_token: str) → None[source]

Overwrite the current value of the MyBMW refresh token.

set_use_metric_units(use_metric_units: bool) → None[source]

Change between using metric units (km, l) if True or imperial units (mi, gal) if False.


Returns the current tzinfo.

use_metric_units = True

Optional. Use metric units (km, l) by default. Use imperial units (mi, gal) if False.

username = None

MyBMW user name (email) or 86-prefixed phone number (China only).


Returns the difference to UTC in minutes.