Hizmet hesabı iş akışı

Bu kılavuzda, hizmet hesaplarıyla Google Ads API'ye nasıl erişileceği açıklanmaktadır.

Hizmet hesabı, tek bir son kullanıcıya değil, uygulamanıza ait olan bir hesaptır. Hizmet hesapları, insan yetkilendirmesi gerektirmeyen bir OAuth 2.0 akışı kullanır. Bunun yerine, yalnızca uygulamanızın erişebileceği bir anahtar dosyası kullanılır.

Hizmet hesaplarını kullanmanın iki temel avantajı vardır:

  • Google Ads hesaplarına Google Ads API erişimi için yetkilendirme, Google Ads kullanıcı arayüzünün sunduğu yetkilendirme ve hesap yönetimi özelliklerinden yararlanarak bir yapılandırma adımı olarak yapılır. Bu sayede geliştiriciler, OAuth 2.0 akışları oluşturmak ve kullanıcı etkileşimi, kullanıcı kimlik bilgilerini depolama ve jeton yönetimiyle ilgili karmaşık sorunlarla uğraşmak zorunda kalmaz.

  • Google Ads hesaplarına erişim yetkisi, bireysel kullanıcı kimlik bilgilerine bağlı değildir. Bu durum, erişim yetkisini veren çalışanın ekipten veya şirketten ayrılması durumunda bile yetkinin devam etmesi beklenen durumlarda yararlı olabilir.

Hesap erişimi kurulumu

  1. Hizmet hesabı ve kimlik bilgileri oluşturarak başlayın.

    Hizmet hesabı anahtarını JSON biçiminde indirin ve hizmet hesabı kimliğini ve e-posta adresini not edin.

  2. Google Ads hesabınızda yönetici olarak oturum açın. Yönetici > Erişim ve güvenlik'e gidin.

  3. Kullanıcılar sekmesinde + düğmesini tıklayın.

  4. E-posta giriş kutusuna hizmet hesabı e-postasını yazın. Uygun hesap erişim düzeyini seçin (hizmet hesaplarının Yalnızca e-posta erişim düzeyini desteklemediğini unutmayın) ve Hesap ekle düğmesini tıklayın.

    Hizmet hesabına erişim izni verilir.

  5. İsteğe bağlı: Varsayılan olarak, bir hizmet hesabına yönetici erişimi veremezsiniz. En az ayrıcalık ilkesine uyun ve yalnızca API çağrılarınız gerektiriyorsa yönetici erişimi verin. Erişimi aşağıdaki şekilde yükseltebilirsiniz:

    • Erişim düzeyi sütununda, hizmet hesabının erişim düzeyinin yanındaki açılır okunu tıklayın.
    • Açılır listeden Yönetici'yi seçin.

İstemci kitaplığı yapılandırması

İstemci kitaplığınızı yapılandırma talimatları için programlama dilinize karşılık gelen sekmeyi seçin. Hizmet hesabınız müşteri hesaplarına bir Google Ads yönetici hesabı üzerinden erişiyorsa login-customer-id (veya loginCustomerId) değerini de bu yönetici hesabının 10 haneli müşteri kimliğine, kısa çizgi olmadan ayarlayın (Giriş müşteri kimliği bölümüne bakın).

Java

Yapılandırmanızda özel anahtar JSON yolunu ayarlayın. ads.properties dosyası kullanıyorsanız aşağıdakileri ekleyin:

api.googleads.serviceAccountSecretsPath=JSON_KEY_FILE_PATH

Daha fazla bilgi için yapılandırma kılavuzuna bakın.

.NET

GoogleAdsConfig örneğinde OAuth2Mode ve OAuth2SecretsJsonPath değerlerini ayarlayın ve GoogleAdsClient nesnesini başlatmak için kullanın.

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

Daha fazla bilgi için yapılandırma kılavuzuna bakın.

Python

Yapılandırmanızda özel anahtar JSON yolunu ayarlayın. google-ads.yaml dosyası, YAML dizesi veya dict kullanıyorsanız aşağıdakileri ekleyin:

json_key_file_path: JSON_KEY_FILE_PATH

Ortam değişkenleri kullanıyorsanız Bash yapılandırmanıza veya ortamınıza aşağıdakileri ekleyin:

export GOOGLE_ADS_JSON_KEY_FILE_PATH=JSON_KEY_FILE_PATH

Ek ayrıntılar için yapılandırma kılavuzuna bakın.

PHP

google_ads_php.ini dosyanızda aşağıdaki anahtarları yapılandırın.

[OAUTH2]
; For service account flow.
jsonKeyFilePath = "JSON_KEY_FILE_PATH"
scopes = "https://www.googleapis.com/auth/adwords"

Daha fazla bilgi için yapılandırma kılavuzuna bakın.

Ruby

google_ads_config.rb dosyanızda aşağıdaki anahtarları yapılandırın.

c.keyfile = 'JSON_KEY_FILE_PATH'

Daha fazla bilgi için yapılandırma kılavuzuna bakın.

Perl

Yapılandırmanızda özel anahtar JSON yolunu ayarlayın. googleads.properties dosyası kullanıyorsanız aşağıdakileri ekleyin:

jsonKeyFilePath=JSON_KEY_FILE_PATH

Ortam değişkenleri kullanıyorsanız Bash yapılandırmanıza veya ortamınıza aşağıdakileri ekleyin:

export GOOGLE_ADS_JSON_KEY_FILE_PATH=JSON_KEY_FILE_PATH

Daha fazla bilgi için yapılandırma kılavuzuna bakın.

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'

Erişim jetonunu API çağrılarınızda kullanabilirsiniz. Aşağıdaki örnekte, hesabınızdaki kampanyaları almak için GoogleAdsService.SearchStream yöntemini kullanarak nasıl kampanya raporu çalıştırılacağı gösterilmektedir. Bu kılavuzda raporlama ile ilgili ayrıntılar ele alınmamaktadır.

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"

query.json dosyasının içeriği şu şekildedir:

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