James Mills
James Mills

Reputation: 554

Facebook Lead Ads API missing adset_name

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

Answers (1)

James Mills
James Mills

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

Related Questions