From ed6165dd87f82a3cd0e9df36c980cad5e73daebd Mon Sep 17 00:00:00 2001 From: Chase Sterling Date: Tue, 1 Jun 2021 13:08:51 -0400 Subject: [PATCH] Revert "Revert "Finalsurge changed their api a bit, update to keep working."" This reverts commit 4705f7e582dd32100569b45f8081baa022aca706. (make up your mind finalsurge!) --- pyproject.toml | 2 +- trainaspower/finalsurge.py | 17 +++++++---------- 2 files changed, 8 insertions(+), 11 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 3333672..43384b5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "trainaspower" -version = "0.6.3" +version = "0.6.4" description = "Convert TrainAsOne plans to power and upload to Final Surge for use with Stryd pod." authors = ["Chase Sterling "] license = "MIT" diff --git a/trainaspower/finalsurge.py b/trainaspower/finalsurge.py index 8dcdc46..45423dc 100644 --- a/trainaspower/finalsurge.py +++ b/trainaspower/finalsurge.py @@ -24,8 +24,8 @@ def login(email: str, password: str) -> None: "deviceUniqueIdentifier": "", } r = finalsurge_session.post( - "https://beta.finalsurge.com/api/Data?request=login", - data=json.dumps(login_params).replace(" ", ""), + "https://beta.finalsurge.com/api/login", + json=login_params, ) login_info = r.json() if not login_info["success"]: @@ -114,7 +114,6 @@ def get_existing_tap_workout(wo_date: date) -> Optional[str]: """Checks if TrainAsPower already has an (uncompleted) workout on the same day as given workout.""" logger.debug(f"Checking TrainAsPower workout exists on Final Surge") params = { - "request": "WorkoutList", "scope": "USER", "scopekey": user_key, "startdate": wo_date.strftime("%Y-%m-%d"), @@ -123,7 +122,7 @@ def get_existing_tap_workout(wo_date: date) -> Optional[str]: "completedonly": False, } data = finalsurge_session.get( - "https://beta.finalsurge.com/api/Data", params=params + "https://beta.finalsurge.com/api/WorkoutList", params=params ).json() for existing_workout in data["data"]: if existing_workout["workout_completion"] == 1: @@ -140,10 +139,10 @@ def add_workout(workout: models.Workout) -> None: else: logger.info(f"Posting workout `{workout.name}` to Final Surge") wo = convert_workout(workout) - params = {"request": "WorkoutSave", "scope": "USER", "scope_key": user_key} + params = {"scope": "USER", "scope_key": user_key} add_wo = finalsurge_session.post( - "https://beta.finalsurge.com/api/Data", + "https://beta.finalsurge.com/api/WorkoutSave", params=params, json={ "key": wo_key, @@ -164,13 +163,12 @@ def add_workout(workout: models.Workout) -> None: if not wo_key: wo_key = add_wo.json()["new_workout_key"] params = { - "request": "WorkoutBuilderSave", "scope": "USER", "scopekey": user_key, "workout_key": wo_key, } finalsurge_session.post( - "https://beta.finalsurge.com/api/Data", params=params, json=wo + "https://beta.finalsurge.com/api/WorkoutBuilderSave", params=params, json=wo ) @@ -180,11 +178,10 @@ def remove_workout(wo_date: date) -> None: return logger.info(f"Deleting existing TrainAsPower workout `{wo_key}`") params = { - "request": "WorkoutDelete", "scope": "USER", "scopekey": user_key, "workout_key": wo_key, } response = finalsurge_session.get( - "https://beta.finalsurge.com/api/Data", params=params + "https://beta.finalsurge.com/api/WorkoutDelete", params=params ) \ No newline at end of file