标签: facebook-marketing-api

Facebook Marketing API资产访问突然被拒绝

我维护了几个Facebook Marketing API PHP集成。他们将广告系列中的数据提取到仪表板中。由于这些是供特定客户端访问其自己的数据的,因此我将它们保持在开发模式,因为我不希望它们公开可见。今天早上10点,API突然开始拒绝与这两个应用程序的连接。我得到的错误是:

“ error_user_title”:“无法在开发模式应用中访问特定资产”,

“ error_user_msg”:“您的查询涉及了一些在开发模式应用程序中无法查看的业务资产。请确保开发人员模式应用程序正在访问的所有业务资产与该应用程序位于同一业务中,或者如果应用程序没有,则位于调用方的下方“没有业务。开发模式应用和访问资产不属于同一业务”,

我经历了应用程序设置,相关业务仍与该应用程序相关联。我验证了所有凭据,而且看起来一切都很好。这在两个配置类似的应用程序中同时发生。

我的代码没有任何变化,并且由于这同时发生了两个两个不同的应用程序和两个不同的帐户,我认为Facebook刚刚做了一些更改。

有人知道怎么修这个东西吗?

facebook-marketing-api

12
推荐指数
1
解决办法
538
查看次数

将Facebook广告系列目标与洞察操作类型相匹配

Facebook的广告中有一个客观这里列出(PAGE_LIKES,VIDEO_VIEWS,等).

Facebook的见解列表中的用户行为这里列出(like,video_view,等,但也有一些缺失,unlike例如).

问题是:客观和行动不匹配.例如,有一个PAGE_LIKES目标和一个like动作.

Facebook电源管理器中有一个"结果"列,为每个广告系列提供与广告系列目标匹配的用户操作计数(在下图中获得992like).

电源管理器

似乎在洞察中没有这样的东西(在api和sdk中都没有),那么识别广告系列转换计数的正确方法是什么(在电源管理器中命名为"结果")?

我们必须手动维护PAGE_LIKES <-> like吗?如果是这样,那么正确的映射是什么?

facebook facebook-graph-api facebook-ads-api facebook-php-sdk facebook-marketing-api

9
推荐指数
1
解决办法
1141
查看次数

消息“应用程序没有能力进行此 API 调用。” 在 API '/adcreative'

我正在尝试使用Facebook Marketing APIFacebook Python Business SDK创建自动 Facebook 广告。到目前为止,我成功地发布了新的活动和广告集,但是当我尝试创建广告创意时,它返回消息“应用程序没有能力进行此 API 调用。”。

  Message: Call was not successful
  Method:  POST
  Path:    https://graph.facebook.com/v3.0/act_xxxxxx/adcreatives
  Params:  //XXX
  Status:  400
  Response:
    {
      "error": {
        "message": "(#3) Application does not have the capability to make this API call.",
        "code": 3,
        "fbtrace_id": "xxxxxx",
        "type": "OAuthException"
      }
    }
Run Code Online (Sandbox Code Playgroud)

我的用户令牌权限有ads_managementads_read,应用程序也有ads_readsads_management

还有什么我想念的吗?

在此处输入图片说明

在此处输入图片说明

facebook-marketing-api facebook-python-business-sdk

9
推荐指数
0
解决办法
1897
查看次数

Facebook Marketing Api 错误:(#2635) 您正在调用 Ads API 的弃用版本。请更新到最新版本:v3.2。”

尝试使用 Facebook Marketing API 时,出现错误

Response:
{
  "error": {
    "message": "(#2635) You are calling a deprecated version of the Ads API. Please update to the latest version: v3.2.",
Run Code Online (Sandbox Code Playgroud)

如何将 facebook 营销 api 版本从 v3.0 升级到 v3.2?

当我去“API升级工具”时;没有任何显示,如下图所示。

我已经在营销 api 设置中将 api 版本 v3.0 更改为 v3.2,但发生了同样的错误。

请告诉我如何将 Marketing API 从 v3.0 升级到 v3.2。

api facebook facebook-marketing-api

9
推荐指数
1
解决办法
1万
查看次数

如何在单个查询+ Facebook营销API中获取所有广告系列的见解

我想用Python编写查询,我希望单个请求中的所有广告系列性能详细信息.

如何在Python Query中转换下面的图形api请求?

/<version>/act_<ACT_ID>/campaigns?fields=insights.fields(actions_results)
Run Code Online (Sandbox Code Playgroud)

我尝试使用下面的查询,但发送多次向Facebook发送请求是错误的想法,Facebook也阻止用户30分钟.

fields = [Insights.Field.cpm,
          Insights.Field.cpp]

class Fb_insights(object):

    def __init__(self, app_id, app_secret, access_token):
        FacebookAdsApi.init(app_id, app_secret, access_token)

        # Add after FacebookAdsApi.init
        me = AdUser(fbid='me')
        self.my_account = me.get_ad_accounts()[0]

    def campaign_reports(self, since, until):
        params = {
           'level': Insights.Level.campaign, 
           'time_range': {
                'since': since,
                'until': until,
            },
        }

        for campaign in self.my_account.get_campaigns():
            for stat in campaign.get_insights(fields=fields,
                                                  params=params):
                print(stat)
Run Code Online (Sandbox Code Playgroud)

不好的是我通过为每个广告系列调用"get_insights()"来发送请求.

UPDATE

我还尝试直接获取洞察信息,下面的代码只返回1个广告系列详细信息,而我有1个有效广告系列和87个未投放广告系列,也更新level=campaign了参数

for insight in self.my_account.get_insights(fields=fields, params=params):
    print insight
Run Code Online (Sandbox Code Playgroud)

查询: 通过使用我的更新代码,如何使用单个查询获取所有已投放和未投放的广告系列?

python facebook-graph-api facebook-ads-api facebook-insights facebook-marketing-api

8
推荐指数
2
解决办法
1万
查看次数

使用Facebook Marketing API中的活动日志端点

https://developers.facebook.com/docs/marketing-api/reference/ad-activity

我有兴趣加载广告级别广告帐户中的所有历史决策(例如,每当预算更新时).看起来这正是我应该使用的端点,但文档看起来不完整.

任何人都可以粘贴一个如何正确调用此端点的示例吗?

facebook-marketing-api

7
推荐指数
1
解决办法
443
查看次数

如何检索我所有活跃的Facebook广告?

我正在为自己创建一个仪表板,帮助我跟踪我正在运行的Facebook广告.

我无法弄清楚的是:

如何为所有处于活动状态的广告检索一系列广告ID,或者在我没有采取进一步措施后可以很快恢复活动的广告?

换句话说,我希望我设置为"有效"并且存在于有效的广告和广告系列中的所有广告(因此这些广告现在正在播放)... 加上认为的所有广告都是有效的,但是Facebook已经设置了另一个状态,例如Pending Review(并将很快回归Active).

我在下面有一些代码,但问题是它偶然包含待定广告 - 一旦经过Facebook审核和批准 - 将处于非活动状态而非活动状态(因为我已经设置了这种方式).我不希望这类广告包含在我的报告中.

我的报告应该只向我展示一些我积极花钱或有可能在FB批准后立即花钱的报告.

我想我明白之间的差别configured_status,并effective_statusAbstractArchivableCrudObjectFields,但我不知道这是足以帮助我,因为我有很多设置为活动是内Adsets是无效的广告的,我不希望看到这些上市我的报告.

有什么建议?

public function getActiveAdIds() {
    $key = 'activeAdIds';
    $adIdsJson = Cache::get($key);
    if ($adIdsJson) {
        $adIds = json_decode($adIdsJson);
    } else {
        $adsResponse = $this->getAdsByStatus([ArchivableCrudObjectEffectiveStatuses::ACTIVE, ArchivableCrudObjectEffectiveStatuses::PENDING_REVIEW]);
        $ads = $adsResponse->data;
        $adIds = [];
        foreach ($ads as $ad) {
            $adIds[] = $ad->id;
        }
        $adIdsJson = json_encode($adIds);
        Cache::put($key, $adIdsJson, 1);
    }
    return $adIds;
}

public function getAdsByStatus($statuses) {
    $params = …
Run Code Online (Sandbox Code Playgroud)

php facebook-ads-api facebook-php-sdk facebook-insights facebook-marketing-api

7
推荐指数
1
解决办法
894
查看次数

转换为.exe时,python请求无法找到带有证书的文件夹

我有一个程序可以汇集来自不同营销系统的广告统计信息.一切正常,直到我将其转换为.exe格式并运行它.

Exception in Tkinter callback
Traceback (most recent call last):
  File "C:\Users\user\AppData\Local\Programs\Python\Python35\lib\tkinter\__init__.py", line 1549, in __call__
    return self.func(*args)
  File "C:\Users\user\Desktop\alg\TSK_7. Marketing\report_gui.py", line 24, in <lambda>
    ok = tk.Button(root, text="DO NOT PRESS", bg="red", command=lambda: self.run())
  File "C:\Users\user\Desktop\alg\TSK_7. Marketing\report_gui.py", line 43, in run
    report.merge_all()
  File "C:\Users\user\Desktop\alg\TSK_7. Marketing\process_data.py", line 400, in merge_all
    fb_df     = self.fetch_fb()
  File "C:\Users\user\Desktop\alg\TSK_7. Marketing\process_data.py", line 156, in fetch_fb
    fb_campaigns = from_fb.run_fb(self.start_date, self.end_date)  # in JSON format
  File "C:\Users\user\Desktop\alg\TSK_7. Marketing\from_fb.py", line 110, in run_fb
    return s.get_stats()
  File "C:\Users\user\Desktop\alg\TSK_7. Marketing\from_fb.py", line …
Run Code Online (Sandbox Code Playgroud)

pyinstaller python-requests python-3.5 facebook-marketing-api

7
推荐指数
2
解决办法
1万
查看次数

具有多个 Facebook 目录变体的产品的 JSON-LD 微数据

我进行了搜索和搜索,但找不到 JSON-LD 架构微数据的示例,该示例将使我的 Facebook 目录识别具有多个变体(例如 T 恤)的产品的所有变体。到目前为止,我已经尝试了这些实现变体的方法:

  • 具有一系列产品的 ProductGroup(在“hasVariant”ProductGroup 属性内)
  • 提供一系列优惠的产品
  • 一系列产品

通过所有这些方法,我只能让 Facebook 识别出一种产品。有谁知道如何为具有多个变体的产品编写 Facebook JSON-LD 微数据,或者我可以在哪里找到这样的示例?谢谢!

microdata facebook-opengraph json-ld facebook-marketing-api

6
推荐指数
1
解决办法
551
查看次数

在广告素材上预设 asset_feed_spec 后,无法在 Facebook 帖子上阅读或创建评论

我有一个应用程序可以从 facebooks api 读取广告评论,

在测试过程中,我们注意到,当用户向广告添加任何变体时,这会在广告素材上创建 asset_feed_spec,然后创建其他几个广告素材来匹配 asset_feed_spec。

问题是,一旦 asset_feed_spec 出现,您将无法再在 {ad_account_id}/ads?fields=adcreatives 下列出的广告素材的 effective_object_story_id 上读取或创建评论。

  • 该 API 确实允许您阅读和发布评论,但它们不再显示在广告上。API 将返回任何创建的评论,但广告不会显示它们。

有趣的是,如果您转到 {ad_account_id}/adcreatives,您可以看到创建的新广告素材,并且您可以对创建的第一个新变体发布和创建评论,这些变体将显示在广告和创建的任何新广告上。

然而,这些新的广告创意没有我可以找到的链接到它们创建的原始广告,因此无法实际阅读或发布广告评论。

我想做的就是阅读评论并对任何新创建的广告发表评论,其令人惊叹的 Facebook 让这变得如此困难。

我附上了两个例子:

示例一,

您可以看到 API 返回了该广告的许多评论。但是,当您访问广告素材上的永久链接网址时,只有一条评论“手动测试”,这是我手动添加的,

示例二,

您可以看到广告应该有 12 条评论,API 为该页面帖子 ID 返回 0

仅当广告素材 -> effective_object_story_id 上存在 asset_feed_spec 时,才会出现此问题

正如预期的那样,从 facebook 支持论坛获得了 0 帮助,但看到许多人报告了同样的问题,

有人找到解决办法了吗?

在此输入图像描述

facebook facebook-graph-api facebook-comments facebook-marketing-api

6
推荐指数
0
解决办法
73
查看次数