使用 Google Ad Manager API(Beta 版)读取 Ad Manager 数据和生成报告。
如需发出您的第一个 API 请求,请完成以下步骤:
获取对 Ad Manager 广告资源网的访问权限
如果您还没有 Ad Manager 账号,请注册一个 Ad Manager 账号。
启用 Ad Manager API
在 Google API 控制台项目中启用 Ad Manager API。
身份验证
所有 API 请求都必须使用 OAuth2 进行身份验证。
Ad Manager API 客户端库会从应用默认凭据读取凭据。您可以使用环境变量或 gcloud 设置这些变量。
服务账号
Linux 或 macOS
export GOOGLE_APPLICATION_CREDENTIALS=KEY_FILE_PATH
Windows
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
如需详细了解如何选择凭据类型和创建凭据,请参阅身份验证指南。
设置客户端库
Java
对于 Maven:
<!-- pom.xml -->
<dependency>
<groupId>com.google.api-ads</groupId>
<artifactId>ad-manager</artifactId>
<version>0.1.0</version>
</dependency>
对于 Gradle:
implementation 'com.google.api-ads:ad-manager:0.1.0'
Python
从 PyPi 安装客户端库。
pip install google-ads-admanager
.NET
从 NuGet 安装客户端库。
通过 .NET CLI:
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
Ruby
从 RubyGems 安装客户端库。
Gemfile:
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"
}
提交第一个请求
Java
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);
}
}
}
Python
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)
.NET
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);
}
}
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。
Ruby
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
curl -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
https://admanager.googleapis.com/v1/networks/NETWORK_CODE