Facebook营销API - 无法创建广告集

时间:2017-03-26 23:01:48

标签: javascript facebook facebook-javascript-sdk facebook-marketing-api

我是facebook营销API的新手。 我能够创建一个广告系列。

但似乎我无法创建Adset。

我尝试使用Javascript发布到Adset: https://graph.facebook.com/v2.8/act_156221465583672/adsets

使用此有效负载:

    var targeting = {
        "age_max": 43,
        "age_min": 18,
        "geo_locations": { "countries": ["US"] }
    };

   var campaignId = "520337003094784508";

    var promotedObject = {
        'application_id': 2242592062246511            
    };

和帖子身体:

    {
        "access_token": accessToken,
        "name": "testNirAd",
        "lifetime_budget": "8000",
        "autobid": "true",
        "start_time": new Date("October 13, 2017 00:00:00"),
        "end_time": new Date("November 13, 2017 00:00:00"),
        "optimization_goal": "POST_ENGAGEMENT",
        "billing_event": "IMPRESSIONS",
        "daily_budget": "2000",
        "campaign_id": campaignId,
        "targeting": JSON.stringify(targeting),
        "status": "PAUSED"            
    }

但是我收到了这个错误:

     {
         "error": {
         "message": "Invalid parameter",
         "type": "OAuthException",
         "code": 100,
         "error_data": {
         "blame_field_specs": [
             [
                "name"
             ]
         ]
       },
       "error_subcode": 2061015,
       "is_transient": false,
       "error_user_title": "Required Field Is Missing",
       "error_user_msg": "The name field is required. Please complete the          
       field to continue.",
      "fbtrace_id": "HFg4HmwbQhG"
   }

}

这很奇怪,因为我有一个名字字段。

然后我尝试使用Javascript SDK https://github.com/lucascosta/facebook-js-ads-sdk,具有相同的有效载荷数据, 这次我得到:        {              代码:1              fbtrace_id:" DcXmP0Wr82Q"              消息:"发生了未知错误。"              类型:" OAuthException"        }

请有人帮忙吗?

2 个答案:

答案 0 :(得分:0)

使用Curl尝试使用不同的参数,得到相同的结果:

curl /
-F 'name=MyFirstTest'  /
-F 'billing_event=IMPRESSIONS' /
-F 'bid_amount=2' /
-F 'daily_budget=1000' /
-F 'campaign_id=120330000094784508' /
-F 'targeting={"geo_locations":{"countries":["US"]}}' /
-F 'start_time=2017-10-14T16:06:09+0000' /
-F 'end_time=2017-11-21T16:06:09+0000' /
-F 'status=PAUSED' /
-F 'access_token= EAAf0hSLb7osBAEgUpUtkGydJ9mmfZCzYumfNVxDFUjBFtx7C8aos3x
LbzjwkZBEbgXkWAT75OvIy6HXNTFBEqN1ca1aVvWT3RQAAKAAi6jYyncTG3m9ae0MkZAM9gZDZD'    
/https://graph.facebook.com/v2.8/act_116221225224746/adsets

得到了:

{"error":{"message":"Invalid     
parameter","type":"OAuthException","code":100,"error_data":  
{"blame_field_specs":[["name"]]},"error_subcode":2061015,"is_transient":
false,"error_user_title":"Required Field Is Missing","error_user_msg":"The    
name field is required. Please complete the field to
continue.","fbtrace_id":"AeI4nngXTmj"}}

fbtrace_id:AeI4nngXTmj

顺便说一句,我使用的是沙箱帐户。

谢谢!

答案 1 :(得分:0)

我建议不要在公共论坛上发布访问令牌。 该错误很可能是格式化问题。

最简单的调试方法是使用Graph API资源管理器工具,它允许您选择应用程序,生成令牌并定义参数。 一旦知道语法正确,就可以获得curl代码。 jwt.io

此外,创建应用广告的代码示例可能会对您有所帮助,尽管它不是JS。 https://developers.facebook.com/tools/explorer/