Facebook GraphAPIをコール出来る上限

この記事を見ているあなたはFacebookアプリを作成していますか?

現在Facebookアプリを作成している @DAI199 ですが、いきなり以下のようなエラーが出ました。

(#4) Application request limit reached

あーなんか上限に達したんだなってことはわかったんですが、自分自身そこまでAPIをコールしていなかったので意味が分かりませんでした。

FacebookStackOverFlowで検索してみたところ以下の記事が有力です。

Facebook Application Request limit reached

この記事によると、

There is a limit, but it’s pretty high, it should be difficult to hit unless they’re using the same access tokens for all calls and not caching results, etc. It’s 600 calls per 600 seconds per access token.

GraphAPIをコールする回数には制限はあるが、その制限はとても高く、全てのコールを同じアクセストークンを使い、更に結果をキャッシュせずに使い続けない限り上限に達することは難しいだろう。1つのアクセストークン毎に600秒間で600コール出来る。

つまり僕はめちゃくちゃアクセスしてたってことになります。

結局原因としては、サーバー上でまわしてたcronの中に、Facebookアプリで使用していたアプリから作り出されたアクセストークンを使用していました。
このアクセストークンを別のアプリから作ったアクセストークンに変えたところ、今のところエラー発生していません。

FacebookAPIを叩ける回数は、アクセストークンに依存するんですね。まぁそりゃそうか。

もし同じようにつまずいている人がいれば参考にしてみてください。