Get ads infos (campaigns, ads, insights, etc...) from Facebook & Instagram Ads API
- Supported Facebook API version: >= v3.0
Follow this steps to use this package on your Laravel installation
composer require edbizarro/laravel-facebook-ads
The package will automatically register it's service provider.
For Laravel <= 5.4 add the provider manually
You need to update your config/app.php
configuration file to register our service provider, adding this line on providers
array:
Edbizarro\LaravelFacebookAds\Providers\LaravelFacebookServiceProvider::class
This package comes with an facade to make the usage easier. To enable it, add this line at config/app.php
on alias
array:
'FacebookAds' => Edbizarro\LaravelFacebookAds\Facades\FacebookAds::class
If you want to change any configurations, you need to publish the package configuration file. To do this, run artisan vendor:publish --provider="Edbizarro\LaravelFacebookAds\Providers\LaravelFacebookServiceProvider"
on terminal.
This will publish a facebook-ads.php
file on your configuration folder like this:
<?php
return [
'app_id' => env('FB_ADS_APP_ID'),
'app_secret' => env('FB_ADS_APP_SECRET'),
];
Note that this file uses environment variables, it's a good practice put your secret keys on your
.env
file adding this lines on it:
FB_ADS_APP_ID="YOUR_APP_ID"
FB_ADS_APP_SECRET="YOUR_APP_SECRET_KEY"
Before using it, it's necessary to initialize the library with an valid access token, php example with:
FacebookAds::init($accessToken);
Now that everything is set up, it's easy to start using!
$ads = FacebookAds::adAccounts()->all()->map(function ($adAccount) {
return $adAccount->ads(
[
'name',
'account_id',
'account_status',
'balance',
'campaign',
'campaign_id',
'status'
]
);
});
To obtain a list of all AdAccount
available fields, look at this.
To obtain an adAccounts instance:
$adAccounts = $adsApi->adAccounts();
Use this method to retrieve your owned Ad Accounts. This method accepts an array as argument containing a list of fields.
To obtain a list of all available fields, look at this.
$adAccounts->all(['account_id', 'balance', 'name']);
Use this method to get details of an AdAccount. This method accepts an array as argument containing a list of fields and an account_id act_<AD_ACCOUNT_ID>
To obtain a list of all available fields, look at this.
$adAccounts->get(['account_id', 'balance', 'name'], 'act_<AD_ACCOUNT_ID>');
To obtain an Campaigns instance:
$campaigns = $adsApi->campaigns();
Use this method to retrieve your adAccount campaigns. This method accepts an array as argument containing a list of fields and an account_id act_<AD_ACCOUNT_ID>
To obtain a list of all available fields, look at this.
$campaigns->all(['name'], 'act_<AD_ACCOUNT_ID>');