1

Possible Duplicate:
Facebook OAuth Error: Application request limit reached

I wrote a Facebook monitoring app that calls Facebook FQL by default every 30 seconds to determine if the user has any unread notifications, messages, or friend requests.

Recently, it stopped working. When debugging, I found Facebook returns the following error:

error =     {
        message = "(#4) Application request limit reached";
        type = OAuthException;
    };

Huh? How do I fix this? This is a production Desktop App. Obviously the higher the number of users, the higher the number of requests my app will make.

Also, this can't be a spam-preventing measure, my app only reads from FQL, nothing is ever posted...

Community
  • 1
  • 1
houbysoft
  • 32,532
  • 24
  • 103
  • 156
  • Maybe Facebook just doesn't like you sending so many requests? You probably produce too much server load with too little benefits for FB. – Has QUIT--Anony-Mousse Jan 06 '12 at 14:48
  • @Anony-Mousse: well yes, but how do I increase this limit? Do I just tell some of my users to uninstall the app because Facebook doesn't like when too many of them are sending requests?? That doesn't make sense. – houbysoft Jan 06 '12 at 14:49
  • Check your application dashboard. It might also be a number of requests per user limit. Now when one user installs your application 3 times, and causes 3 times as many requests... – Has QUIT--Anony-Mousse Jan 06 '12 at 14:52
  • @Anony-Mousse: in the Diagnostics tab, there is a table saying that "Requests 1.0" is limited to 50 requests/day, do you think it's this? Can I increase this number? Also, is this per-user or per-app? I'd hate the app to stop working for all my users, obviously... – houbysoft Jan 06 '12 at 15:18
  • You can buy an increase I guess. Check the Facebook documentation! – Has QUIT--Anony-Mousse Jan 06 '12 at 15:26
  • @Anony-Mousse: could you provide a link? I can't find anything in the docs. – houbysoft Jan 06 '12 at 15:40
  • No, I've killed my Facebook account for privacy reasons. It was on developer.facebook.com I guess. – Has QUIT--Anony-Mousse Jan 06 '12 at 16:00
  • @Anony-Mousse: I've been searching for a while. There's no mention of a way to increase/buy an increase for the limit.. – houbysoft Jan 06 '12 at 23:58
  • Use the newer API. Requests 1.0 means you are using the old API. – Has QUIT--Anony-Mousse Jan 07 '12 at 00:27
  • @Anony-Mousse: the only function using the legacy API is https://developers.facebook.com/docs/reference/rest/notifications.markRead/, but that page specifically says to continue using that as it is not available in the new API. Everything else my app does only uses FQL. – houbysoft Jan 07 '12 at 01:33
  • As a note, this morning I tried my app again, and it looks like it works fine. A few users confirmed this. In the Diagnostics section of my app on Facebook, nothing now appears. So I am guessing this has been a temporary problem on Facebook's side... – houbysoft Jan 07 '12 at 18:18

1 Answers1

1

You should be using the subscribe API, not polling Facebook so often. https://developers.facebook.com/docs/reference/api/realtime/

Brent Baisley
  • 12,641
  • 2
  • 26
  • 39
  • Does that work for a desktop-only app though? It looks like that requires a URL where Facebook can POST stuff. – houbysoft Jan 07 '12 at 05:54
  • No, but you can setup your own server that you can poll and receives Facebook's updates. – Brent Baisley Jan 07 '12 at 15:21
  • Right, but then my app would need to poll my own server anyway, so I thought I might as well poll Facebook directly. – houbysoft Jan 07 '12 at 18:16
  • If everyone did that, Facebook couldn't handle the load. If you have your own server, you could open a socket, use Facebook's real time subscribe API and push out an update when there is a change. – Brent Baisley Jan 08 '12 at 01:28