There are some good OSS libraries to read and interpret those files (e.g. Python https://github.com/polyvertex/fitdecode, Go https://github.com/tormoder/fit).
To get your _current_ data, it is possible to pull the current .FIT files from your device (watch, bike computer, ..) when it is plugged to your computer and mounted as file system.
I once started a side project to do exactly that, but abandoned it after a while (https://github.com/jo-m/garmin-disconnect).