从处于开发模式的应用创建 Facebook 广告创意

Creating a Facebook ad creative from an app in development mode

我正在尝试使用以下请求从我的测试应用程序在 Facebook 中创建广告创意(大部分来自 Python SDK 文档 here):

Message: Call was not successful
Method:  POST
Path:     https://graph.facebook.com/v2.4/act_somenumber/adcreatives
Params:  {'object_story_spec': '{"link_data":{"caption":"www.example.com","image_hash":"existing_hash","link":"http://example.com","message":"try it out"},"page_id":"some_page_id"}', 'name': 'AdCreative for Link Ad'}

但是,我得到以下响应:

Status:  500
Response:
{
  "error": {
    "code": 100,
    "is_transient": false,
    "error_subcode": 1885183,
    "error_user_msg": "Ads creative post was created by an app that is in development mode. It must be in public to create this ad.",
    "error_user_title": "Ads creative post was created by an app that is in development mode",
    "message": "Invalid parameter",
    "type": "FacebookApiException"
  }
}

现在,我看到了 ,其中指出:

If you want to create ads from an app which is in development mode, this is possible, but the post you're going to promote must have been created by an app which isn't in development mode - i.e if your app is in development mode it's OK provided you're promoting existing page posts from a page's /promotable_posts endpoint and the app that created those posts is not itself in development mode

我不是要制作广告;我只是想创建一个广告创意,然后更新广告以使用该创意。使用来自开发应用程序的 link 数据创建新广告素材的正确方法是什么?我可以轻松创建与右侧栏广告相对应的广告创意,它是目标为 "Website Clicks" 的新闻提要/提要广告。有问题的广告实际上是通过广告管理器创建的,而不是通过应用创建的。

解决方法就是创建一个虚拟应用程序并将其设置为公开可见。