Facebook Marketing API ads_management review - facebook

We're trying to use the Facebook Marketing API ads_management permission. We want to use the permission to allow our clients to push the media that was created for them on our app to their personal ad manager
Based on their allowed usage, it sounds like we're utilising this correctly but every app review is being rejected with a fairly generic
Your screencast doesn't show how the use of this permission directly improves the user experience in your app. Unfortunately, we also weren't able to determine this from testing your app manually.
For the first point - our screencast shows a brand/client navigating our app to where all their media lies - connect their facebook account - select the media and then push to the ad manager
This gives us the correct response as long as we use their sandbox environment on the Marketing API
On the second point Unfortunately, we also weren't able to determine this from testing your app manually
We provide test credentials for them to login into our application and go through the exact steps demonstrated in the screencast.
I know these reviews have been giving a number of developers issues but would love to hear if we're missing something really basic in our use because the usecase is really straightforward and not really sure how else to demonstrate it
Thanks

Related

How to provide an Facebook app review screencast for an app with no UI?

I’m trying to automate creation of ad accounts for my own business, and then upload custom audiences into these ad accounts. I wish to do this using a system user.
I have written some scripts to automate this process, but I am unsure how to receive the appropriate permissions from Facebook as I can not create a screencast, as my scripts has no UI. It’s just a collection of scripts.
Some research has a said that if apps only talk to a small number of accounts, you can just leave apps in dev mode to avoid going through app review, but I don’t think that’s possible in this case for the following reasons.
When my app is in dev mode, and I try to POST to https://graph.facebook.com/v7.0/<my-business-id>/adaccount to create a new ad account in my business, I get the error: "(#270) Development access is not allowed to access business API post:Business/adaccount.” OK. So my app has to be live for me to use this end point. If I set my app to Live, and then try to hit this end point, I get this error "(#294) Managing advertisements requires an access token with the extended permission for ads_management”
Then, looking at the permissions screen in my app, it appears I need to submit an app review with a screencast to be able to use the ads_management permission.
Additionally, if I want to use a system user, I can only approve permissions that have been approved by the app review process.
Given that my app has no UI (and nothing to screencast) how should I proceed? Or am I missing a way to do this without going through the app review process?
Facebook as provided instructions on how to submit those kinds of apps here, https://developers.facebook.com/docs/apps/review/server-to-server-apps:
If your app has no user interface because it exchanges data directly with our APIs, refer to this guide when configuring your app's Basic Settings, and when completing App Review.

Is Instagram Content Publishing API available in a test environment without being a partner?

I'm looking at setting up an Instagram app so I can push content from my app directly to Instagram. I'm already doing this for Facebook, LinkedIn, and Twitter.
I know that Instagram is in the middle of moving to the Facebook Graph API, and it seems like there are several barriers to even start developing an app.
At the top of the Getting Started link there's a blurb stating that I need to undergo "Business Verification" to use the Instagram Graph API. Do I need to do this in order to use these endpoints in sandbox mode? (Edit: I believe this must be done in order to test the non-beta aspects of the API) In addition, the Content Publishing API seems to be locked down even further, requiring parternship with either Facebook or Instagram, and neither are accepting new applications.
Is there some way to test this in sandox mode without becoming a partner?
(Edit: Testing your app Suggests that I must do business validation in order to use the non-beta aspects, and there's no permission for publish_content, leading me to believe that I must be a business partner to even test this feature. Can anyone confirm?)
Januray 26, 2021
The Content Publishing beta has ended and all developers can now publish media on Instagram Professional accounts. Refer to the Content Publishing guide for usage details.
https://developers.facebook.com/docs/instagram-api/guides/content-publishing

App Review on Facebook - Private Software that may scale up in the future

So we've developed a Facebook App (and similar apps on Twitter and Instagram) that allow users to post and read content using an external system. We'll sell this integration directly to our clients, so it's a private application.
Basically the user will see a very simple page with a button "Log in to Facebook" and a disclaimer regarding the authorization (we'll use some query params fixed in the url, depending on the client). The client authorize us and we capture the access tokens.
To submit the app review, though, we have to explicitly give a test user to the reviewers, but that's not really possible because the real "action" happens within the integrated systems, NOT within the app itself. And those systems are not public (they shouldn't be).
So just to be clear: our app is basically a very simple "Facebook login" that we use to get tokens, generated by specific clients authorization. It's not going to be published anywhere.
Until we have around 5 to 10 clients we can add the specific users in our app as Testers/Admins/etc, but what if we scale up? Say we have 20 clients. How are we supposed to get our app to be "live"?
To follow the app review steps we would have to create some users in our local systems (we have some dev environments), open them to the internet so the reviewers can log in and see how it actually works? Is that it?
(btw I'm asking this because our app review was rejected twice and I want to make sure I'm submitting everything they ask this time).
Thanks :)
I think the Login Review FAQ answers most of your questions. The key point:
Our review team will actually test how your app uses each permission on every platform you have listed in the settings section of your app.... You'll need to explain exactly how to test each permission or feature in your app so that we can make sure it works and follows our policies. We can't approve your app if we can't fully test how it integrates with Facebook.
In other words, it's not enough to just allow them to log in to your app, you have to expose all Facebook-related features to the reviewer.
To follow the app review steps we would have to create some users in our local systems (we have some dev environments), open them to the internet so the reviewers can log in and see how it actually works? Is that it?
Yes, though I'm not sure what you mean by "open them to the internet". You should be able to create a test user on your local system and link that account to a test Facebook user. Then you can have the Facebook reviewer use that test account for their review. (From the FAQ: "In the Items in Review section, you'll see a Test User (optional) section that allows you to type the name of the user you wish to be used in your review.")

Facebook App with Standard Setting without Ad Management

We have tried to create an App that will be able to access only Reporting and Insights for a user via Marketing Insights API. I have noticed that the requirement for Basic access is listed as:
"Apps should create sufficient ads that pass ad review and do not contain bad creatives"
But my App is NOT intended to create ads. It is a data reporting App and without standard access I have to add each user into Ads API under Advertising Accounts section of the App Settings. I would like to use this app across FB accounts of my clients to only pull data related to the ads. Could you please help me understand how to accomplish this without having to create a separate Dev app for each client?
You could try to apply directly for the Standard Access tier. In that form you can explain your use case and then it will be processed.
I would advise to already make various valid requests from your Development Tier to show you have a correct implementation.

How to get access to twitter ads api?

after a lot of back and forth with the Twitter documentation I am now able to authenticate with OAuth 1.0 and make request behalf on the user who sign-ined and accepted my app to preform changes / retrieve data.
Now, I'm trying to make requests to the Twitter Ads API.
This is the error I get:
{"errors":[{"code":"UNAUTHORIZED_CLIENT_APPLICATION","message":"The client application making this request does not have access to this API"}],"request":{"params":{}}}
As it seems, there is a need of another app registration. I registered it with my app id, assuming the 'developer' stage is the fit for me. I'm trying to retrieve analytics, e.g., retrieve campaigns for the user who accepted it.
After registration the Ads App Form, the error stays the same. The docs don't specify if there is a need for a special implementation for the ads-api. Also, the Ads App I opened isn't mentioned anywhere, nor in my twitter apps.
Am I missing something?
Thanks before.
Looking at Twitter ads API documentation, getting access is a pretty involved process. From their site, you'll need:
One positive referral from a client, advertiser or Twitter team
(outside of Ads API)
Clear value proposition on how how your solution
will supplement the Twitter ads offering and improve advertiser
performance
History of compliance with Twitter developer policies
Experience running Twitter Ads
Twitter App ID associated with a corporate #username, with no more than 5 active tokens
It seems a little overkill, but I haven't seen any other way around it. If you find a better way to get ads API access, please post another answer here because I have a potential project that would use these APIs, but the application process has been too daunting to really justify starting the effort.
As of Sept 2016, the application process appears to be much easier.
It appears you no longer need positive referrals, value props, history, or experience running Twitter ads.