Skip to content

An unofficial API for the Bosch eBike Connect web service, written for Node.js

License

Notifications You must be signed in to change notification settings

FlorianCassayre/ebike-connect-js

Repository files navigation

ebike-connect-js

An unofficial API for the Bosch eBike Connect web service, written for Node.js. 🚲

Installation

npm install ebike-connect-js

Usage

This library is designed for Node.js only and will not work on browsers.

You will need your username and password for the eBike Connect service. We recommend storing them in environment variables, e.g. .env:

EBIKE_CONNECT_USERNAME=xxxxx
EBIKE_CONNECT_PASSWORD=xxxxx

Then create a file myfile.js:

import { postAuth, getMyEBikes } from 'ebike-connect-js';

const credentials = {
  username: process.env.EBIKE_CONNECT_USERNAME,
  password: process.env.EBIKE_CONNECT_PASSWORD,
};

postAuth(credentials)
  .then(auth => getMyEBikes(auth)())
  .then(json => console.log(json));

You may then load these environment variables using e.g. the package dotenv by running node -r dotenv/config myfile.js (or ts-node -r dotenv/config myfile.ts).

Example project

This library was used to build the following website: bike.cassayre.me (GitHub)

Bug report

The methods and type declarations provided by this library are purely speculative, as the API may change at any time.

Please file a ticket if you encounter problems.

Related projects