Php Facebook营销API adaccounts

Php Facebook营销API adaccounts,php,facebook,Php,Facebook,我在Facebook营销API方面遇到了一些问题。我需要阅读当前用户在其所有广告帐户中的所有活动营地。因此,第一步是阅读所有的广告帐户 首先,我试着听老师说: 但是SDK中不存在AdUser.php文件 因此,我尝试向端点/me/adaccounts发出请求 $fb = new Facebook([ 'app_id' => AppId, 'app_secret' => AppSecret, ]); $response = $fb->get('/me/a

我在Facebook营销API方面遇到了一些问题。我需要阅读当前用户在其所有广告帐户中的所有活动营地。因此,第一步是阅读所有的广告帐户

首先,我试着听老师说:

但是SDK中不存在AdUser.php文件

因此,我尝试向端点/me/adaccounts发出请求

$fb = new Facebook([
    'app_id'     => AppId,
    'app_secret' => AppSecret,
]);

$response = $fb->get('/me/adaccounts', Token);
这会抛出一个错误,说我使用的是不推荐的营销API版本,但我使用的是3.2!!。我也试过了

$response = $fb->get('me?fields=adaccounts', Token);
得到了同样的错误。谁能帮我找到另一条路吗


PS:英语不是我的第一语言,很抱歉…

您可以使用insights api查看活动。在资源管理器中键入下面的行,然后查看魔术

me/活动?字段=id、名称、状态、有效状态

这将给你25个活动的列表,你可以阅读他们的状态和有效状态。
您可以在api url上方使用php sdk语法调用并读取响应。

我也遇到了同样的问题。检查此解决方案

    // Add after Api::init()

    $user = new \FacebookAds\Object\User();
    $user->setId($userID);
    $user->setApi($api);

    $accounts = $user->getAdAccounts(array(\FacebookAds\Object\Fields\AdFields::NAME));
    foreach ($accounts as $acc) {
      echo $acc->name;
    }
使用PHPSDK


可能是他们改变了什么,而你现在必须使用AdaAccountUser吗?至少有一个方法GetAdaAccounts。
    // Add after Api::init()

    $user = new \FacebookAds\Object\User();
    $user->setId($userID);
    $user->setApi($api);

    $accounts = $user->getAdAccounts(array(\FacebookAds\Object\Fields\AdFields::NAME));
    foreach ($accounts as $acc) {
      echo $acc->name;
    }
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->get(
    '/<USER_ID>/adaccounts',
    '{access-token}'
  );
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}