albafo / google-connector-php
Google OAuth2 API Connector
Requires
- php: ^7.3
- ext-json: *
- google/auth: ^1.13
Requires (Dev)
- dms/phpunit-arraysubset-asserts: ^0.2.0
- phpunit/phpunit: ^9.4
README
This project hosts the PHP Google Api Connector for the various Google APIs (Ads, YouTube, Metrics...)
Install
Using composer require
The library will be downloaded by Composer and stored under the vendor/
directory. Examples are NOT downloaded by this download method.
-
Install the latest version using Composer.
$ composer require albafo/google-connector-php
-
Follow Using OAuth 2.0 to Access Google APIs if you haven't set up the credentials yet.
-
You can now use the library.
AdsApi
AdsApi allows us to access Google Ads reports through the Google Ads Query Language.
Setting up your credentials
- Get a OAuth2 Client ID and Secret from Credentials section over your Google Cloud Platform
- Get a Refresh Token calling our refresh-token.php script from your root project directory, which will prompt you for your OAuth2 client ID and secret.
php vendor/bin/refresh-token.php
- Get Development Token from your Google Ads API Center
- Get your Customer ID (account id which you are consulting) and your Login Customer ID (parent account id) from your Google Ads Console. Find your Customer ID
Remove hyphens from your customerId and loginCustomerId: xxx-XXX-xxx to xxxXXXxxx
Basic Usage
To get a report with Google Ads Query Language create an instance of AdsApi with your config and send the query from the searchStream method:
use Zeus\GoogleConnector\Api\AdsApi; $adsApi = AdsApi::fromConfig([ 'clientId' => $config['clientId'], 'clientSecret' => $config['clientSecret'], 'refreshToken' => $config['refreshToken'], 'developerToken' => $config['developerToken'], 'customerId' => $config['customerId'], 'loginCustomerId' => $config['loginCustomerId'] ]); $reportObject = $adsApi->searchStream(" SELECT campaign.id, campaign.name, campaign.status FROM campaign ORDER BY campaign.id ");
Learn all reports query options in Google Developers Ads Api Page