【问题标题】:Cannot create an ad or ad creative via the facebook API无法通过 facebook API 创建广告或广告素材
【发布时间】:2019-01-20 15:12:18
【问题描述】:

所以我正在使用 facebook API 处理一个项目,以便我们可以制作广告(是的,我知道您可以通过 facebook 广告管理器来完成,但我的公司希望我创建我们自己的界面)。无论如何,我可以通过 API 创建广告系列和广告集,但我似乎对广告和/或创意没有任何运气。

{message: "Invalid parameter", exception: "FacebookAds\Http\Exception\AuthorizationException",…}
exception
:
"FacebookAds\Http\Exception\AuthorizationException"
file
:
"/Users/bradgoldsmith/Desktop/SquibLib/vendor/facebook/php-ads-sdk/src/FacebookAds/Http/Exception/RequestException.php"
line
:
144
message
:
"Invalid parameter"
trace
:
[{,…}, {,…},…]

这是我似乎遇到的错误,从外观上看,它与授权有关,但我能够创建广告系列和广告组,所以我认为我已获得授权。我只是在我是管理员的页面上测试虚拟数据。任何正确方向的建议或指示将不胜感激。

【问题讨论】:

    标签: laravel facebook api sdk


    【解决方案1】:

    因此,授权问题与我们的应用仍在审核中有关。但是,我可以通过他们的 API 使用这段代码创建轮播广告/广告创意,这些代码也是从他们的文档中获得的。无论如何,对我有用的代码在这里:

        $product1 = (new AdCreativeLinkDataChildAttachment())->setData(array(
      AdCreativeLinkDataChildAttachmentFields::LINK =>
        'https://www.link.com/product1',
      AdCreativeLinkDataChildAttachmentFields::NAME => 'Product 1',
      AdCreativeLinkDataChildAttachmentFields::DESCRIPTION => '$8.99',
      AdCreativeLinkDataChildAttachmentFields::IMAGE_HASH => '<IMAGE_HASH>',
    ));
    
    $product2 = (new AdCreativeLinkDataChildAttachment())->setData(array(
      AdCreativeLinkDataChildAttachmentFields::LINK =>
        'https://www.link.com/product2',
      AdCreativeLinkDataChildAttachmentFields::NAME => 'Product 2',
      AdCreativeLinkDataChildAttachmentFields::DESCRIPTION => '$9.99',
      AdCreativeLinkDataChildAttachmentFields::IMAGE_HASH => '<IMAGE_HASH>',
    ));
    
    $product3 = (new AdCreativeLinkDataChildAttachment())->setData(array(
      AdCreativeLinkDataChildAttachmentFields::LINK =>
        'https://www.link.com/product3',
      AdCreativeLinkDataChildAttachmentFields::NAME => 'Product 3',
      AdCreativeLinkDataChildAttachmentFields::DESCRIPTION => '$10.99',
      AdCreativeLinkDataChildAttachmentFields::IMAGE_HASH => '<IMAGE_HASH>',
    ));
    
    $link_data = new AdCreativeLinkData();
    $link_data->setData(array(
      AdCreativeLinkDataFields::LINK => '<URL>',
      AdCreativeLinkDataFields::CHILD_ATTACHMENTS => array(
        $product1, $product2, $product3,
      ),
    ));
    
    $object_story_spec = new AdCreativeObjectStorySpec();
    $object_story_spec->setData(array(
      AdCreativeObjectStorySpecFields::PAGE_ID => <PAGE_ID>,
      AdCreativeObjectStorySpecFields::LINK_DATA => $link_data,
    ));
    
    $creative = new AdCreative(null, 'act_<AD_ACCOUNT_ID>');
    $creative->setData(array(
      AdCreativeFields::NAME => 'Sample Creative',
      AdCreativeFields::OBJECT_STORY_SPEC => $object_story_spec,
    ));
    
    $creative->create();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-29
      • 1970-01-01
      • 1970-01-01
      • 2015-10-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多