To get Open Graph action running against my app this is what I'm trying to do:
Create the actions and the objects
Create the object metafile
Publish the actions
This didn't work for the Admin itself because too many errors got generated by FB
Errors were generated since the actions weren't approved and publishing those actions was failing for my current user base.
To get around the errors (which is blocking the approval of my actions from FB), I blocked out my user base from publishing the actions and put filters in for the Admin, developers and testers (that is, only publish requests originating from these accounts go through)
Is there a better way of getting this done?
That's correct. The actions should only be enabled for test users / admins / devs of the application until Facebook has approved the action. However, if the publish action fails, you should fail gracefully in any case. The user shouldn't know there was an error, but you should log it for debugging later on.
Related
We implemented the Marketing API into our company's order management system to automate the creation of ad campaigns. A system user was created with the proper permissions, and the integration has been working. We're only using the API for our own ad account and pages, which we of course own. The "Facebook App" is set to live mode and has been for a couple weeks now.
But starting sometime today, we have been getting errors saying that the ads_read and ads_management permissions are required. And sure enough, they are indeed missing from the access token for the system user when I use the access token debugger.
What would have caused the system user to be missing these permissions all of a sudden? We are still on the dev tier and have only recently reached the 1,500 calls required to request standard access. That's the only thing I can think of so far, but is that the reason we suddenly don't have the proper permissions, or could it be something else? I haven't read anywhere in the documentation that we would lose these permissions upon reaching 1,500 calls, and I was planning on requesting the standard access next.
Also, I have read in various spots: "You do not need to submit your app if it will only be used by you or by a reduced number of people." That is actually our case, as we are only using a system user for the API calls, and there are only a few users tied to the Facebook ad account. So, do we need to submit our app for review?
Thanks in advance.
I'm building an application that needs to read Facebook ads information and I'm running into an issue, which to me seems strange.
When I access the campaigns for my adaccounts using https://graph.facebook.com/v2.10/me?fields=adaccounts{campaigns} it works and I can see the campaigns and their properties.
When I change the request to access the campaign to https://graph.facebook.com/v2.10/[campaign_id] it results in an error which says:
(#272) This Ads API call requires the user to be admin of the application. User is not admin or developer of this application.
I can see the properties of the campaigns using "me" as the first Node in the request.
Any idea why can't I access the campaign using a request where the campaign is the first Node? What could be the reason behind this problem?
I've read many posts on this and I found that this is most likely a permissions issue or token issue.
First of all, could you please try to login as the user, and then go to Facebook Ads Manager or Power Editor to check if the user still has permissions on the account?
If you can still see and edit the ad account, then you would need to report this issue at https://developers.facebook.com/bugs/ instead.
This could also be one of the explanation.
This may be due to your ad account is inactive or in a bad standing. Additionally if your access level of your ad account is in development level these types of errors may occur. please go through what's mentioned on the doc here If you upgrade your account to basic or standard access levels this will be solved.
On development access level only end to end workflows are suggested. The following text is extracted from facebook documentation.
The development access level is designed for development purposes and
is ideal for people who are just starting to build out their tool. In
this level, you would not yet have customers using your tool. This
level is open to all developers, and is intended to build out
end-to-end workflows on the API before you get full permissions.
All I want to do is post to my facebook app wall with my website after certain actions occur on the website...used to work however at some point I started neglecting my code and it stopped working..
So now I want to get it working again however I believe I am having an issue with permissions that I can't seem to get around, as when i attempt to post from my website it is returning the error:
*** GraphAPIError: (#200) The user hasn't authorized the application to perform this action
I applied for the following permissions:
manage_pages and publish_pages
But I am now told the following:
General You don't need any additional permissions to post to Pages or
blogs that you administer. You only need to submit your app for review
if your app will use a public-facing login.
So wondering if anybody can tell me the steps to submit my app for review. Not seeming to see how to do that seemingly most basic action.
Thanks.
You don’t need to submit for review, if you are the only one using the app.
https://developers.facebook.com/docs/apps/faq#roles
I have a site that logs in using Facebook. The first time a user logs in, they get a pop up from Facebook explaining all the parts of the user FB profile my site will have access to. After accepting once, though, they don't get this pop-up on subsequent visits. Is there a way I can ensure that the user always sees this popup?
Update:
I'm trying to find a way to do this during development, so that I can see the list every time. I don't really need this in production.
they see it because it's the standard OAuth workflow to accept the terms of the application they are authorizing through facebook. Once the auth is complete, they are sent directly through, no reason to ask them for auth over and over.
EDIT:
Based on your update, the list is visible through your application settings in Facebook. you can use facebook's api to get these users.
You can build a "Fake Login" - there you can show your terms again. So your clients got a better feeling. ;-)
I'm trying to submit for my application a Facebook open graph action of Read. But when i submit it i got the following response.
We are unable to test this action according to the usage instructions
you provided. Please provide thorough reproduction instructions and
link(s) to a specific URL where we can trigger the action. You should
also test your action to ensure you can successfully publish actions
back to the timeline of the test user named Auth Dialog Preview User.
Once you have made these changes, re-submit your action.
I can understand the first part, but I don't understand the following parts.
You should also test your action to ensure you can successfully
publish actions back to the timeline of the test user named Auth
Dialog Preview User. Once you have made these changes, re-submit your
action.
What does this means and how can I fix them? Thanks
It means you have to use the automatically created test user for your app called 'Auth Dialog Preview User' and post some of the actions from that user's account.
https://developers.facebook.com/docs/test_users/ explains how test users work in general, you can log in as them via the app settings interface