每次创建或更新Ad
的广告素材时,都会出现此错误:
{
"error": {
"message": "Invalid parameter",
"type": "OAuthException",
"code": 100,
"error_subcode": 1772103,
"is_transient": false,
"error_user_title": "Instagram Account Is Missing",
"error_user_msg": "You're using Instagram as a placement. Please select an Instagram account to represent your business in your Instagram ads, or select a Facebook Page to use instead.",
"fbtrace_id": "..."
}
}
但是,我要做的只是为特定的Ad
创建一个Page Post
并将其添加到现有的AdSet
中。要为给定的Post
创建新的广告,我使用/adcreatives
端点并传递以下内容:
POST: https://graph.facebook.com/v3.1/act_<ActId>/adcreatives
{
"name": "Test",
"object_story_id":"<PostIdWithPage>",
}
到目前为止,这个方法工作正常。但是Ad
的以下更新导致上述错误:
POST: https://graph.facebook.com/v3.1/<AdId>
{
"creative": {
"creative_id": "<CreativeId>",
}
}
我猜想,当我尝试向Ad
添加无法在Instagram上使用的广告素材时,会发生上述错误。
但是为什么它不能像业务管理器那样工作?在这里,我只需为新创建的广告选择一个帖子。如果此帖子对Instagram无效,则显示警告,但仍然有效。
因此,当我想创建一个可以根据给定帖子创建广告的工具时,该如何实现?我们如何解决上面的错误?
答案 0 :(得分:2)
这里重要的缺失部分是,在创建instagram_actor_id
时必须指定AdCreative
。可以通过获取<PageId>/page_backed_instagram_accounts
来检索ID。
答案 1 :(得分:1)
在接受答案之前,我需要更多信息以将instagram帐户正确连接到我的页面:
有两种方法可以将instagram帐户链接到您的页面:
1。设置一个“ Page Connected” Instagram帐户
以页面管理员身份登录,进入页面设置> instagram并链接 页面上已有的instagram帐户。
然后您可以通过执行GET获取链接的instagram帐户ID:
<PageId>/instagram_accounts
2。创建一个“ Page Backed” instagram帐户。
这是当您没有现有的instagram帐户时要链接到页面,而是想基于页面创建一个“影子” instagram帐户。
您可以通过在以下端点上执行POST,来生成一个有页面支持的instagram帐户。并通过执行GET来检索现有的。
<PageId>/page_backed_instagram_accounts
**请注意,这两个端点都要求您具有“页面访问令牌”,而不是用于创建广告的常规“帐户访问令牌”。
要获取页面访问令牌,可以在以下位置执行GET请求:
/me/accounts
然后,如接受的答案所述-在广告创意请求中,将新的链接的instagram帐户ID作为instagram_actor_id
传递。
来源:
https://developers.facebook.com/docs/marketing-api/guides/instagramads/ https://developers.facebook.com/docs/facebook-login/access-tokens#pagetokens