Hızlı başlangıç

Bu hızlı başlangıç kılavuzu, Google Ads API'ye ilk API çağrınızı yapmanıza yardımcı olur.

Temel kavramlar

  • Google Cloud projesi: Google Cloud projesi; API'leri ve OAuth 2.0 API kimlik bilgilerini yönetme de dahil olmak üzere tüm Google hizmetlerini oluşturma, etkinleştirme ve kullanma işlemlerinin temelini oluşturur. Google Cloud Console'dan bir proje oluşturabilirsiniz.
  • API erişim düzeyi: Google Cloud projenizin API erişim düzeyi, günlük yapabileceğiniz API çağrılarının sayısını ve API çağrıları yapabileceğiniz ortamları kontrol eder. Projenizin API erişim düzeyi, projenizin Google Ads API'ye Genel Bakış sayfasında listelenir.
  • Google Ads yönetici hesabı: Google Ads yönetici hesabı, diğer Google Ads hesaplarını yönetmek için kullanılır. Bu hesaplar, Google Ads müşteri hesapları veya diğer Google Ads yönetici hesaplarından oluşan bir koleksiyon olabilir.
  • Google Ads müşteri hesabı: API çağrılarıyla hedeflemek istediğiniz reklamları yayınlamak için kullanılan Google Ads hesabı.
  • Müşteri kimliği: Google Ads müşteri hesabını tanımlayan 10 haneli numara. Bu kimliği Google Ads kullanıcı arayüzünden kopyaladıysanız kısa çizgileri kaldırdığınızdan emin olun.
  • OAuth 2.0: OAuth 2.0, tüm Google API'leri tarafından kullanılan, yetkilendirme için endüstri standardı bir protokoldür. API çağrıları yapmak için OAuth 2.0 kimlik bilgileri oluşturmak üzere bir hizmet hesabına ve anahtara ihtiyacınız vardır.
  • Hizmet hesabı: Bireysel bir kullanıcı yerine uygulamanıza ait olan özel bir Google Hesabı türüdür. Uygulamanızın Google Ads API'de kimliğini doğrulamak için kullanılır. Hizmet hesabı edinmek için Google Cloud projeniz olmalıdır.
  • Hizmet hesabı anahtarı: Hizmet hesabınızın özel anahtarını içeren bir JSON uygulama kimlik bilgisi dosyası. Google Ads API çağrısı yaparken bir hizmet hesabının kimliğini doğrulamak için OAuth 2.0 kimlik bilgileri oluşturmak amacıyla kullanılır. Hizmet hesabı anahtarı almak için bir hizmet hesabınızın olması gerekir.

Ön koşullar

Google Ads API çağrısı yapmak için aşağıdaki adımları tamamlamanız gerekir.

Cloud projenizi Google Ads API erişimi için yapılandırma

Google Cloud projesi, Google API'lerini ve OAuth 2.0 API kimlik bilgilerini yönetmek için kullanılır. Mevcut Google Cloud bulut projelerinizi bulabilir veya Google Cloud Console'u ziyaret ederek yeni bir bulut projesi oluşturabilirsiniz.

Öncelikle projenizde Google Ads API'yi etkinleştirin:

Google Ads API'yi etkinleştirme

Ardından, Google Ads API'ye Genel Bakış sayfasını ziyaret edin. Sayfada mevcut API erişim düzeyiniz gösterilir. Mevcut API erişim düzeyiniz Test ise Erişim düzeyini yükselt bölümünü genişletin. Explorer erişim düzeyine başvurmak için talimatları uygulayın.

Başvurunuzu tamamladığınızda Google, başvurunuzu otomatik olarak inceler ve çoğu durumda Explorer'a yükseltir. Explorer erişimi verilmediyse endişelenmeyin. Bu kılavuzda, Google Ads müşteri hesabınızı yapılandırırken uygun talimatlar sağlanacaktır.

Hizmet hesabı oluşturma

API çağrıları yapmak için bir hizmet hesabına ve hizmet hesabı anahtarına ihtiyacınız vardır. Başka bir Google API'sini kullanıyorsanız ve bir OAuth 2.0 hizmet hesabı ile anahtarı oluşturduysanız bu adımı atlayabilir ve mevcut kimlik bilgilerini yeniden kullanabilirsiniz.

Hizmet hesabı ve anahtarı oluşturma

  1. Google Cloud konsolunda Menü > IAM ve Yönetici > Hizmet Hesapları'na gidin.

    Hizmet Hesapları'na gidin

  2. Hizmet hesabınızı seçin.
  3. Anahtarlar > Anahtar ekle > Yeni anahtar oluştur'u tıklayın.
  4. JSON'u seçin, ardından Create'i (Oluştur) tıklayın.

    Herkese açık/özel yeni anahtar çiftiniz oluşturulur ve makinenize yeni bir dosya olarak indirilir. İndirilen JSON dosyasını çalışma dizininize credentials.json olarak kaydedin. Bu dosya, bu anahtarın tek kopyasıdır. credentials.json dosyasını sürüm denetimine eklemeyin (örneğin, .gitignore dosyanıza ekleyin).

  5. Kapat'ı tıklayın.

Öncelikle API çağrıları yaptığınız Google Ads hesabını belirleyin. API çağrısı yapabileceğiniz hesap türü, Google Cloud projenizin API erişim düzeyine bağlıdır. API erişim düzeyinizi öğrenmek için Google Ads API'ye genel bakış sayfanızı kontrol edin.

Explorer, Basic ve Standard erişim düzeyleri

Google Ads üretim hesabınıza çağrı yapabilirsiniz. Ancak gerekirse Test erişimi sekmesindeki talimatları uygulayarak bir Google Ads test hesabı oluşturabilirsiniz.

Erişimi test etme

Google Cloud projeniz, bir Google Ads üretim hesabına API çağrısı yapmak için kullanılamaz. Yalnızca Google Ads test hesaplarına yönelik API çağrıları yapabilirsiniz.

Google Ads test hesabı oluşturma

Aşağıdaki talimatlar, bir Google Ads test yönetici hesabı ve bunun altında bir Google Ads test müşteri hesabı oluşturur.

  1. Google Ads hesap seçimi sayfasını açmak için Test yönetici hesabı oluşturun'u tıklayın. İstenirse Google Ads üretim yönetici hesabınıza bağlı olmayan bir Google Hesabı ile oturum açın veya yeni bir Google Hesabı oluşturmak için Hesap oluştur'u tıklayın.

    Test yönetici hesabı oluşturma

  2. Hesap seçimi sayfasında Yeni Google Ads Hesabı'nı tıklayın (veya Hesabınızın kurulumunu tamamlayın iletişim kutusu görünürse Yeni hesap oluştur'u tıklayın). Hesap seçimi sayfasında test göstergesi görünmez ancak bu sayfayı Test yönetici hesabı oluşturun sayfasından açtığınızda kayıt akışı, test yönetici hesabı oluşturacak şekilde yapılandırılır.

  3. İşletme bilgilerinizi onaylayın sayfasında Hesabın görünen adı girin, Hesabın birincil kullanımı seçeneğini belirleyin, ülkenizi, saat diliminizi ve para biriminizi seçin. Sağ üst köşedeki kırmızı Test hesabı etiketini onaylayın, Gönder'i ve ardından Hesabınızı keşfedin'i tıklayarak test yönetici kontrol panelinizi açın.

  4. Google Ads test yönetici hesabınızdayken bir Google Ads test müşteri hesabı oluşturun: Hesaplar > > Yeni hesap oluştur'u tıklayın. Bir hesap adı girin, ülkenizi, saat diliminizi ve para biriminizi seçip hesabı kaydedin. Test yönetici hesabınızdan oluşturduğunuz tüm müşteri hesapları otomatik olarak test hesabı olur. (Doğrulama ile ilgili yardım için Test hesaplarını görüntüleme bölümüne bakın.)

  5. İsteğe bağlı: Google Ads sayfasından test müşteri hesabı altında en az bir test kampanyası oluşturun. Kampanya oluşturma adımını atlarsanız API çağrısı yapma bölümündeki ilk API çağrınız başarılı olur ancak boş bir yanıt döndürür (sıfır kampanya).

Bir Google Ads müşterisine API çağrısı yapmak için hizmet hesabınıza Google Ads müşteri hesabına erişim ve uygun izinler vermeniz gerekir. Bunun için müşteri hesabına yönetici erişiminizin olması gerekir.

Hizmet hesabına Google Ads hesabınıza erişim izni verme

  1. Öncelikle Google Ads hesabınızda yönetici olarak oturum açın.
  2. Yönetici > Erişim ve güvenlik'e gidin.
  3. Kullanıcılar sekmesindeki düğmesini tıklayın.
    Kullanıcı ekle düğmesinin gösterildiği Google Ads Erişim ve güvenlik sayfası
  4. Hizmet hesabı e-posta adresini E-posta giriş kutusuna yazın. Uygun hesap erişim düzeyini seçin ve Hesap ekle düğmesini tıklayın. E-posta erişim düzeyinin hizmet hesapları için desteklenmediğini unutmayın.
    Hizmet hesabı e-posta adresi eklemek ve erişim düzeyi seçmek için iletişim kutusu
  5. Hizmet hesabına erişim izni verilir.
    Erişim izni olan hizmet hesabını gösteren erişim ve güvenlik sayfası
  6. [İsteğe bağlı] İlk kurulum sırasında bir hizmet hesabına yönetici erişimi veremezsiniz. API çağrılarınız yönetici erişimi gerektiriyorsa erişimi aşağıdaki şekilde yükseltebilirsiniz.
    1. Erişim düzeyi sütununda hizmet hesabının erişim düzeyinin yanındaki açılır oku tıklayın.
    2. Açılır listeden Yönetici'yi seçin.

Araçları ve istemci kitaplıklarını indirme

API çağrılarını nasıl yapmak istediğinize bağlı olarak bir istemci kitaplığı veya HTTP istemcisi indirmeyi seçebilirsiniz.

İstemci kitaplığı kullanma

Tercih ettiğiniz bir istemci kitaplığını indirip yükleyin.

HTTP istemcisini (REST) kullanma

curl

URL üzerinden veri aktarmak için kullanılan komut satırı aracı curl'ü indirip yükleyin.

Google Cloud komut satırı arayüzü

gcloud CLI'yı yüklemek için Google Cloud CLI kurulum kılavuzundaki adımları uygulayın.

Bu kılavuzun geri kalanındaki talimatların, gcloud aracının aşağıdaki sürümüyle çalıştığı doğrulanmıştır. Uygulama davranışındaki veya komut satırı seçeneklerindeki farklılıklar nedeniyle önceki sürümlerle çalışmayabilir.

:~$ 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

API çağrısı yapma

API çağrısı yapma talimatları için tercih ettiğiniz istemciyi seçin:

Java

İstemci kitaplığı yapıları, Maven Central deposunda yayınlanır.

Bağımlılık sürümlerini yönetmek ve çakışmaları önlemek için Google Ads API Malzeme Listesi (BOM) kılavuzuna bakın.

BOM kullanmıyorsanız aşağıdaki derleme araçlarından birini kullanarak istemci kitaplığını doğrudan projenize ekleyin:

Maven: pom.xml dosyanıza aşağıdaki bağımlılığı ekleyin:

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

Gradle: build.gradle dosyanıza aşağıdaki bağımlılığı ekleyin:

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

Ana dizininizde (Linux ve macOS'te ~/ads.properties, Windows'ta %USERPROFILE%\ads.properties) aşağıdaki içeriğe sahip bir ads.properties dosyası oluşturun:

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

API isteklerini çalıştırmadan önce bir GoogleAdsClient örneği oluşturun. Varsayılan olarak fromPropertiesFile(), kimlik bilgilerini ana dizininizde bulunan ads.properties dosyasından yükler:

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

Ardından, büyük sonuç kümelerini verimli bir şekilde akışa almak ve hesabınızdaki kampanyaları almak için GoogleAdsService.SearchStream kullanarak bir kampanya raporu çalıştırı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#

İstemci kitaplığı paketleri, NuGet.org deposunda yayınlanır. Google.Ads.GoogleAds paketine bir NuGet paket referansı ekleyerek başlayın:

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

API çağrıları yapmak için yapılandırma ayarlarınızdan (ör. appsettings.json, ortam değişkenleri veya özel ayarlar) bir GoogleAdsConfig nesnesi oluşturun ve bunu bir GoogleAdsClient örneğini ilk kullanıma hazırlamak için iletin:

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

Ardından, hesabınızdaki kampanyaları almak için GoogleAdsService.SearchStream yöntemini kullanarak bir kampanya raporu çalıştırın. Bu kılavuzda raporlama ile ilgili ayrıntılar ele alınmamaktadır.

    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

İstemci kitaplığı paketleri, Packagist deposunda yayınlanır. Uyumlu bir PHP sürümünüzün ve Composer'ın yüklü olduğundan emin olun, ardından projenizin kök dizinine geçin ve kitaplığı ve bağımlılıklarını projenizin vendor/ dizinine yüklemek için aşağıdaki komutu çalıştırın:

composer require googleads/google-ads-php:35.3.0

GitHub deposundan google_ads_php.ini dosyasının bir kopyasını oluşturun, ana dizininize veya projenizin kök dizinine kaydedin ve kimlik bilgilerinizi içerecek şekilde değiştirin:

[GOOGLE_ADS]
loginCustomerId = "INSERT_LOGIN_CUSTOMER_ID_HERE"

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

google_ads_php.ini yapılandırma dosyanızı kullanarak bir GoogleAdsClient örneği oluşturun:

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();

Ardından, hesabınızdaki kampanyaları almak için GoogleAdsService.SearchStream yöntemini kullanarak bir kampanya raporu çalıştırı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

Python için Google Ads API istemci kitaplığı, PyPI'da dağıtılır. Desteklenen bir Python sürümünün yüklü olduğundan emin olun, ardından pip kullanarak kitaplığı yükleyin:

python -m pip install google-ads==35.0.0

API çağrılarınızın kimliğini doğrulamak için bir google-ads.yaml dosyası yapılandırın:

  1. GitHub deposundan örnek google-ads.yaml dosyasının bir kopyasını indirin.
  2. Dosyayı ana dizininize (~/google-ads.yaml) veya özel bir yola kaydedin.
  3. google-ads.yaml dosyasını açın ve kimlik bilgilerinizi içerecek şekilde güncelleyin:

    login_customer_id: INSERT_LOGIN_CUSTOMER_ID_HERE
    json_key_file_path: JSON_KEY_FILE_PATH
    

    Kitaplığın başlatma veya yapılandırma uyarılarını yakalaması için istemciyi başlatmadan önce günlük kaydını yapılandırın. Aşağıdaki örnekte, kitaplığın günlükçüsü, INFO günlüklerini standart çıkışa (stdout) gönderecek şekilde yapılandırılmıştır:

import logging
import sys

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

GoogleAdsClient.load_from_storage yöntemini çağırıp google-ads.yaml dosyanızın yolunu ileterek bir GoogleAdsClient örneği oluşturun:

from google.ads.googleads.client import GoogleAdsClient

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

Yol bağımsız değişkenini atlarsanız load_from_storage(), varsayılan olarak ana dizininizde (~/google-ads.yaml) yapılandırma dosyasını arar.

Ardından, hesabınızdaki kampanyaları almak için GoogleAdsService.SearchStream yöntemini kullanarak bir kampanya raporu çalıştırı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

İstemci kitaplığı için Ruby gem'leri RubyGems'de yayınlanır. Desteklenen bir Ruby sürümünün yüklü olduğundan emin olun ve kitaplığı yüklemek için Bundler'ı kullanın:

  1. Gem'i uygulamanızın Gemfile dosyasına ekleyin:

    gem 'google-ads-googleads', '~> 46.1.0'
    
  2. Aşağıdaki komutu çalıştırarak gem'i yükleyin:

    bundle install

Kimlik bilgilerinizi yapılandırmak için:

  1. GitHub deposundan örnek google_ads_config.rb dosyasını kopyalayın.
  2. Dosyayı projenizin kök dizinine veya ana dizininize (~) kaydedin.
  3. google_ads_config.rb dosyasını açın ve yer tutucu değerlerini Google Ads API kimlik bilgilerinizle değiştirin:

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

    Yapılandırma dosyanızın (google_ads_config.rb) yolunu ileterek bir GoogleAdsClient örneği oluşturun:

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

Ardından, hesabınızdaki kampanyaları almak için GoogleAdsService.SearchStream yöntemini kullanarak bir kampanya raporu çalıştırı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

Perl istemci kitaplığı, CPAN'de dağıtılır ve Perl 5.28 veya sonraki bir sürüm ile cpan ya da cpanm paket yöneticisini gerektirir.

  1. google-ads-perl deposunu istediğiniz dizine klonlayın:

    git clone https://github.com/googleads/google-ads-perl.git
  2. google-ads-perl dizinine geçin ve gerekli bağımlılıkları yükleyip kitaplığı derlemek için aşağıdaki komutları çalıştırın:

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

Kimlik bilgilerinizi yapılandırmak için:

  1. GitHub deposundaki örnek googleads.properties yapılandırma dosyasını ana dizininize (~/googleads.properties) kopyalayın:

    cp googleads.properties ~/googleads.properties
  2. Kimlik bilgilerinizi eklemek için ~/googleads.properties dosyasını düzenleyin:

    jsonKeyFilePath=JSON_KEY_FILE_PATH
    loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE
    

    Yapılandırılmış googleads.properties dosyanızın yolunu (ör. ~/googleads.properties) ileterek bir Client örneği oluşturun:

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

Ardından, hesabınızdaki kampanyaları almak için GoogleAdsService.SearchStream yöntemini kullanarak bir kampanya raporu çalıştırı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;
}

Komut dosyası yürütüldüğünde eşleşen satırları akış olarak aktarır ve hesabınızdaki her kampanyanın kimliğini ve adını yazdırır.

curl

Hizmet hesabını gcloud CLI'da etkin kimlik bilgileri olarak ayarlayarak başlayın.

gcloud auth login --cred-file=JSON_KEY_FILE_PATH

Ardından, Google Ads API için bir OAuth 2.0 erişim jetonu alın.

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

Google Ads Sorgu Dili (GAQL) isteğinizi içeren query.json adlı bir dosya oluşturun:

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

Hesabınızdaki kampanyaları almak için GoogleAdsService.SearchStream yöntemini kullanarak bir kampanya raporu çalıştırı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"

İlk çağrınızı yaparken hata alırsanız sorun giderme konusunda yardım almak için API hatalarını işleme başlıklı makaleyi inceleyin.