Bắt đầu nhanh

Hướng dẫn bắt đầu nhanh này giúp bạn thực hiện lệnh gọi API đầu tiên đến Google Ads API.

Khái niệm chính

  • Dự án Google Cloud: Dự án Google Cloud là nền tảng để tạo, bật và sử dụng tất cả các dịch vụ của Google, bao gồm cả việc quản lý API và thông tin xác thực API OAuth 2.0. Bạn có thể tạo một dự án trong Google Cloud Console.
  • Cấp truy cập API: Cấp truy cập API của dự án trên đám mây Google Cloud kiểm soát số lượng lệnh gọi API mà bạn có thể thực hiện mỗi ngày và những môi trường mà bạn có thể thực hiện lệnh gọi API. Cấp truy cập API của dự án được liệt kê trên trang Tổng quan về Google Ads API của dự án.
  • Tài khoản người quản lý Google Ads: Tài khoản người quản lý Google Ads được dùng để quản lý các tài khoản Google Ads khác, có thể là một tập hợp các tài khoản khách hàng Google Ads hoặc các tài khoản người quản lý Google Ads khác.
  • Tài khoản khách hàng Google Ads: Tài khoản Google Ads dùng để chạy quảng cáo mà bạn muốn nhắm đến bằng lệnh gọi API.
  • Mã khách hàng của khách hàng: Mã số gồm 10 chữ số dùng để xác định một tài khoản khách hàng Google Ads. Nếu bạn sao chép mã nhận dạng này từ giao diện người dùng Google Ads, hãy nhớ xoá dấu gạch nối.
  • OAuth 2.0: OAuth 2.0 là một giao thức tiêu chuẩn ngành để uỷ quyền, được tất cả các API của Google sử dụng. Bạn cần có tài khoản dịch vụ và khoá để tạo thông tin xác thực OAuth 2.0 nhằm thực hiện lệnh gọi API.
  • Tài khoản dịch vụ: Một loại Tài khoản Google đặc biệt thuộc về ứng dụng của bạn chứ không phải thuộc về người dùng cá nhân. Mã này được dùng để xác thực ứng dụng của bạn với API Google Ads. Bạn cần có một dự án Google Cloud để có được tài khoản dịch vụ.
  • Khoá tài khoản dịch vụ: Tệp thông tin xác thực ứng dụng JSON chứa khoá riêng tư cho tài khoản dịch vụ của bạn. Tệp này được dùng để tạo thông tin xác thực OAuth 2.0 nhằm xác thực tài khoản dịch vụ khi thực hiện lệnh gọi API Google Ads API. Bạn cần có tài khoản dịch vụ để lấy khoá tài khoản dịch vụ.

Điều kiện tiên quyết

Để thực hiện lệnh gọi Google Ads API, bạn cần hoàn tất các bước sau.

Định cấu hình dự án trên đám mây để truy cập vào Google Ads API

Dự án Google Cloud được dùng để quản lý API của Google và thông tin xác thực API OAuth 2.0. Bạn có thể tìm thấy các dự án hiện có trên Google Cloud hoặc tạo một dự án bằng cách truy cập vào Google Cloud Console.

Bắt đầu bằng cách bật Google Ads API trong dự án của bạn:

Bật Google Ads API

Tiếp theo, hãy truy cập vào trang Tổng quan về Google Ads API. Trang này cho biết cấp truy cập API hiện tại của bạn. Nếu cấp truy cập API hiện tại của bạn là Thử nghiệm, hãy mở rộng mục Nâng cấp cấp truy cập. Làm theo hướng dẫn để đăng ký cấp truy cập Người khám phá.

Sau khi bạn hoàn tất đơn đăng ký, Google sẽ tự động xem xét đơn đăng ký của bạn và nâng cấp đơn đăng ký đó lên cấp Nhà thám hiểm trong hầu hết các trường hợp. Nếu bạn không được cấp quyền truy cập vào Explorer, đừng lo; hướng dẫn này sẽ cung cấp các hướng dẫn thích hợp khi định cấu hình tài khoản khách hàng Google Ads của bạn.

Tạo một tài khoản dịch vụ

Bạn cần có tài khoản dịch vụ và khoá tài khoản dịch vụ để thực hiện lệnh gọi API. Nếu bạn đang sử dụng một API khác của Google và đã tạo tài khoản dịch vụ OAuth 2.0 cũng như khoá, thì bạn có thể bỏ qua bước này và sử dụng lại thông tin xác thực hiện có.

Cách tạo tài khoản dịch vụ và khoá

  1. Trong Google Cloud Console, hãy chuyển đến Trình đơn > IAM & Admin (Quản lý danh tính và quyền truy cập & Quản trị) > Service Accounts (Tài khoản dịch vụ).

    Chuyển đến phần Tài khoản dịch vụ

  2. Chọn tài khoản dịch vụ của bạn.
  3. Nhấp vào Khoá > Thêm khoá > Tạo khoá mới.
  4. Chọn JSON, rồi nhấp vào Tạo.

    Cặp khoá công khai/riêng tư mới của bạn sẽ được tạo và tải xuống máy của bạn dưới dạng một tệp mới. Lưu tệp JSON đã tải xuống dưới dạng credentials.json trong thư mục đang hoạt động. Tệp này là bản sao duy nhất của khoá này. Đừng cam kết credentials.json với hệ thống quản lý phiên bản (ví dụ: thêm tệp này vào tệp .gitignore của bạn).

  5. Nhấp vào Close (Đóng).

Bắt đầu bằng cách xác định tài khoản Google Ads mà bạn đang thực hiện lệnh gọi API. Loại tài khoản mà bạn có thể gọi API phụ thuộc vào cấp truy cập API của dự án Google Cloud. Hãy xem trang tổng quan về Google Ads API để biết cấp truy cập API của bạn.

Cấp truy cập Explorer, Cơ bản và Tiêu chuẩn

Bạn có thể thực hiện lệnh gọi đến tài khoản Google Ads chính thức của mình. Tuy nhiên, bạn có thể tạo tài khoản thử nghiệm Google Ads bằng cách làm theo hướng dẫn trên thẻ Quyền truy cập thử nghiệm nếu cần.

Kiểm tra quyền truy cập

Bạn không thể sử dụng dự án trên đám mây Google Cloud để thực hiện Lệnh gọi API đến tài khoản Google Ads chính thức. Bạn chỉ có thể thực hiện lệnh gọi API đối với tài khoản thử nghiệm Google Ads.

Cách tạo tài khoản thử nghiệm Google Ads

Hướng dẫn sau đây sẽ tạo một tài khoản người quản lý thử nghiệm Google Ads và một tài khoản nhà quảng cáo thử nghiệm Google Ads bên dưới tài khoản đó.

  1. Nhấp vào nút màu xanh dương để tạo tài khoản người quản lý thử nghiệm trên Google Ads. Nếu được nhắc, hãy đăng nhập bằng một Tài khoản Google không được liên kết với tài khoản người quản lý chính thức của bạn trên Google Ads. Nếu bạn chưa có tài khoản, hãy sử dụng nút Tạo tài khoản trên trang đó để tạo Tài khoản Google mới.

    Tạo tài khoản người quản lý thử nghiệm Google Ads

  2. Trong tài khoản người quản lý thử nghiệm Google Ads, hãy tạo một tài khoản khách hàng thử nghiệm Google Ads: Nhấp vào Tài khoản > > Tạo tài khoản mới rồi điền thông tin vào biểu mẫu. Bất kỳ tài khoản Google Ads nào bạn tạo từ tài khoản người quản lý thử nghiệm Google Ads đều tự động là tài khoản thử nghiệm Google Ads.
  3. Nếu muốn, bạn có thể tạo một vài chiến dịch trong tài khoản khách hàng thử nghiệm Google Ads trên trang Google Ads.

Để thực hiện lệnh gọi API đến một khách hàng Google Ads, bạn phải cấp quyền truy cập và quyền thích hợp cho tài khoản dịch vụ của mình vào tài khoản khách hàng Google Ads. Để làm việc này, bạn cần có quyền quản trị đối với tài khoản khách hàng.

Cách cấp quyền truy cập vào tài khoản Google Ads cho tài khoản dịch vụ

  1. Bắt đầu bằng cách đăng nhập vào tài khoản Google Ads với tư cách là quản trị viên.
  2. Chuyển đến mục Quản trị viên > Quyền truy cập và bảo mật.
  3. Nhấp vào nút trong thẻ Người dùng.
    Trang Quyền truy cập và bảo mật của Google Ads hiển thị nút thêm người dùng
  4. Nhập địa chỉ email của tài khoản dịch vụ vào hộp nhập Email. Chọn cấp truy cập tài khoản phù hợp rồi nhấp vào nút Thêm tài khoản. Xin lưu ý rằng cấp truy cập Chỉ email không được hỗ trợ cho tài khoản dịch vụ.
    Hộp thoại để thêm email tài khoản dịch vụ và chọn cấp truy cập
  5. Tài khoản dịch vụ được cấp quyền truy cập.
    Trang Quyền truy cập và bảo mật cho thấy tài khoản dịch vụ có quyền truy cập
  6. [Không bắt buộc] Bạn không thể cấp quyền quản trị cho tài khoản dịch vụ trong quá trình thiết lập ban đầu. Nếu lệnh gọi API của bạn yêu cầu quyền quản trị, bạn có thể nâng cấp quyền truy cập như sau.
    1. Nhấp vào mũi tên thả xuống bên cạnh cấp truy cập của tài khoản dịch vụ trong cột Cấp truy cập.
    2. Chọn Quản trị viên trong danh sách thả xuống.

Tải các công cụ và thư viện ứng dụng xuống

Bạn có thể chọn tải thư viện ứng dụng hoặc ứng dụng HTTP xuống, tuỳ thuộc vào cách bạn muốn thực hiện lệnh gọi API.

Sử dụng thư viện ứng dụng

Tải xuống và cài đặt thư viện ứng dụng mà bạn chọn.

Sử dụng máy khách HTTP (REST)

curl

Tải xuống và cài đặt curl, công cụ dòng lệnh để chuyển dữ liệu thông qua một URL.

Giao diện dòng lệnh của Google Cloud

Làm theo hướng dẫn cài đặt Google Cloud CLI để cài đặt gcloud CLI.

Hướng dẫn trong phần còn lại của hướng dẫn này đã được xác minh là hoạt động với phiên bản sau của công cụ gcloud và có thể không hoạt động với các phiên bản trước do sự khác biệt về hành vi của ứng dụng hoặc các tuỳ chọn dòng lệnh.

:~$ gcloud version
Google Cloud SDK 492.0.0
alpha 2024.09.06
beta 2024.09.06
bq 2.1.8
bundled-python3-unix 3.11.9
core 2024.09.06
enterprise-certificate-proxy 0.3.2
gcloud-crc32c 1.0.0
gsutil 5.30

Thực hiện lệnh gọi API

Chọn ứng dụng bạn muốn để xem hướng dẫn về cách thực hiện lệnh gọi API:

Java

Các cấu phần phần mềm của thư viện ứng dụng được phát hành lên kho lưu trữ Maven Central.

Để quản lý các phiên bản phần phụ thuộc và ngăn chặn xung đột, hãy xem hướng dẫn về Bảng kê khai thành phần (BOM) của Google Ads API.

Nếu bạn không sử dụng BOM, hãy thêm trực tiếp thư viện ứng dụng vào dự án của bạn bằng một trong các công cụ xây dựng sau:

Maven: Thêm phần phụ thuộc sau vào tệp pom.xml:

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

Gradle: Thêm phần phụ thuộc sau vào tệp build.gradle:

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

Tạo tệp ads.properties trong thư mục gốc (~/ads.properties trên Linux và macOS hoặc %USERPROFILE%\ads.properties trên Windows) có nội dung sau:

api.googleads.serviceAccountSecretsPath=JSON_KEY_FILE_PATH
api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE

Trước khi chạy các yêu cầu API, hãy tạo một thực thể GoogleAdsClient. Theo mặc định, fromPropertiesFile() sẽ tải thông tin xác thực từ tệp ads.properties nằm trong thư mục gốc của bạn:

GoogleAdsClient googleAdsClient;
try {
  googleAdsClient = GoogleAdsClient.newBuilder().fromPropertiesFile().build();
} catch (IOException e) {
  System.err.printf("Failed to create GoogleAdsClient: %s%n", e);
  throw new RuntimeException("Initialization failed", e);
}

Tiếp theo, hãy chạy báo cáo chiến dịch bằng cách sử dụng GoogleAdsService.SearchStream để truyền trực tuyến các nhóm kết quả lớn một cách hiệu quả và truy xuất các chiến dịch trong tài khoản của bạn:

    private void runExample(GoogleAdsClient googleAdsClient, long customerId) {
  try (GoogleAdsServiceClient googleAdsServiceClient =
      googleAdsClient.getLatestVersion().createGoogleAdsServiceClient()) {
    String query = "SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id";
    // Constructs the SearchGoogleAdsStreamRequest.
    SearchGoogleAdsStreamRequest request =
        SearchGoogleAdsStreamRequest.newBuilder()
            .setCustomerId(Long.toString(customerId))
            .setQuery(query)
            .build();

    // Creates and issues a search Google Ads stream request that will retrieve all campaigns.
    ServerStream<SearchGoogleAdsStreamResponse> stream =
        googleAdsServiceClient.searchStreamCallable().call(request);

    // Iterates through and prints all of the results in the stream response.
    for (SearchGoogleAdsStreamResponse response : stream) {
      for (GoogleAdsRow googleAdsRow : response.getResultsList()) {
        System.out.printf(
            "Campaign with ID %d and name '%s' was found.%n",
            googleAdsRow.getCampaign().getId(), googleAdsRow.getCampaign().getName());
      }
    }
  }
}

C#

Các gói thư viện ứng dụng được phát hành lên kho lưu trữ NuGet.org. Bắt đầu bằng cách thêm tệp đối chiếu gói NuGet vào gói Google.Ads.GoogleAds:

dotnet add package Google.Ads.GoogleAds --version 27.6.0

Để thực hiện lệnh gọi API, hãy tạo một đối tượng GoogleAdsConfig từ chế độ cài đặt cấu hình (chẳng hạn như appsettings.json, biến môi trường hoặc chế độ cài đặt tuỳ chỉnh) rồi truyền đối tượng đó để khởi chạy một thực thể GoogleAdsClient:

GoogleAdsConfig config = new GoogleAdsConfig()
{
    OAuth2Mode = OAuth2Flow.SERVICE_ACCOUNT,
    OAuth2SecretsJsonPath = "JSON_KEY_FILE_PATH",
    LoginCustomerId = "INSERT_LOGIN_CUSTOMER_ID_HERE"
};
GoogleAdsClient client = new GoogleAdsClient(config);

Tiếp theo, hãy chạy báo cáo chiến dịch bằng phương thức GoogleAdsService.SearchStream để truy xuất các chiến dịch trong tài khoản của bạn. Hướng dẫn này không đề cập đến thông tin chi tiết về báo cáo.

    public void Run(GoogleAdsClient client, long customerId)
{
    // Get the GoogleAdsService.
    GoogleAdsServiceClient googleAdsService = client.GetService(
        Services.V26.GoogleAdsService);

    // Create a query that will retrieve all campaigns.
    string query = @"SELECT
                    campaign.id,
                    campaign.name,
                    campaign.network_settings.target_content_network
                FROM campaign
                ORDER BY campaign.id";

    try
    {
        // Issue a search request.
        googleAdsService.SearchStream(customerId.ToString(), query,
            delegate (SearchGoogleAdsStreamResponse resp)
            {
                foreach (GoogleAdsRow googleAdsRow in resp.Results)
                {
                    Console.WriteLine("Campaign with ID {0} and name '{1}' was found.",
                        googleAdsRow.Campaign.Id, googleAdsRow.Campaign.Name);
                }
            }
        );
    }
    catch (GoogleAdsException e)
    {
        Console.WriteLine("Failure:");
        Console.WriteLine($"Message: {e.Message}");
        Console.WriteLine($"Failure: {e.Failure}");
        Console.WriteLine($"Request ID: {e.RequestId}");
        throw;
    }
}

PHP

Các gói thư viện ứng dụng được xuất bản lên kho lưu trữ Packagist. Đảm bảo bạn đã cài đặt phiên bản PHP và Composer tương thích, sau đó chuyển sang thư mục gốc của dự án và chạy lệnh sau để cài đặt thư viện cũng như các phần phụ thuộc của thư viện trong thư mục vendor/ của dự án:

composer require googleads/google-ads-php:35.3.0

Tạo một bản sao của tệp google_ads_php.ini từ kho lưu trữ GitHub, lưu tệp đó vào thư mục gốc hoặc thư mục gốc của dự án, rồi sửa đổi tệp đó để thêm thông tin đăng nhập của bạn:

[GOOGLE_ADS]
loginCustomerId = "INSERT_LOGIN_CUSTOMER_ID_HERE"

[OAUTH2]
jsonKeyFilePath = "JSON_KEY_FILE_PATH"
scopes = "https://www.googleapis.com/auth/adwords"

Tạo một thực thể GoogleAdsClient bằng tệp cấu hình google_ads_php.ini:

use Google\Ads\GoogleAds\Lib\OAuth2TokenBuilder;
use Google\Ads\GoogleAds\Lib\V26\GoogleAdsClientBuilder;

$oauth2Credential = (new OAuth2TokenBuilder())
    ->fromFile('/path/to/google_ads_php.ini')
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->fromFile('/path/to/google_ads_php.ini')
    ->withOAuth2Credential($oauth2Credential)
    ->build();

Tiếp theo, hãy chạy báo cáo chiến dịch bằng phương thức GoogleAdsService.SearchStream để truy xuất các chiến dịch trong tài khoản của bạn:

    public static function runExample(GoogleAdsClient $googleAdsClient, int $customerId)
{
    $googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient();
    // Creates a query that retrieves all campaigns.
    $query = 'SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id';
    // Issues a search stream request.
    /** @var GoogleAdsServerStreamDecorator $stream */
    $stream = $googleAdsServiceClient->searchStream(
        SearchGoogleAdsStreamRequest::build($customerId, $query)
    );

    // Iterates over all rows in all messages and prints the requested field values for
    // the campaign in each row.
    foreach ($stream->iterateAllElements() as $googleAdsRow) {
        /** @var GoogleAdsRow $googleAdsRow */
        printf(
            "Campaign with ID %d and name '%s' was found.%s",
            $googleAdsRow->getCampaign()->getId(),
            $googleAdsRow->getCampaign()->getName(),
            PHP_EOL
        );
    }
}

Python

Thư viện ứng dụng Google Ads API cho Python được phân phối trên PyPI. Đảm bảo bạn đã cài đặt một phiên bản Python được hỗ trợ, sau đó cài đặt thư viện bằng lệnh pip:

python -m pip install google-ads==35.0.0

Để xác thực các lệnh gọi API, hãy định cấu hình tệp google-ads.yaml:

  1. Tải bản sao của tệp mẫu google-ads.yaml xuống từ kho lưu trữ GitHub.
  2. Lưu tệp vào thư mục gốc (~/google-ads.yaml) hoặc một đường dẫn tuỳ chỉnh.
  3. Mở google-ads.yaml và cập nhật để thêm thông tin đăng nhập của bạn:

    login_customer_id: INSERT_LOGIN_CUSTOMER_ID_HERE
    json_key_file_path: JSON_KEY_FILE_PATH
    

    Định cấu hình tính năng ghi nhật ký trước khi khởi chạy ứng dụng để thư viện ghi lại mọi cảnh báo về việc khởi chạy hoặc cấu hình. Ví dụ sau đây định cấu hình trình ghi nhật ký của thư viện để xuất nhật ký INFO sang đầu ra chuẩn (stdout):

import logging
import sys

logger = logging.getLogger("google.ads.googleads.client")
logger.setLevel(logging.INFO)
logger.addHandler(logging.StreamHandler(sys.stdout))

Tạo một thực thể GoogleAdsClient bằng cách gọi phương thức GoogleAdsClient.load_from_storage và truyền đường dẫn đến tệp google-ads.yaml:

from google.ads.googleads.client import GoogleAdsClient

client = GoogleAdsClient.load_from_storage("path/to/google-ads.yaml")

Nếu bạn bỏ qua đối số đường dẫn, thì theo mặc định, load_from_storage() sẽ tìm tệp cấu hình trong thư mục gốc (~/google-ads.yaml).

Tiếp theo, hãy chạy báo cáo chiến dịch bằng phương thức GoogleAdsService.SearchStream để truy xuất các chiến dịch trong tài khoản của bạn:

    def main(client: GoogleAdsClient, customer_id: str) -> None:
    ga_service: GoogleAdsServiceClient = client.get_service("GoogleAdsService")

    query: str = """
        SELECT
          campaign.id,
          campaign.name
        FROM campaign
        ORDER BY campaign.id"""

    # Issues a search request using streaming.
    stream: Iterator[SearchGoogleAdsStreamResponse] = ga_service.search_stream(
        customer_id=customer_id, query=query
    )

    for batch in stream:
        rows: List[GoogleAdsRow] = batch.results
        for row in rows:
            print(
                f"Campaign with ID {row.campaign.id} and name "
                f'"{row.campaign.name}" was found.'
            )

Ruby

Các gem Ruby cho thư viện ứng dụng được phát hành trên RubyGems. Đảm bảo bạn đã cài đặt một phiên bản Ruby được hỗ trợ và sử dụng Bundler để cài đặt thư viện:

  1. Thêm gem vào Gemfile của ứng dụng:

    gem 'google-ads-googleads', '~> 46.1.0'
    
  2. Cài đặt gem bằng cách chạy:

    bundle install

Cách định cấu hình thông tin xác thực:

  1. Sao chép tệp google_ads_config.rb mẫu từ kho lưu trữ GitHub.
  2. Lưu tệp trong thư mục gốc của dự án hoặc thư mục gốc của bạn (~).
  3. Mở google_ads_config.rb và thay thế các giá trị phần giữ chỗ bằng thông tin xác thực Google Ads API của bạn:

    Google::Ads::GoogleAds::Config.new do |c|
      c.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'
      c.keyfile = 'JSON_KEY_FILE_PATH'
    end
    

    Tạo một thực thể GoogleAdsClient bằng cách truyền đường dẫn đến tệp cấu hình (google_ads_config.rb):

client = Google::Ads::GoogleAds::GoogleAdsClient.new(
  'path/to/google_ads_config.rb'
)

Tiếp theo, hãy chạy báo cáo chiến dịch bằng phương thức GoogleAdsService.SearchStream để truy xuất các chiến dịch trong tài khoản của bạn:

    def get_campaigns(customer_id)
  # GoogleAdsClient will read a config file from
  # ENV['HOME']/google_ads_config.rb when called without parameters
  client = Google::Ads::GoogleAds::GoogleAdsClient.new

  responses = client.service.google_ads.search_stream(
    customer_id: customer_id,
    query: 'SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id',
  )

  responses.each do |response|
    response.results.each do |row|
      puts "Campaign with ID #{row.campaign.id} and name '#{row.campaign.name}' was found."
    end
  end
end

Perl

Thư viện ứng dụng Perl được phân phối trên CPAN và yêu cầu Perl 5.28 trở lên và trình quản lý gói cpan hoặc cpanm.

  1. Sao chép kho lưu trữ google-ads-perl trong thư mục mà bạn chọn:

    git clone https://github.com/googleads/google-ads-perl.git
  2. Chuyển sang thư mục google-ads-perl rồi chạy các lệnh sau để cài đặt các phần phụ thuộc bắt buộc và tạo thư viện:

    cd google-ads-perl
    cpan install Module::Build
    perl Build.PL
    perl Build installdeps
    perl Build
    perl Build install

Cách định cấu hình thông tin xác thực:

  1. Sao chép tệp cấu hình mẫu googleads.properties từ kho lưu trữ GitHub vào thư mục gốc (~/googleads.properties):

    cp googleads.properties ~/googleads.properties
  2. Chỉnh sửa ~/googleads.properties để thêm thông tin xác thực của bạn:

    jsonKeyFilePath=JSON_KEY_FILE_PATH
    loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE
    

    Tạo một thực thể Client bằng cách truyền đường dẫn đến tệp googleads.properties đã định cấu hình (chẳng hạn như ~/googleads.properties):

my $api_client = Google::Ads::GoogleAds::Client->new({
  properties_file => "/path/to/googleads.properties"
});

Tiếp theo, hãy chạy báo cáo chiến dịch bằng phương thức GoogleAdsService.SearchStream để truy xuất các chiến dịch trong tài khoản của bạn:

    sub get_campaigns {
  my ($api_client, $customer_id) = @_;

  # Create a search Google Ads stream request that will retrieve all campaigns.
  my $search_stream_request =
    Google::Ads::GoogleAds::V26::Services::GoogleAdsService::SearchGoogleAdsStreamRequest
    ->new({
      customerId => $customer_id,
      query      =>
        "SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id"
    });

  # Get the GoogleAdsService.
  my $google_ads_service = $api_client->GoogleAdsService();

  my $search_stream_handler =
    Google::Ads::GoogleAds::Utils::SearchStreamHandler->new({
      service => $google_ads_service,
      request => $search_stream_request
    });

  # Issue a search request and process the stream response to print the requested
  # field values for the campaign in each row.
  $search_stream_handler->process_contents(
    sub {
      my $google_ads_row = shift;
      printf "Campaign with ID %d and name '%s' was found.\n",
        $google_ads_row->{campaign}{id}, $google_ads_row->{campaign}{name};
    });

  return 1;
}

Khi được thực thi, tập lệnh sẽ truyền trực tuyến các hàng phù hợp và in mã nhận dạng cũng như tên của từng chiến dịch trong tài khoản của bạn.

curl

Bắt đầu bằng cách đặt tài khoản dịch vụ làm thông tin xác thực đang hoạt động trong gcloud CLI.

gcloud auth login --cred-file=JSON_KEY_FILE_PATH

Tiếp theo, hãy tìm nạp mã truy cập OAuth 2.0 cho Google Ads API.

gcloud auth \
  print-access-token \
  --scopes='https://www.googleapis.com/auth/adwords'

Tạo một tệp có tên là query.json chứa yêu cầu Ngôn ngữ truy vấn Google Ads (GAQL):

{
  "query": "SELECT campaign.id, campaign.name, campaign.network_settings.target_content_network FROM campaign ORDER BY campaign.id"
}

Chạy báo cáo chiến dịch bằng phương thức GoogleAdsService.SearchStream để truy xuất các chiến dịch trong tài khoản của bạn:

curl -i -X POST \
  https://googleads.googleapis.com/v26/customers/CUSTOMER_ID/googleAds:searchStream \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "login-customer-id: LOGIN_CUSTOMER_ID" \
  --data-binary "@query.json"

Nếu bạn gặp lỗi khi thực hiện lệnh gọi đầu tiên, hãy xem phần Xử lý lỗi API để biết hướng dẫn khắc phục sự cố.