2015-02-24 239 views
1

使用Facebook Ad Api,虽然我创建了广告系列,AdSet和AdCreative,但无法创建广告(组)。 我遵循了指导手册(带有所有必需的参数)。我无法通过谷歌搜索找到答案....出了什么问题? (我刚刚发现需要ADGROUP_STATUS的更改)Facebook广告API,我无法创建广告(组)

------------ PHP Codes ----------------- -

use FacebookAds\Object\AdGroup; 
use FacebookAds\Object\Fields\AdGroupFields; 

$adgroup = new AdGroup(null, $account->id); 
$adgroup->setData(array(
    AdGroupFields::CREATIVE => array('creative_id' => $creative->id), 
    AdGroupFields::NAME => 'My First AdGroup', 
    AdGroupFields::CAMPAIGN_ID => $adset->id, 
    AdGroupFields::ADGROUP_STATUS => 'ACTIVE', 
)); 


$adgroup->create(); 
+0

我也有同样的问题,如果我找到解决方案,我会发布它如果你找到它,请回答你的问题,并让我知道。 – 2015-03-24 01:47:01

回答

1

如果使用下面的代码卷曲,卷曲上Facebook的错误消息是更具描述。这是一种令人遗憾的失败,这种性质的消息不会传递给php广告api。相反,你只是得到“无效参数”

curl -X POST -F "name=My Ad" -F "campaign_id=<ADSET_ID>" -F "creative={'creative_id': <CREATIVE_ID>}" -F "adgroup_status=<STATUS>" -F "access_token=<ACCESS_TOKEN>" "https://graph.facebook.com/v2.2/act_<ad account id>/adgroups 

您可能会收到此消息。

{"error":{"message":"Invalid parameter","type":"FacebookApiException","code":100,"error_data":{"blame_field_specs":[["account_id"]]},"error_subcode":1359101,"is_transient":false,"error_user_title":"Add Payment Method","error_user_msg":"You need to have a valid payment method associated with your ad account before you can create ads."}} 

这意味着,因为你这个开发和可能使用一个测试应用程序与你的用户ID你没有意识到,Facebook的仍然需要你有广告有效的付款方式,以便甚至创造暂停广告与测试应用程序。

我建议您从暂停的广告开始,因为您可能不想在测试期间为其付费。

我猜的说法可能我做的(为什么为了创造出一个暂停的应用程序}而且你可能会说,除非满足所有要求的测试是无效的需要现场支付凭证。

希望这这是我的问题