Используйте Google Ad Manager API (бета-версия), чтобы читать данные Менеджера рекламы и создавать отчеты.
Чтобы сделать первый запрос API, выполните следующие действия:
Получите доступ к сети Менеджера рекламы
Если у вас его еще нет, зарегистрируйте аккаунт Менеджера рекламы.
Включите API Менеджера рекламы
Включите API Менеджера рекламы в своем проекте консоли Google API.
Аутентификация
Все запросы API должны быть аутентифицированы с использованием OAuth2.
Клиентские библиотеки API Менеджера рекламы считывают учетные данные из учетных данных приложения по умолчанию . Вы можете установить их, используя переменные среды или gcloud .
Сервисный аккаунт
Линукс или МакОС
export GOOGLE_APPLICATION_CREDENTIALS=KEY_FILE_PATH
Окна
set GOOGLE_APPLICATION_CREDENTIALS=KEY_FILE_PATH
Учетные данные пользователя
gcloud auth application-default login --scopes="https://www.googleapis.com/auth/admanager"
# End user credentials must specify the cloud project where the API is enabled.
gcloud auth application-default set-quota-project PROJECT_ID
Дополнительные сведения о выборе типов учетных данных и создании учетных данных см. в руководстве по аутентификации .
Настройте свою клиентскую библиотеку
Ява
Для Мавена:
<!-- pom.xml -->
<dependency>
   <groupId>com.google.api-ads</groupId>
   <artifactId>ad-manager</artifactId>
   <version>0.1.0</version>
</dependency>
Для Градла:
implementation 'com.google.api-ads:ad-manager:0.1.0'
Питон
Установите клиентскую библиотеку из PyPi.
pip install google-ads-admanager
.СЕТЬ
Установите клиентскую библиотеку из NuGet .
Из интерфейса командной строки .NET:
dotnet add package Google.Ads.AdManager.V1 --version 1.0.0-beta01
В качестве ссылки на пакет:
<PackageReference Include="Google.Ads.AdManager.V1" Version="1.0.0-beta01" />
PHP
Установите клиентскую библиотеку из Composer .
composer require googleads/ad-manager
Руби
Установите клиентскую библиотеку из RubyGems .
Джемфайл:
gem 'google-ads-ad_manager', '~> 0.2.0'
Установить:
gem install google-ads-ad_manager
Node.js
Установите клиентскую библиотеку из npm.
Из командной строки:
npm install @google-ads/admanager
В качестве ссылки на пакет:
// package.json
"dependencies": {
  "@google-ads/admanager": "^0.1.0"
}
Сделайте свой первый запрос
Ява
import com.google.ads.admanager.v1.GetNetworkRequest;
import com.google.ads.admanager.v1.Network;
import com.google.ads.admanager.v1.NetworkName;
import com.google.ads.admanager.v1.NetworkServiceClient;
public class SyncGetNetwork {
  public static void main(String[] args) throws Exception {
    syncGetNetwork();
  }
  public static void syncGetNetwork() throws Exception {
    try (NetworkServiceClient networkServiceClient = NetworkServiceClient.create()) {
      GetNetworkRequest request =
          GetNetworkRequest.newBuilder()
              .setName(NetworkName.of("NETWORK_CODE").toString())
              .build();
      Network response = networkServiceClient.getNetwork(request);
    }
  }
}
Больше примеров можно найти на GitHub . Дополнительную информацию о клиентской библиотеке смотрите в руководстве по Java .
Питон
from google.ads import admanager_v1
def sample_get_network():
    # Create a client
    client = admanager_v1.NetworkServiceClient()
    # Initialize request argument(s)
    request = admanager_v1.GetNetworkRequest(
        name="networks/NETWORK_CODE",
    )
    # Make the request
    response = client.get_network(request=request)
    # Handle the response
    print(response)
Больше примеров можно найти на GitHub . Дополнительную информацию о клиентской библиотеке смотрите в руководстве по Python .
.СЕТЬ
using Google.Ads.AdManager.V1;
public sealed partial class GeneratedNetworkServiceClientSnippets
{
    public void GetNetwork()
    {
        // Create client
        NetworkServiceClient networkServiceClient = NetworkServiceClient.Create();
        // Initialize request argument(s)
        string name = "networks/NETWORK_CODE";
        // Make the request
        Network response = networkServiceClient.GetNetwork(name);
    }
}
Больше примеров можно найти на GitHub . Дополнительную информацию о клиентской библиотеке смотрите в руководстве по .NET .
PHP
<?php
use Google\Ads\AdManager\V1\Client\NetworkServiceClient;
use Google\Ads\AdManager\V1\GetNetworkRequest;
use Google\Ads\AdManager\V1\Network;
use Google\ApiCore\ApiException;
/**
 * API to retrieve a Network object.
 *
 * @param string $formattedName Resource name of Network.
 *                              Format: networks/{network_code}
 *                              Please see {@see NetworkServiceClient::networkName()} for help formatting this field.
 */
function get_network_sample(string $formattedName): void
{
    // Create a client.
    $networkServiceClient = new NetworkServiceClient();
    // Prepare the request message.
    $request = (new GetNetworkRequest())
        ->setName($formattedName);
    // Call the API and handle any network failures.
    try {
        /** @var Network $response */
        $response = $networkServiceClient->getNetwork($request);
        printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
    } catch (ApiException $ex) {
        printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
    }
}
/**
 * Helper to execute the sample.
 *
 */
function callSample(): void
{
    $formattedName = NetworkServiceClient::networkName('NETWORK_CODE');
    get_network_sample($formattedName);
}
Больше примеров можно найти на GitHub .
Руби
require "google/ads/ad_manager/v1"
def get_network
  # Create a client object. The client can be reused for multiple calls.
  client = Google::Ads::AdManager::V1::NetworkService::Rest::Client.new
  # Create a request. To set request fields, pass in keyword arguments.
  request = Google::Ads::AdManager::V1::GetNetworkRequest.new(:name => 'networks/NETWORK_CODE)'
  # Call the get_network method.
  result = client.get_network request
  # The returned object is of type Google::Ads::AdManager::V1::Network.
  p result
end
Больше примеров можно найти на GitHub .
Node.js
// Resource name of the Network
const name = 'networks/NETWORK_CODE'
// Imports the Admanager library
const {NetworkServiceClient} = require('@google-ads/admanager').v1;
// Instantiates a client
const admanagerClient = new NetworkServiceClient();
async function callGetNetwork() {
  // Construct request
  const request = {
    name,
  };
  // Run request
  const response = await admanagerClient.getNetwork(request);
  console.log(response);
}
callGetNetwork();
Больше примеров можно найти на GitHub .
КУЛЬ
curl -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
 https://admanager.googleapis.com/v1/networks/NETWORK_CODE