2

问题:与业务经理关联的应用程序是否可以使用 appId|appSecret 作为访问令牌获取 ads_management 权限并进行服务器到服务器调用。如果是,那么获取应用程序权限的正确步骤是什么?如果没有,那么有没有办法为具有此类永不过期的权限的用户获取访问令牌?

详细信息:如 FB 文档中所述,为了在不需要获取和刷新访问令牌的情况下发出服务器到服务器的请求,我们可以使用 appId|appSecret 形式的应用 ID 和应用秘密对。

我们的应用程序现在具有以下权限: - email - public_profile - user_friends

为了调用 Ads API,我们的应用程序必须拥有 ads_management 权限。目前我们通过用户级访问令牌调用广告 API,这对我们来说并不可取,因为此令牌需要刷新,必须使用浏览器交互手动完成(我们无法以编程方式获取访问令牌)

4

1 回答 1

5

您可能会将应用程序访问令牌(允许您代表应用程序本身进行调用)与权限(单个用户授予您代表他们的权限)混淆 - 您始终需要用户令牌来更新属于一个用户。

作为您要管理的广告帐户的管理员的用户需要授予您的应用ads_management权限 - 一旦他们完成此操作,OAuth 流程就会为您提供访问令牌以代表他们进行 API 调用,而该令牌不会t 有效期最长为 60 天(在此之后,他们需要在登录 Facebook 时返回您的网站/应用程序以获取更新的令牌)

在 Business Manager 的上下文中,该用户必须是可以通过 Business Manager 访问您要通过 API 更新的资产(广告帐户和页面)的人

如果您的应用对广告 API 具有标准访问权限,您还可以使用“系统用户”进行无会话 API 调用以更新业务资产:https ://developers.facebook.com/docs/marketing-api/businessmanager/系统用户/v2.2

有关登录的更多信息在这里:

https://developers.facebook.com/docs/marketing-api/guides/chapter-1-Setup-and-Authentication

https://developers.facebook.com/docs/facebook-login/access-tokens

于 2015-03-13T01:27:57.543 回答