如何解决Facebook Marketing API Placement 资产自定义 asset_feed_spec 错误
我一直在尝试根据展示位置(facebook-feed、messenger-story)自动生成具有不同内容的广告。我一直在努力遵循文档。
但由于某种原因,它返回一个错误,指出整个 object_story_spec 是错误的。但这可能与我的 asset_Feed_spec 有关系,因为这是我唯一一直在改变的东西。
object_story_spec param is invalid
Object story spec is ill formed. Maybe missing Page ID or creative details,or invalid fields exist
以前有人试过这样做吗?或者有什么办法可以让我得到更清晰的错误信息?
这是我在尝试创建广告素材时使用的代码。
$creative->setData([
AdCreativeFields::CALL_TO_ACTION_TYPE => $callToAction,AdCreativeFields::IMAGE_HASH => $image_hash,AdCreativeFields::OBJECT_STORY_SPEC => $object_story_spec,AdCreativeFields::ASSET_Feed_SPEC => $this->getAssetFeedSpec($post_message,$link_url,$headline,$image_hash,$description)
]);
为了使其更具可读性,我创建了一个函数来创建不同的资产提要规范。要更好地理解它,请参阅文档中的示例。
public function getAssetFeedSpec($post_message,$description) {
return [
'images' => [
[
'hash' => $image_hash
]
],'bodies' => [
[
'adlabels' => [
[
'name' => 'labelfirst',]
],'text' => $post_message
],[
'adlabels' => [
[
'name' => 'labelsecond','text' => $headline
]
],'titles' => [
[
'text' => $headline
]
],'descriptions' => [
[
'text' => $description
]
],'ad_formats' => [
'SINGLE_IMAGE'
],'call_to_action_types' => [
'LEARN_MORE'
],'link_urls' => [
[
'website_url' => $link_url
]
],'videos' => [],'asset_customization_rules' => $this->getAssetCustomizationRules()
];
}
我还分离了 asset_customization_rules 以使其更易于理解。
public function getAssetCustomizationRules() {
return [
[
'customization_spec' => [
'publisher_platforms' => [
'facebook','instagram','audience_network','messenger'
],'facebook_positions' => [
'Feed',],'instagram_positions' => [
'stream'
],'audience_network_positions' => [
'classic'
]
],'body_label' => [
'name' => 'labelfirst'
]
],[
'customization_spec' => [
'publisher_platforms' => [
'messenger'
],'messenger_positions' => [
'stream'
]
],'body_label' => [
'name' => 'labelsecond'
]
]
];
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。