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-adsThe 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::classThis 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::classIf 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
.envfile 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>');