Reputation: 554
I am using the Facebook API package to receive detailed information about a new lead from Facebook Lead Ads.
When I use the below
$lead = new \FacebookAds\Object\Lead('77408XXXXXX0968');
$lead->read();
$lead_data = $lead->getData();
This returns
Array
(
[ad_id] =>
[ad_name] =>
[adset_id] =>
[adset_name] =>
[campaign_id] =>
[campaign_name] =>
[created_time] => 2016-09-20T11:33:50+0000
[custom_disclaimer_responses] =>
[field_data] => Array
(
[0] => Array
(
[name] => full_name
[values] => Array
But things like the adset_name are empty. Does anyone have any idea why or how I can populate them?
Upvotes: 0
Views: 548
Reputation: 554
After searching high and low I ended up posting a issue on the Github page.
https://github.com/facebook/facebook-php-ads-sdk/issues/252
This is the answer.
use FacebookAds\Object\Lead;
use FacebookAds\Object\Fields\LeadFields;
$fields = array(
LeadFields::AD_ID,
LeadFields::AD_NAME,
LeadFields::ADSET_ID,
LeadFields::ADSET_NAME,
LeadFields::CAMPAIGN_NAME,
LeadFields::FIELD_DATA,
);
$lead = new Lead('93xxxxxxxxxxxxx42');
$lead->read($fields);
$lead_data = $lead->getData();
echo $lead_data['created_time']. "\n";
echo $lead_data['ad_id']. "\n";
echo $lead_data['field_data']. "\n";
echo $lead_data['ad_name']. "\n";
echo $lead_data['adset_name']. "\n";
echo $lead_data['campaign_name']. "\n";
Upvotes: 2