Sample App Review Submission for Marketing API

Let's say you are providing a browser-based app that clients will use to run ads on Facebook. To access the clients' advertising data, you use the Marketing API.

Your company hosts the app on your own web server. The app will create and run ads on your clients' behalf. You have implemented Facebook Login, because your app needs clients to grant the ads_management permission. With this permission, your app can access the clients' data like ad accounts, campaigns, and product catalogs. To make the app available to your clients, you also need to be approved for the Ads Management Standard Access level.

We assume that you've read the description of the Standard Access level and ads_management permission, as well as our Platform Policy, and verified that your app uses data in an approved manner. Your app is now ready for public release, so you begin the App Review process.

Adding Permissions

You sign into your App Dashboard and click on your app. Under Products, click Marketing API > Settings. If Marketing API does not appear under Products, click the + icon and add it.

Click Add to Submission for the ads_management permission and the Ads Management Standard Access level.

Describing Data Usage

Now you describe how your app will use the data to which you are requesting access. Scroll down to the Current Submission section. In the ads_management section, click Edit Details.

After you agree to our permission and feature usage guidelines, you provide a general description of what your app does, then explain how the ads_management permission will help the people using your app. You enter the following description in the Tell us how you're using this permission or feature section:

"The app is used by advertising account managers to set up ad campaigns, manage ads, and view reports that show metrics about ads. The ads_management permission allows them to get data about existing Facebook ads and to create ads. Without this permission, the app can't function."

In the Demonstrate how your selected platforms will use this permission or feature section, you switch the Web toggle to On, since your app is a web app.

In the field that appears, you enter instructions that a submission reviewer can follow to verify that your app uses ads_management in the way you have described. You also indicate when this happens in the screencast that you will upload later. You enter the following:

"To see how our app uses these permissions:

  1. Go to
  2. Log in with your Facebook account.
  3. In our left nav, click Accounts.
  4. Choose the test_account. (Users can associate other Facebook ad accounts with the app; we have pre-populated it with this test account that we set up just for app review.)
  5. You should see a page that lists the campaigns associated with this account.
  6. Click the test_campaign, then under Ad Set, click Create.
  7. You should see a UI where you can create a new ad set.
  8. Under Ads, click Create. You should see a UI where you can create a new ad, including uploading images or video.
  9. Go back to the left nav and click Reports.
  10. You should see a screen where you can make choices to set up reports.

The accompanying screencast shows ads_management being used whenever the user displays ad information or a new entity is saved: for example, at 00:10, 00:18, 00:32, 1:12, and 1:19.”

You click Save. In the Ads Management Standard Access section, click Edit Details, and repeat these steps. Provide a detailed description of why you need Standard Access:

“Our app is out of the trial and testing phase, and we are ready to release it. We already have several customers signed up and waiting, so we need access to more resources, such as a higher rate limit.”

In the Web instructions field, paste the same step-by-step testing instructions that you provided for ads_management.

Uploading a Screencast

In the Upload Screencast section, you click Upload File to upload a screencast of someone signing into your app and exploring the user interface in the same way you described in the instructions you provided. Ideally, a screencast like this should be as short as possible — two minutes or less.

You upload the following screencast and click Save. The screencast shows the same steps that you described earlier.

Something Went Wrong
We're having trouble playing this video.

In the the ads_management section, click Edit Details, and repeat these steps. You can upload the same screencast.

Verification Details

Finally, you verify that your app is accessible and ready for review, and provide any test user or special test account credentials that a reviewer will need to test your app.

In the App Verification section, click Edit Details.

The App Verification Details form appears. All of the permissions that your app requires can be granted and tested with a standard Facebook account, so you leave the Test User field blank. Reviewers can use their own Facebook test accounts.

Your app doesn't require any special credentials to be tested, such as a CRM login or password, so you leave the Testing Credentials field blank.

You then check the confirmation checkbox and click Save.


You've supplied everything a reviewer will need to verify that your app uses the ads_management permission and Ads Management Standard Access level in an approved manner, so you click Submit For Review.