我如何获得花费的金额/Facebook 营销 API
How can I get the amount spent / Faceook Marketing API
我正在研究 Facebook 营销 API (v6.0) 并尝试获取我拥有的每个广告集的花费金额,实际上我已经开始使用 Graph API 资源管理器,但我没有发现任何称为 spend 和 amount spent 的字段,所以过了一会儿我得到了这个实际上 return false data 的技巧,所以等式如下所示:daily_budget - budget_remaining = amount_spent ,所以假设我们有 900 - 800 = 它 returns 100 在我的应用程序中,而在业务经理中我有 50,这是我的端点 api
public function facebookData()
{
$fb = new \Facebook\Facebook([
'app_id' => 'xxxxx',
'app_secret' => 'xxxxxxx',
'default_graph_version' => 'v6.0',
//'default_access_token' => '{access-token}', // optional
]);
try {
// Returns a `FacebookFacebookResponse` object
$response = $fb->get(
'/act_xxxxxx/?fields=business,adsets.limit(1000){name,budget_remaining,daily_budget}',
'my_accesstoken'
);
} catch(FacebookExceptionsFacebookResponseException $e) {
echo 'Graph return=<i></i>ed an error: ' . $e->getMessage();
exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
}
$data = $response->getGraphObject()->getProperty('adsets');
try
{
foreach ($data as $ad) {
\App\FacebookAd::UpdateOrCreate([
'ad_id' => $ad['id'],
],[
'name' => $ad['name'],
'budget_remaining' => substr($ad['budget_remaining'],0,-2),
'daily_budget' => substr($ad['daily_budget'],0,-2),
'total' => substr($ad['daily_budget'],0,-2) - substr($ad['budget_remaining'],0,-2), // remove last two zeros
'account_id' => "unset",
]);
}
}
catch(\Exception $e)
{
Log::error($e->getMessage());
}
}
尝试使用洞察力。
https://developers.facebook.com/docs/marketing-api/reference/ads-insights/
在您的 link 中,添加下一个 "insights{spend}"。所以它会给出:
'/act_xxxxxx/?fields=business,adsets.limit(1000){name,insights{spend}}'
我正在研究 Facebook 营销 API (v6.0) 并尝试获取我拥有的每个广告集的花费金额,实际上我已经开始使用 Graph API 资源管理器,但我没有发现任何称为 spend 和 amount spent 的字段,所以过了一会儿我得到了这个实际上 return false data 的技巧,所以等式如下所示:daily_budget - budget_remaining = amount_spent ,所以假设我们有 900 - 800 = 它 returns 100 在我的应用程序中,而在业务经理中我有 50,这是我的端点 api
public function facebookData()
{
$fb = new \Facebook\Facebook([
'app_id' => 'xxxxx',
'app_secret' => 'xxxxxxx',
'default_graph_version' => 'v6.0',
//'default_access_token' => '{access-token}', // optional
]);
try {
// Returns a `FacebookFacebookResponse` object
$response = $fb->get(
'/act_xxxxxx/?fields=business,adsets.limit(1000){name,budget_remaining,daily_budget}',
'my_accesstoken'
);
} catch(FacebookExceptionsFacebookResponseException $e) {
echo 'Graph return=<i></i>ed an error: ' . $e->getMessage();
exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
}
$data = $response->getGraphObject()->getProperty('adsets');
try
{
foreach ($data as $ad) {
\App\FacebookAd::UpdateOrCreate([
'ad_id' => $ad['id'],
],[
'name' => $ad['name'],
'budget_remaining' => substr($ad['budget_remaining'],0,-2),
'daily_budget' => substr($ad['daily_budget'],0,-2),
'total' => substr($ad['daily_budget'],0,-2) - substr($ad['budget_remaining'],0,-2), // remove last two zeros
'account_id' => "unset",
]);
}
}
catch(\Exception $e)
{
Log::error($e->getMessage());
}
}
尝试使用洞察力。 https://developers.facebook.com/docs/marketing-api/reference/ads-insights/
在您的 link 中,添加下一个 "insights{spend}"。所以它会给出: '/act_xxxxxx/?fields=business,adsets.limit(1000){name,insights{spend}}'