次のリクエストを使用して、テスト アプリから Facebook で広告クリエイティブを作成しようとしています (ほとんどの場合、Python SDK のドキュメントはこちらから取得されています)。
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"
}
}
今、私は同様の質問を見てきました。
開発モードのアプリから広告を作成することは可能ですが、宣伝しようとしている投稿は、開発モードではないアプリによって作成されたものである必要があります。つまり、アプリが開発中の場合です。ページの /promotable_posts エンドポイントから既存のページ投稿を宣伝し、それらの投稿を作成したアプリ自体が開発モードでない場合は問題ありません。
広告を作成しようとしているわけではありません。広告クリエイティブを作成し、後でそのクリエイティブを使用するように広告を更新しようとしているだけです。開発アプリからのリンク データを使用して新しいクリエイティブを作成する正しい方法はどれですか? 右側の列の広告に対応する広告クリエイティブの作成に問題はありません。それは、目的が「ウェブサイトのクリック」であるニュースフィード/フィード広告です。問題の広告は、実際にはアプリではなくアド マネージャーで作成されたものです。