Skip to content

Lyve1981/BMW-ConnectedDrive-JSON-Wrapper

Repository files navigation

BMW ConnectedDrive API Wrapper

This is a small node.js program that wraps the authentication mechanisms needed to access the BMW ConnectedDrive Portal servers and returns json data for each vehicle.

It supports:

  • writejson.js - Writes data for all vehicles to json files, one file per vehicle
  • server.js - Is a small web server that returns json data for each vehicle identified by the VIN upon request

Prerequisites

  • Install node.js

  • Rename/copy config_example.json to config.json and enter your credentials:

    • username needs to be the Mail Address that you used when registering your BMW ConnectedDrive account
    • password Your password

Writing JSON Files

  • Execute the following command:
    node writejson.js

The program writes json files in form result_VIN.json where VIN is your Vehicle Identification Number in the form WBAxxxxxxxV123456

Starting the Web Server

  • Execute the following command: node server.js

The server listens for incoming connections on port 8777 by default, feel free to edit if needed

Requests should be made in the following form:

http://myserver:port/VIN

  • VIN is your vehicle identification number in the form WBAxxxxxxxV123456

Actions

  • You can now initiate commands by using the provided action_xxx json files

    • action_climate.js Turn on air condition. The car will climate according to your last settings
    • action_doorlock.js Lock all doors
    • action_doorunlock.js Unlock doors. Use with caution!
    • action_flashheadlights.js Flash your headlights
    • action_soundhorn.js Trigger your horn

About

Wraps the BMW ConnectedDrive authentication mechanisms and outputs json files for every vehicle

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published