- Added Macroable trait to Service classes for extensibility Readme
- New facebook integration Readme
- New facebook API v11 using Marketing API and facebook-php-business-sdk
- Facebook: Fetch Campaigns and AdSets
- Facebook: Insight reports for Account, Campaign and AdSet performance
- Fixed bing offline conversion response by changing
click
toclick_id
and addingname
andtime
to match Google
- Added ability to specify fields for Bing Ads reports
- Added getCustomers() endpoint for Bing Ads
- Made the redirect_uri config setting an env variable
- Updated the laravel vendor:publish to show laravel-ads-sdk instead of config
- Url encoded spaces in OAuth Grant URL
- For the google/bing offline conversions import and with setting of output value, now returns name and time.
- Fixed offline conversions for both google/bing to return the proper click id on errors (was returning the same click id for all errors)
- Added a way to output the conversion value of success/error offline conversion imports for google/bing ads
- Updated composer.json Google Ads API to v49 based on #19 (no other AdWords changes were made)
- Updated Google Ads API to v47 (from v40) to fix the dependency issue #10
- Google Ads
getTargetCpa()
suppressing any null errors when trying to get the target cpa value.
- Ability to set the configuration manaually (overriding the laravel config settings) by using
configuration(array)
- Cleaning up more
BingAds
for Soap errors due to undefined variables. (raw output of errors).
- Cleaned up
BingAds
for Soap errors due to request of__getLastRequest()
undefined errors.
- Added
InvalidCredentials
Error code with Offline Conversion Import onBingAds
- Added
ApiVersionNoLongerSupported
Error code with Offline Conversion Import onBingAds
- Added
withRedirectUri()
by default forBingAds
Auth - Added config variable
redirect_uri
by default it will usehttps://login.microsoftonline.com/common/oauth2/nativeclient
- Fixed
BingAds
now using^0.12
instead of deprecatedv0.11
as of 11/6 (version of SDK) - Changed
BingAds
Services to useV13
namespace instead ofV12
(version of API)
- Added Offline Conversion Import services for both
BingAds
andGoogleAds
. - Added
withCustomerId()
to theBingAds
service as some requests require it.
- Fixed BingAds from running too many rows for Search Terms (using Summary instead of Daily feed)
- Updated BingAds to increase time checking for API reports
- Updated BingAds Report Names and Aggregation to choose, daily, hourly, summary on account level.
- Updated GoogleAds API to version 40
- Fixed GoogleAds Reports by bad parsing of csv data. Due to comma issues. Now using
str_getcsv
- GoogleAds Report: Added default columns to rows (based on headers) if the column was missing
- Added
campaign_name
to the resposne ofgetAdGroupReport()
. - Added Reports:
getFinalUrlReport()
on both Google/Bing (it returns per campaign) - Added Reports:
getPlacementReport()
on Google only - Added Reports:
getPlacementUrlReport()
on Google only - Added Reports:
getSearchTermReport()
on Google/Bing - Added Reports:
getAgeRangeReport()
on Google/Bing - Added Reports:
getGenderReport()
on Google/Bing
- Fixed fetching
getAdGroups()
on Bing causing undefined error when AdGroups not returned.
- Added
getCampaigns()
andgetAdGroups()
to now work with paging. Google allows only 10,000 results per page. Pre-defined 5,000 per page in this SDK for safety. It will be handled automatically and give you the entire total in the response. - Added
$filters
array within thegetCampaigns()
andgetAdGroups()
, using thePredicate
andsetPredicates
Google Ads functionality. (Note: this currently will only use thePredicateOperator::IN
operator.)
- Updated GoogleAds API from
v201802
tov201809
- GoogleAds Reports now allow for advanced customization, making
reportDownload()
a public method. - GoogleAds Reports now allow
aggregate()
to be used with multiple calls.
- GoogleAds:
AveragePosition
which equalsavg_position
within AdGroup ReportgetAdGroupReport
. - BingAds:
AveragePosition
which equalsavg_position
within AdGroup ReportgetAdGroupReport()
.
setTargetCpa()
on Bing/Google campaigns.
- Fixed bing report response once again!
- Fixed Bing Report Download when download fails due to "no data in report" (now returns a empty response)
- Overhaul of Google and Bing APIs
- Includes Google/Bing Campaign and AdGroup Management Features.
- Updated Readme with all Documentation for both Google/Bing
- Improved consistency between both Google/Bing
- Fixed new bid type method returns the correct types now.
- Added
Campaign Id
into Bing Ad Group response.
- Changed Bing Ad Group status from
Active
toENABLED
(matching GoogleAds) - Fetching AdGroups now use the AdGroup Response object.
- Google: Added
type
forAdGroupType
ingetAdGroups()
- Changed the Bid Type to always return a uniform set (
CPC
,ECPC
,CPA
,CPM
)
- Google: Ability to check if an ad group is Enhanced CPC using
isEnhancedCpc()
- Google: Added
ENHANCED_CPC
for bid strategy response in fetch ad groups
- For Google/Bing get the active bid with
getBid()
on adgroups.
- Response of
adGroup
for both Google/Bing - Request to the servers will use
AdGroupRequest
- Response from the servers will use
AdGroupResponse
- Bing now has edit ability (and uses the same methods as Google)
- Added new Set/Get Methods to Google/Bing
- Added
toCollection()
onReportDownload
, instead of sending back raw array, we will send back as a Collection. You can useall()
if you want the basic array response.
- The default
ReportDownload
response totoCollection()
instead oftoArray()
- Console
RefreshTokenCommand
, you can now generate a refresh token and follow authentication steps for BingAds - Command:
php artisan laravelads:token:generate --service=BingAds
- BingAds: Added new fetch methods
getCampaigns()
andgetAdGroups()
- GoogleAds: Added
bid_type
ongetCampaigns()
- Simplified the GoogleAds/BingAds Reports and made the responses consistent with both.
- Console
RefreshTokenCommand
, you can now generate a refresh token and follow authentication steps for GoogleAds - Command:
php artisan laravelads:token:generate --service=GoogleAds
- Services:
googleAds()
,bingAds()
andfacebookAds()
methods.
- GoogleAds:
AdGroupOperation
new methodgetBidType()
.
- GoogleAds:
AdGroupOperation
updated pull from the server when loaded.
- GoogleAds:
AdGroupOperation
with ability to change adgroup bids usingsetBid()
- GoogleAds:
AdGroupOperation
ability to change name and status of adgroups. - GoogleAds:
AdGroupOperation
with asave()
method that posts changes to Google Ads. - GoogleAds:
AdGroupOperation
Added getter methodsgetName()
,getStatus()
,getCampaignId()
,getId()
- Bing Reports (Account, Campaign and Ad Group Level)
- Bing Authentication Session and basic Bing service methods
- Initial Release for
Google Ads