Spring is just around the corner, so it’s time to get our eBikes ready — and what better way than having all your bike data right in Home Assistant?
I’ve built a custom integration for Bosch eBike Smart System that connects to the official Bosch Data Act API. If your eBike runs on the Bosch Smart System (Performance Line CX, SX, etc.), you can now monitor everything directly in HA.
What you get:
Bike Sensors
Odometer, motor hours (total & with assist), max assist speed
Happy to hear your feedback and ideas for improvements. If you’re running a Bosch Smart System eBike, give it a try and let me know how it works for you!
Looks interesting!
I tried, but got to a few hurdles, likely all related to each other:
When creating the client application, I had to fill out a Login URL and a Redirect URI. I filled out http://localhost:8888/callback in both, but I suspect that’s not correct
I don’t get a share button in step 4. Do I have to wait for approval of my application?
Yes, after creating your application in the Bosch Data Act Portal, it needs to be approved by Bosch first. This can take a few hours up to a couple of days. You’ll receive an email notification once it’s approved. Only after approval will you be able to:
See the “Share” button in the Flow app / portal to grant data access
Successfully exchange tokens via the API
3. Token not accepted
This is a direct consequence of #2. Until your application is approved by Bosch, the Client-ID won’t be authorized to request tokens. Once you get the approval email, the OAuth flow should work.
So the steps in order are:
Create application in Bosch Data Act Portal (Login URL = Bosch auth endpoint, Redirect URI = http://localhost:8888/callback)
Wait for Bosch approval (check your email)
Open the Flow app → go to Data Sharing → enable sharing for your application
Then set up the integration in Home Assistant — the token exchange should work now
Let me know once your app is approved and if you run into any other issues!
Thank you so much for this integration! I am stuck with waiting for Bosch to approve the app. It’s been more than two days and I haven’t received anything. If I try to enable the service from the Flow portal, I get a “Invalid request” error, which I assume means that the app really hasn’t been approved.
2.4. (Your bike will now appear in the Flow Portal at portal.bosch-ebike.com)
It does not. Instead it asks if I want to add my account as a distributor or a manufacturer.
Sorry, got the wrong link. Login here (after you created a Client-ID) and activate the your bike for data-usage of the app: https://flow.bosch-ebike.com
Thanks for the effort The instructions on your GitHub repo are really precise, which also means that I’m still locked out of the integration.
I did go to that page and created a Client ID. I did authenticate the Home Assistant integration. But again, as you mentioned in your instructions, if Bosch doesn’t approve the Client ID app, the integration won’t report any devices, which is what’s happening to me.
If I try to enable the app from Bosch’s portal, I get the “Invalid request” error.
Believe it or not, I just refreshed and it was approved! I triple checked the email, even in the spam folder, and I never received anything. But it works now, and I can confirm the HA integration works as well Thanks everyone for the support!
The correct path for the file “bosch-ebike-map-card.js” is “homeassistant/custom_components/bosch_ebike/www/”. Just copy the file into this folder and restart Home Assistant (full restart required).
After manually adding /bosch_ebike/bosch-ebike-map-card.js to the dashboard ressources the card was found.
Thank you Xunil99 for sharing your great work.
I was wondering the same thing, or well, what I would really like is to see how much the battery was charged when last connected, so don’t need to see it when charging, just want to see the 80% or something, which it shows in the app