ruby авторизация Google AdWords API - PullRequest
0 голосов
/ 07 февраля 2020

У меня есть php код, который получает список учетных записей Google AdWords с использованием библиотеки https://github.com/googleads/googleads-php-lib:

use Google\AdsApi\AdWords\AdWordsSessionBuilder;
use Google\AdsApi\Common\OAuth2TokenBuilder;
use Google\AdsApi\AdWords\AdWordsServices;
use Google\AdsApi\AdWords\v201809\mcm\ManagedCustomerService;
$oAuth2Credential = (new OAuth2TokenBuilder())
    ->fromFile(__DIR__.'/keys.ini')
    ->build();
$api = (new AdWordsSessionBuilder())
    ->fromFile(__DIR__.'/keys.ini')
    ->withOAuth2Credential($oAuth2Credential);
$session = $api->build();

$adWordsServices = new AdWordsServices();
$managedCustomerService = $adWordsServices->get(
    $session,
    ManagedCustomerService::class
);
// Create selector.
$selector = new Selector();
$selector->setFields(['CustomerId','Name']);
$selector->setOrdering([new OrderBy('CustomerId', SortOrder::ASCENDING)]);
$selector->setPaging(new Paging(0, 10));
$items = $managedCustomerService->get($selector);

в keys.ini:

[ADWORDS]
developerToken = "XXX"
clientCustomerId = "XXX"
[OAUTH2]
clientId = "XXX"
clientSecret = "XXX"
refreshToken = "XX"

сейчас я пытаюсь сделать то же самое в ruby, используя библиотеку https://github.com/googleads/google-api-ads-ruby/tree/master/adwords_api:

require 'adwords_api'

adwords = AdwordsApi::Api.new()
customer_srv = adwords.service(:ManagedCustomerService, :v201809)
...

в ~ / adwords_api.yml:

---
:authentication:
  :method: OAuth2
  :oauth2_client_id: XXX
  :oauth2_client_secret: XXX
  :refresh_token: XXX
  :developer_token: XXX
  :client_customer_id: XXX
:connection:
  :enable_gzip: false
:library:
  :log_level: DEBUG

И я получаю сообщение об ошибке:

Authorization credentials are not valid. Edit adwords_api.yml for OAuth2 client ID and secret and run misc/setup_oauth2.rb example to retrieve and store OAuth2 tokens.
See this wiki page for more details:
  https://github.com/googleads/google-api-ads-ruby/wiki/OAuth2

, в то время как все мои учетные данные в php и ruby совпадают.

Есть идеи, как это исправить?

...