-
Notifications
You must be signed in to change notification settings - Fork 77
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Garmin account deactivated probably due to gcexport #60
Comments
I might be writing a nonsense, but there are other python apps connecting to Garmin and there is some discussions stating that Garmin is now behind Cloudfare. This seems to change the way the requests need to be made. On the bright side, Python seems to have a library called CloudScrapper that seems to take care of the solution. This project, for example, is using CloudScrapper to read information from Withings, create a FIT file with that information and send this file to Garmin Connect: Once again, I'm not expert and maybe all I'm writing is false but if some of you have better knowledge, this info might help. |
I have never seen the quoted message, and my account was never locked out. But this is of course no proof that it can't happen. And a service like Garmin Connect is supposed to change form time to time, maybe also only for some users (e.g. with blue-green deployment) or some geographical locations (different data centers), so it might happen for some users and not for others. With my tests I have already run into different errors (e.g. Error 429 Too many requests or Error 403 Forbidden), but these were never permanent. I would be careful to run this script as cron job however, every hour seems quite often. In fact just today I observed a strange behaviour of getting HTTP Error 403 when running with Python 2.7.18, but not with 3.9.0. And I can see in the @octomike What Python version are you using? What HTTP error did you get (should have been written to the log file)? |
TIL that there is a large log file tracking my login attempts 😅 This seems to be the first round of the cron job that initially triggered a password reset process (I got 6 mails / 1 every hour) and later resulted in my account being locked.
I used to run |
Ah, true! In fact it's very trivial to switch to python3 in Debian - it's just that the default I'm going to be brave here and switch on my hourly cron job again (with py3) - risking a lock-out. Will report back if I encounter any issues :) |
Hourly cron jobs worked fine, no lock-out to report. I'm considering this closed. Thanks a lot! |
It happened again this morning - my Garmin account is locked again :( This is the log from today (only one sync was tried):
|
Strangely the two HTTP requests visible in the log get 200, meaning they were successful, so I can't see in the logs any error. How did the lock manifest itself? Did the script stop working? BTW: Python 3.7.3 is from 2019-03-25, is there no newer Python 3 for Debian? |
Two effects:
Yes, that's intended behavior in Debian. It is not a rolling release distribution and throughout the lifetime of a release (2 years usually) all packages stay API stable, a fundamental strength in Debian imho. |
happens to me as well: every 1-3 weeks garmin blocks my bot by pretending that i requested password change. furthermore, every new sso request after that results in another phantom password change request, so they keep sending the "here's your new password" emails until i log in manually. looks like some anti-bot measure on garmin side that would be great to reverse-engineer. |
Haven't had an issue / lockout with this for quite a while now. Closing |
FWIW, still happens here |
Didn't mean to shut you out, sorry.. you're welcome to reopen. Out of curiosity: How often are you exporting? I'm syncing once an hour between 8am and 11pm and no lockouts so far |
no worries. my bot polls the data 3 times a day. indeed, i should perhaps try polling only once per day and see if that helps. EDIT: though your polls seem even more frequent than mine. i'm also requesting quite bit of overlapping data to check for retrospective changes -- that could also be a problem. |
True, it could fire after a certain amount of requests. This is what I'm calling every hour:
|
thanks. i'm not using the script verbatim, actually, just similar sequence of requests against garmin services. so one very plausible explanation is that i'm doing something subtly differently (in addition to different request parameters). will investigate when i get a chance (needing to manually log in every 2 weeks isn't a major inconvenience though, so i might not get around to it). |
I've been in rather stressful contact with Garmin over the last 2 weeks because my account got deactivated - twice. I used to use this script to auto-sync my activities once every hour.
After lengthy discussions with the user support they concluded that I should disable the program because it makes calls to their SSO service (??? of course it does). I can't quote here, because it's prohibited to disclose information from that communication ( 🙄 ). Apparently they also implemented a new service a couple of weeks back and my guess is that it erroneously auto-detects the syncer as a malicious program and locks the account.
I primarily opened this issue for people in the same situation. If you are greeted with this (incorrect) message:
chances are you are also locked out. Don't wait for that e-mail, because it never arrives. Don't try to reset your password, it won't work. You have to open a ticket and they have to manually reset your account with a password.
The text was updated successfully, but these errors were encountered: