Google Ads Sorgu Dili

Google Ads Sorgu Dili, Google Ads API'yi aşağıdakiler için sorgulayabilir:

Kaynaklar ve bunlarla ilişkili özellikler, segmentler ve metrikler
GoogleAdsService Search veya SearchStream
GoogleAdsService sorgusunun sonucu, her biri bir kaynağı temsil eden GoogleAdsRow örnekleri listesidir.GoogleAdsRow İstenilen özellikler veya metrikler varsa satır bu alanları da içerir. Herhangi bir segment istenirse yanıtta her segment-kaynak ikilisi için ek bir satır da gösterilir.
Metadata about available fields and resources in
GoogleAdsFieldService

Bu hizmet, uyumluluk ve türleriyle ilgili ayrıntıları içeren sorgulanabilir alanlar kataloğu sağlar.

GoogleAdsFieldService sorgusunun sonucu, istenen alanla ilgili ayrıntıları içeren her GoogleAdsField öğesinin yer aldığı bir GoogleAdsField örneği listesidir.

Bir kaynağın özelliklerini sorgulamak

Aşağıda, kampanya kaynağının özelliklerine yönelik temel bir sorgu verilmiştir. Bu sorgu, kampanya kimliğinin, adının ve durumunun nasıl döndürüleceğini gösterir:

SELECT
  campaign.id,
  campaign.name,
  campaign.status
FROM campaign
ORDER BY campaign.id

Bu sorgu, kampanya kimliğine göre sıralama yapar. Elde edilen her GoogleAdsRow, seçilen alanlarla doldurulmuş bir campaign nesnesini temsil eder (belirtilen kampanyanın resource_name değeri dahil).

Kampanya sorguları için kullanılabilen diğer alanları öğrenmek üzere Campaign referans dokümanlarına bakın.

Metrikleri sorgulama

Belirli bir kaynak için seçilen özelliklerin yanı sıra ilgili metrikleri de sorgulayabilirsiniz:

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  metrics.impressions
FROM campaign
WHERE campaign.status = 'PAUSED'
  AND metrics.impressions > 1000
ORDER BY campaign.id

Bu sorgu, yalnızca PAUSED durumu olan ve 1.000'den fazla gösterime sahip olan kampanyaları filtreler ve kampanya kimliğine göre sıralar. Elde edilen her GoogleAdsRow, seçilen metriklerle doldurulmuş bir metrics alanına sahip olur.

Sorgulanabilen metriklerin listesi için Metrics dokümanlarına bakın.

Segmentleri sorgulama

Belirli bir kaynak için seçilen özelliklerin yanı sıra ilgili segmentleri de sorgulayabilirsiniz:

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  metrics.impressions,
  segments.date,
FROM campaign
WHERE campaign.status = 'PAUSED'
  AND metrics.impressions > 1000
  AND segments.date during LAST_30_DAYS
ORDER BY campaign.id

Metrikler için sorgulamaya benzer şekilde bu sorgu yalnızca PAUSED durumu olan ve 1.000'den fazla gösterim alan kampanyaları filtreler. Ancak bu sorgu, verileri tarihe göre segmentlere ayırır. Bu işlem sonucunda elde edilen her GoogleAdsRow, bir kampanyanın tuple'ini ve Segment tarihini temsil eder. Segmentasyonun, seçili metrikleri böldüğünü ve SELECT yan tümcesinde her segmente göre gruplandırdığını unutmayın.

Sorgulanabilen segmentlerin listesi için Segments dokümanlarına bakın.

Belirli bir kaynağa yönelik bir sorguda, varsa diğer ilgili kaynaklara katılabilir. Bu ilgili kaynaklar "özellik atanmış kaynaklar" olarak bilinir. Sorgunuzda bir özellik seçerek ilişkilendirilmiş kaynaklarla dolaylı olarak birleştirme yapabilirsiniz.

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  bidding_strategy.name
FROM campaign
ORDER BY campaign.id

Bu sorgu yalnızca kampanya özelliklerini seçmekle kalmaz, seçilen her kampanyadan ilgili özellikleri de alır. Elde edilen her GoogleAdsRow, seçilen kampanya özelliklerinin yanı sıra seçilen teklif stratejisi özelliği bidding_strategy.name ile doldurulmuş bir campaign nesnesini temsil eder.

Kampanya sorguları için hangi ilişkilendirilmiş kaynakların kullanılabildiğini öğrenmek üzere Campaign referans dokümanlarına bakın.

Sorgu sonuçlarına göre mutasyon

Belirli bir kaynak için sorgu yaparken döndürülen sonuçları hemen nesne olarak alabilir, değiştirebilir ve ilgili kaynağın hizmetindeki mutate yöntemine geri gönderebilirsiniz. Aşağıda örnek bir iş akışı verilmiştir:

  1. Şu anda PAUSED durumunda olan ve 1.000'den fazla gösterime sahip tüm kampanyalar için sorgu yürütün.
  2. Yanıttaki her GoogleAdsRow öğesinin campaign alanından Campaign nesnesini alın.
  3. Her kampanyanın durumunu PAUSED yerine ENABLED olarak değiştirin.
  4. Değiştirilen kampanyaları güncellemek için CampaignService.MutateCampaigns işlevini çağırın.

Alan meta verileri

GoogleAdsFieldService adresine gönderilen sorgular, alan meta verilerini almak içindir. Bu bilgiler, alanlarda bir sorgu içinde birlikte nasıl kullanılabileceğini anlamak için kullanılabilir. Veriler API'den alınabilir ve bir sorguyu doğrulamak veya oluşturmak için gerekli meta verileri sağladığından geliştiriciler bu işlemleri programatik olarak yapabilir. Meta veriler için tipik bir sorgu aşağıda verilmiştir:

SELECT
  name,
  category,
  selectable,
  filterable,
  sortable,
  selectable_with,
  data_type,
  is_repeated
WHERE name = "<INSERT_RESOURCE_OR_FIELD>"

Bu sorguda <INSERT_RESOURCE_OR_FIELD> değerini bir kaynak (customer veya campaign gibi) ya da alan (campaign.id, metrics.impressions veya ad_group.id gibi) ile değiştirebilirsiniz.

Sorgulanabilen alanların listesi için GoogleAdsFielddokümanlarına bakın.

Kod örnekleri

İstemci kitaplıklarında, Google Ads Sorgu Dili'nin GoogleAdsService'de kullanıldığı örnekler bulunur. Temel işlemler klasöründe GetCampaigns, GetKeywords ve SearchForGoogleAdsFields gibi örnekler bulunur.