Используйте 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