入门

我们建议将客户端库与 Apache Maven(或 Gradle)搭配使用。

创建新的 Maven/Gradle 项目

在您选择的 IDE 中创建新的 Maven/Gradle 项目。我们的工件会发布到 Maven 中央代码库

Maven 依赖项为:

<dependency>
  <groupId>com.google.api-ads</groupId>
  <artifactId>google-ads</artifactId>
  <version>31.0.0</version>
</dependency>

Gradle 依赖项为:

implementation 'com.google.api-ads:google-ads:31.0.0'

您也可以从源代码构建。在本指南中,我们假定您的项目设置具有可用的所需依赖项。

获取凭据以进行 API 身份验证

访问 Google Ads API 需要 OAuth 凭据和 Google Ads API 开发者令牌。本部分介绍了它们是什么、如何使用以及如何获取它们。

开发者令牌(用于访问 API)

开发者令牌与经理帐号相关联,可在 Google Ads 网页界面中找到。

虽然开发者令牌与经理帐号相关联,但它不提供对该帐号的访问权限。相反,一般而言,开发者令牌会授予对 API 的访问权限,而帐号级访问权限是通过 OAuth 配置的。

OAuth 凭据(用于访问 Google Ads 账号)

如需授权为 Google 帐号用户,使其有权访问 Google Ads 帐号,您必须提供一组 OAuth 凭据。

常用的 OAuth 流程有两种:桌面(已安装)应用或 Web 应用。两者之间的主要区别在于,桌面应用必须打开系统浏览器并提供本地重定向 URI 来处理来自 Google 授权服务器的响应,而 Web 应用可以重定向任意第三方浏览器以完成授权并将凭据发送回您的服务器。该库还支持不常用的服务帐号流程。

如果您使用自己的凭据进行授权(桌面应用流程)
请参阅 OAuth 桌面应用流程。其中包括使用您自己的凭据进行授权所需的所有详细信息。
如果您以第三方 Google 用户的身份进行授权(网站流程)
请参阅 OAuth Web 应用流程。该示例展示了如何为任意第三方用户设置 OAuth 授权。
如果您授权为 Google Apps 网域用户(服务帐号流程)
请参阅 OAuth 服务帐号流程。此示例展示了如何为 Google Apps 网域用户设置 OAuth 授权。

如果您是通过 Google Ads 经理帐号访问 Google Ads 客户帐号,则还必须指定登录客户 ID(如下所述)。

登录客户 ID(用于通过经理账号访问 Google Ads 账号)

(可选)指定提供对广告投放帐号的访问权限的经理帐号的客户 ID。如果您是通过经理帐号访问客户帐号,则必须指定此项。无需在客户 ID 的路径中指定所有经理帐号,只需指定访问权限所用的最顶层的经理帐号 ID。如需了解详情,请参阅相关文档

使用您的凭据配置客户端库

您可以使用配置文件、环境变量或以编程方式配置客户端库。在本指南中,我们将使用配置文件方法,并重点关注桌面流程和 Web 流程。如果您只有一组凭据(例如,您在单个经理下管理帐号),则使用配置文件通常是一种不错的方法。

创建一个包含以下内容的 ~/ads.properties 文件。

api.googleads.clientId=INSERT_CLIENT_ID_HERE
api.googleads.clientSecret=INSERT_CLIENT_SECRET_HERE
api.googleads.refreshToken=INSERT_REFRESH_TOKEN_HERE
api.googleads.developerToken=INSERT_DEVELOPER_TOKEN_HERE

将占位符替换为您在上一步中获得的凭据。

此外,如果您的刷新令牌是针对经理帐号的,则应将此帐号的客户 ID 指定为登录客户:

api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE

验证凭据

为确保所有设置正确无误,我们将运行 GetCampaigns 示例

首先,导航到 google-ads-examples 目录。

$ cd google-ads-examples

此示例需要使用 --customerId 参数,其值是不带短划线的 Google Ads 账号客户 ID。

如需使用 Gradle 运行,请执行以下操作:

$ ./gradlew -q runExample --example="basicoperations.GetCampaigns --customerId INSERT_CUSTOMER_ID_HERE"

浏览其他示例

google-ads-examples 中的 examples 软件包包含几个有用的示例。大多数示例都需要参数。您可以将形参作为实参(推荐)传递,也可以在源代码中修改 INSERT_XXXXX_HERE 值。如需查看示例的使用情况语句,请将 --help 作为唯一的参数传递。

使用 Gradle:

$ ./gradlew -q runExample --example="basicoperations.GetCampaigns --help"

您还可以使用 Gradle 中的 listExamples 任务列出所有示例、子目录中的示例或说明中包含搜索字词的示例。

# List all examples:
$ ./gradlew -q listExamples
# List examples in the 'basicoperations' subdirectory:
$ ./gradlew -q listExamples --subdirectory='basicoperations'
# Search for examples where the description includes 'Performance Max':
$ ./gradlew -q listExamples --searchTerm='Performance Max'