Open euanChalmers02 opened 8 months ago
What response are you receiving?
At first glance, you're missing api=True
in self.garth.post()
. Without that flag, it won't pass the auth tokens in the request.
The following extra methods should work for other commands (within init) : ` def get_workouts(self):
url = f"{self.garmin_workouts}/workouts"
logger.debug("Requesting user summary")
params = {
"start": 0,
"limit": 100
}
response = self.connectapi(url, params=params)
return response
def get_workout_by_id(self,workoutID):
url = f"{self.garmin_workouts}/workout/"+workoutID
response = self.connectapi(url)
return response
def download_workout_by_id(self, workoutID):
url = f"{self.garmin_workouts}/workout/FIT/" + workoutID
response = self.connectapi(url)
with open("Download_Workout"+workoutID, "wb") as f:
f.write(response.content)
return response
`
I added the calls to the new version (to be released tomorrow) I renamed
def download_workout_by_id(self, workoutID):
to:
def download_workout(self, workoutID):
So it named the same as the other download methods
Oh wait I didn't include upload_workout(), need to look at that.
@euanChalmers02 Did you get the upload working, if so how? ;-)
I added the get and download methods to version 0.2.13, didn't get het upload function to work yet though.
Thanks alot very helpful, and no I did some trial and error but no luck and have reverted to copying files directly from PC due to this being deprecated by garmin I think?
Workout upload works fine via workout-service, you just need the correct payload (workout json structure). May be a bit tricky depending on sport, duration, intensity, etc.
Great, Would you happen to have an example payload I can use to develop some tests /examples for different sports?
Feel free to check https://github.com/OscarSalgado/garmin-workouts
It is not as documented as it should be but I hope you can follow the rationale behind. I tried to simplify workout definition as much as possible.
Intensively tested for running workouts, although I made some tests for the rest of sports. Happy to help
Could anyone advise on if I have made any mistakes in creating an example for creating a workout using the API as part of a package fork? current works to list all workout but not creating new?