开始使用

使用 Google Ad Manager API(Beta 版)读取 Ad Manager 数据并生成报告。

如需发出您的第一个 API 请求,请完成以下步骤:

获取对 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);
    }
  }
}

您可以在 GitHub 上找到更多示例。 如需了解其他客户端库信息,请参阅 Java 指南

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)

您可以在 GitHub 上找到更多示例。 如需了解其他客户端库信息,请参阅 Python 指南

.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);
    }
}

您可以在 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 上找到更多示例。

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