2016-02-08 56 views
1

我想用api创建一个广告素材。当我发布object_story_spec参数,我得到这个错误'创意规格必须是一个关联数组(可选json编码)'object_story_spec规范必须是关联数组

这是我的json值它是有效的。

{ "page_id" : "103830656322074", "link_data": { "call_to_action": {"type":"LEARN_MORE","value":{"link":"facebook.com/"}}, "caption": "Reklam #1", "name": "Reklam #1", "link": "facebook.com/", "message": "facebook.com/" }} 

developers.facebook.com/docs/marketing-api/reference/ad-creative#Creating

+0

我解决了我的问题,升级帐户开发人员到基本帐户 –

回答

0

应该是这样的东西。

object_story_spec={ 
        "page_id": "<PAGE_ID>", 
        "video_data": { 
         "call_to_action": {"type":"LIKE_PAGE","value":{"page":"<PAGE_ID>"}}, 
         "description": "try it out", 
         "image_url": "<THUMBNAIL_URL>", 
         "video_id": "<VIDEO_ID>" 
        } 
        } 


Or 

$object_story_spec = new ObjectStorySpec(); 
     $object_story_spec->setData(array(
      ObjectStorySpecFields::PAGE_ID => <PAGE_ID>, 
      ObjectStorySpecFields::LINK_DATA => <LINK_DATA>, 
     )); 

$creative = new AdCreative(null, 'ad_Acount_id'); 
     $creative->setData(array(
      AdCreativeFields::NAME => 'Sample Creative', 
      AdCreativeFields::OBJECT_STORY_SPEC => $object_story_spec, 
     )); 
0

您应该在传入如下所示的广告素材之前先登录$ object_story_spec。

$object_story_spec = urlencode($object_story_spec); 
$creative = new AdCreative(null, 'ad_Acount_id'); 
     $creative->setData(array(
      AdCreativeFields::NAME => 'Sample Creative', 
      AdCreativeFields::OBJECT_STORY_SPEC => $object_story_spec, 
     ));