{
"error": {
"message": "(#4) User request limit reached",
"type": "OAuthException"
}
}
I'm not sure the cause of this error, and yes I've done lots of searching around for similar user's problems (they are error #17, or app limit reached). And I'm doing this on regular graph API calls (such as https://graph.facebook.com/me ), not necessarily FQL like others have run into.
User request limit reached
makes it seem like a per-user limit, but according to http://www.fb-developers.info/tech/fb_dev/faq/general/gen_10.php , #4
is "Application request limit reached"
and #17
is "User request limit reached"
.
I don't believe there's anyway I'm hitting the 100M/day app limit. And I only get it for a couple users' auth tokens, so it's not an app-wide error message I'm getting. And when I request too quickly, I usually get FQL_EC_RATE_LIMIT_EXCEEDED
.
But for those two users with the above error "(#4) User request limit reached"
, I've temporarily blacklisted them from loading data, but yet they still get the above error when I try to access using that auth token a day later.
So in conclusion...
I don't understand how I can get "(#4) User request limit reached"
when the auth-token for that user is not being used for any queries in a 24-hour period prior. And I don't know what is special about these users.
Any advice or suggestions would be greatly appreciated. It was only one user a few days ago, but today a second user started running into this problem, and I'm worried the problem will just get worse in the future with no clear resolution.
Here is a list of error codes: http://fbdevwiki.com/wiki/Error_codes
#4 means you've made too many API requests. There are limits on how many your application can make given a certain amount of time. There are also limits based on each user. If you wait for a while the error should clear and allow you to make requests again.
The error codes are a throwback from older API's so it's possible they just combined #4 and #17 to always just return #4.
Also, the limits are not fixed such as "100M/day". Go to Insights for your application and look under Diagnostics. It will show you what requests are causing that error. The limits vary from day to day and I think are related to how much other traffic there is.