在没有权限错误的情况下使用Facebook API创建Facebook广告系列和广告集

时间:2017-08-15 19:12:26

标签: javascript jquery facebook facebook-graph-api facebook-marketing-api

我使用Facebook提供的Graph API来制作广告。我做了以下事情:

来自我的网页的

1- FB.Login()具有各自的权限,即{ scope: 'publish_pages, manage_pages, publish_actions,ads_management'}

2-使用me/accounts节点从我拥有的页面进入相应的Facebook页面,然后询问其access_token

3-最后,我使用节点/<advertname>/campaignsPOST来创建广告。返回的回复是[object Object]

我在应用设置中添加了adaccount之后尝试使用Graph ExplorerGraph API Explorer,如某些SO答案和Fb开发者指南中所述。 Screenshot

但它仍会返回相同的错误"message": "(#274) The ad account is not enabled for usage in Ads API. Please add it in developers.facebook.com/apps -> select your app -> settings -> advanced ->...

以下是我在登录时要求的权限:

      FB.login(function(){
// used to get user accessToken
 var pageId = '1928652150728161'; // facebook page id from page info
 var authResp = FB.getAuthResponse();
 var postdesc= "Random Link";
 var jla="So this is it www.facebook.com/2394298374923874928";

 }, { scope: 'publish_pages, manage_pages, publish_actions,ads_management' });

以下是我用来制作广告的代码:

   $("#createAd").click(function(){

                    var advertname;
                    if($("#advertname").val()==""|| $("#advertname").length==0)
                {
                        var timeStampInMs = window.performance && window.performance.now && window.performance.timing && window.performance.timing.navigationStart ? window.performance.now() + window.performance.timing.navigationStart : Date.now();
                        advertname=timeStampInMs+"CustomAdvert";
                }
                else
                        advertname=$("#advertname").val();
                        var idval="myPageid";
                        alert(advertname);
                        //POST /act_XXXXXXXX/campaigns
                var auth = FB.getAuthResponse();


                //make a function call for same later 

                FB.api('/me/accounts', 'get', {access_token : auth.accessToken}, function(response){
                    console.log(response); // this is returning an object with the accounts
                    FB.api('/me/permissions', 'get', {access_token : pageAccessToken}, function(resp){console.log(resp)});


                              // find the page access token for the page we want to admin
                              var pageAccessToken = ''; 
                              for(i in response.data){
                                if(response.data[i].id == idval) {
                                    console.log("here it is bruh" +response.data[i]);
                                    pageAccessToken = response.data[i].access_token;


                                  // do the actual post now
                                  FB.api('/my_adaccountid/campaigns', 'post', {
                                    name: advertname,
                                    objective:"LINK_CLICKS"
                                  }, function(info){
                        console.log(info);// error 100 OAuth

                                  });

                                }
                              }
                    });


            });

我有什么遗失的东西。如何创建此广告系列,以便稍后我可以创建一个adSet以便开始投放。

0 个答案:

没有答案