Take the 2-minute tour ×
Stack Apps is a question and answer site for apps, scripts, and development with the Stack Exchange API. It's 100% free, no registration required.

I put a program in cron to run every 5 minutes, and that program loop 5 times and read each api site 12 seconds interval.

But last night (12 hours ago), I noticed that my program broke and there was multiple instances of program running and trying to fetch data in almost every second.

Problem was I didn't set cron to run only one instance of my program, and it taking time more than 5 minutes and duplicating with next cron instances. It was about 2 Hours long!

So, Can I request to unblock my IP here or Should I just wait for automatic release or Just give up?

Note: I only have one hosting, I can't change IP address on my side.

Edit: Looks like it is not temporary, I still can't fetch any data from (api.)?stackoverflow.com, sstatic.net yet until now.

share|improve this question
4  
I believe the correct sacrifice to appease the gods is 3 lambs and a cricket. –  Mark Henderson Jun 15 '10 at 4:38
    
I believe that this is why we test on our local machine before uploading. –  Nathan Osman Jun 15 '10 at 5:02
    
@farseeker even though the day is young (for me at least), I think that's the best comment I'll see all day! –  Matt S. Jun 15 '10 at 11:09
    
@S.Mark have you resolved? –  systempuntoout Jun 17 '10 at 6:25
    
@system, not yet. :( looks like it is semi permanent. –  YOU Jun 17 '10 at 12:23
    
@S.Mark :-|.... –  systempuntoout Jun 17 '10 at 12:26

4 Answers 4

This is an old question, but I ran into a similar problem while developing my first app utilizing Stack Exchange API v2.2 this week. A bit of defensive programming can reduce the impact of unintentional foot-shots. Your app (or multiple copies / threads of your app) won't be getting much done, but you are less likely to get barred.

To avoid having your app permanently blocked, you should be looking for backoff in the Common Wrapper Object of every response. When told to back off, do so. The following Javascript excerpt does just that:

function queryStackExchange( queryString ) {      
  // If we have been asked to back off by Stack Exchange API, exit
  var backoffUntil = properties.getProperty("backoff");
  if (backoffUntil) {
    if (now() < backoffUntil) {
      return {"backoff":backoffUntil};
    }
    else {
      // backoff completed; delete snooze setting
      properties.deleteProperty("backoff");
    }
  }

  // OK to proceed - build our query
  ...
  var json = UrlFetchApp.fetch(url);

  var obj = JSON.parse(json);

  // Check for backoff request, and set our snooze period
  if ("backoff" in obj) {
    backoffUntil = now() + 1000*parseInt(obj["backoff"]);
    properties.setProperty("backoff", backoffUntil);
  }

  return obj;
}
share|improve this answer

E-mail us (use the contact link) with the IP and your case details.

share|improve this answer

If it were me, I'd email team@stackoverflow.com. They would be the best people to talk to to get this issue resolved.

share|improve this answer
    
yeah, dude. what he said. i would have been spamming them 5 minutes into a lock out. –  Sky Sanders Jun 17 '10 at 23:52

Wait unit 00:00 GMT and your rate-limit will be reset.

unless you tripped some wire I am not aware of and got on a black list.

share|improve this answer
1  
I think its more than rate-limit issue though, but let's see –  YOU Jun 15 '10 at 5:16

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .