Our users can invite their friends to our app by posting to their friends' walls. Some users have gotten really excited and invited hundreds of their friends (woohoo!), but we're constantly getting the "(#341) Feed action request limit reached" Oauth error and these never make it to any walls (argh).
I know FB limits the posts per user per day (I can see we're limited to 30/user/day in my insights page and the first 30 that were sent seem to go out) but it's been over 36 hours since the last post and I'm still getting "Feed action request limit reached" Oauth errors.
Should the limit have reset at this point? Is there a way to see if they're being blocked because FB thinks they're spam?
You'll probably get disconnected by anti spam systems if you're using wall posts as an invite mechanism - posts like that get blocked and removed quite a lot by the target users.
To answer your question, the feed action limit is a rolling window as far as i know, so doesn't reset after 24 hours exactly - if the API call fails just wait and try again later - I don't think using the Feed Dialog is subject to the same limits because it's manually approved by the user instead of just being up to the app to ensure policy compliance
Related
My goal was to get every from my wall post and process the posts.
When making a request, I would get back a response missing a newer message that was posted by another user.
This is seen in /user/feed (https://developers.facebook.com/docs/graph-api/reference/v2.1/user/feed), which is described as:
The feed of posts (including status updates) and links published by this person, or by others on this person's profile.
There are several cases that stop this from happening, one of them somewhat hidden in the docs and the other un-mentioned.
To have something appear:
both users must have authenticated with your app.
the sharing user must not have hidden status messages from apps in their privacy settings.
The first one is less intuitive, but it requires that the user who is authenticated both have the ability to see it if they were on the site, but that the originating user must also have authenticated with your app.
The second one makes sense, but is unmentioned and can be a frustration if you forget turning that setting on years prior.
One of the actions we encourage within our Facebook app is inviting your friends to try it. Is there a way to see how many friends each individual user invites? For instance, if we ran a contest that gives away free swag for anyone that invites 10 or more friends, how could we track which users that fit that criteria?
Such a contest would be explicitly against Facebook's policies, and forcing or incentivizing users to send out requests en-masse results in higher spam reports which may result in your app losing the ability to send requests, but:
You can use the callback of the Requests Dialog which contains the request ID and the list of recipients to track who the requests were sent to
And/Or
You can use the data attribute of the request to store tracking information, and extract that when processing the accepted request
I've been scouring the net for ages with this one, and I'm not sure if there is a solution at all, but thought I'd post and see if there's a response... thanks in advance!
Several of our customers (who we build websites for) have their Facebook feeds brought into their website (and their Twitter feeds). Before the removal of the offline_access permission, this was no problem. We'd set our app up, authenticate the account, get the access token and then we could bring in the live feed into their websites forever. However, now with the new system, there doesn't seem to be a way of doing this without human intervention.
Essentially, we have these websites bringing in the feeds from the relevant Facebook accounts, with the long access_token (60 day token). However, when this limit is reached, there is no "user" to re-authenticate the app, as its just the server that makes these requests. Is it a case of having to set reminders for all these accounts, and then every two months we (as the web agency) have to log in to all the accounts and get new access tokens to provide to the scripts so they can carry on working? Or is there an alternative which I am just not seeing?
Thanks again!
Neil.
There is no alternative that I know of. Once the token expires after 60 days, the user must re-authenticate.
No alternative way, user must login to provide you the new access token
https://developers.facebook.com/roadmap/offline-access-removal/
Hi I have a facebook quiz application. When a user comes to the app then he will see questions about his/her friend. Now once user answer or clicks yes/no the app will make publish to his friend's wall.
No when I see in application >> insight >> diagonastic I can see user limit
limit per user, per day : 50
Now my question is if my application has 5000 daily visitors and each user posts 10 answers to their friends' wall then my app will be deleted by facebook? Is there any way to track or limit postings?
Thanks
No, you don't need to worry about app banning, because that after the limit, every post your application makes will results in an error from Facebook ("post limit exceed", something like that). But still be careful because if you post too much, very likely users will report your application as spam, and it may get banned.
To track limit postings, you can simply write your own trackings (record to database when user request to post, for example).
Is there any limitation to post to the Facebook wall using Graph API? Because after posting four messages using the Graph API, the fifth message cannot be posted. However, the sixth message can be posted. All the six posts are within a 10-minute timeframe.
There is no rate limit on the API officially, but Facebook can choose to limit your posts for any number of reasons.
Also, Facebook will not let you post the same message twice. Even if it came from a source other than your application. So, you can't post the same update that the user posted directly or came in via Twitter, if they have that set to sync.
If you are getting a specific error I will update my answer with more direct information.