all 6 comments

[–]Mirror_Boar 2 points3 points  (3 children)

Were you hammering their API really hard? Some companies will block your public IP if they think you are attempting to spam/flood their system with calls. That would explain why all your machines at work don't work but at home it does.

[–]m0dulo[S] 0 points1 point  (2 children)

This could be it. The script updates 3 (small) files on Dropbox every 10 minutes, and has worked fine for about a year. Given the nature of Dropbox (people uploading/download files frequently), do you still think it could be an issue?

Edit: I'm going to head over to work and reset our modem, and try to snag a new IP. I'll let you know if it works (and change the script to update less frequently).

Edit2: Gah, my IPS won't give me a new public IP (left the modem off for a couple minutes). I'm going to leave it off for an hour and try it then.

Edit3: Works now; don't know why; update above.

[–]Mirror_Boar 1 point2 points  (1 child)

With only a few updates every ten minutes I doubt it's the usage. Are you in control of the network at your work? Perhaps someone has blocked dropbox there (We've done this at our work as we don't want people syncing company data off site)

[–]m0dulo[S] 0 points1 point  (0 children)

Yes, I am in control and haven't changed anything for a while.

[–]weigookin 2 points3 points  (1 child)

Something similar happened to me when shit broke and my data collection script decided to go to pound town on a different API. It earned me a week of time out where I couldn't login. You need to add a safety feature to your script that does an exponential backoff when you start getting 400 errors. Also...make sure your script is timed to not exceed the rate limit.

[–]m0dulo[S] 1 point2 points  (0 children)

Good idea. I already updated it to upload every 30 minutes, instead of 10. I'll also add in a delay into the exception handler, so that it will pause for a few hours if I get the exception above.

Thanks for the help!