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 herGoogleAdsField
öğesinin yer aldığı birGoogleAdsField
ö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.
İlgili bir kaynağın özelliklerini sorgulamak
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:
- Şu anda
PAUSED
durumunda olan ve 1.000'den fazla gösterime sahip tüm kampanyalar için sorgu yürütün. - Yanıttaki her
GoogleAdsRow
öğesinincampaign
alanındanCampaign
nesnesini alın. - Her kampanyanın durumunu
PAUSED
yerineENABLED
olarak değiştirin. - 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 GoogleAdsField
dokü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.