GoogleAdsService
, Google Ads API'nin birleştirilmiş nesne alma ve raporlama hizmetidir. Hizmette şunları sağlayan yöntemler bulunur:
- Nesnelerin belirli özelliklerini alın.
- Bir tarih aralığına göre nesnelere ilişkin performans metriklerini alın.
- Nesneleri özelliklerine göre sıralayın.
- Yanıtta döndürülmesini istediğiniz nesneleri belirtmek için koşulları kullanın.
- Döndürülen nesnelerin sayısını sınırlayın.
GoogleAdsService
, sonuçları iki şekilde döndürebilir:
GoogleAdsService.SearchStream
, tek bir akış yanıtındaki tüm satırları döndürür. Bu, büyük (10.000'den fazla satırdan fazla) sonuç kümeleri için daha verimlidir. Toplu uygulamanız mümkün olduğunca hızlı bir şekilde çok fazla veri indirmek istiyorsa bu daha uygun olabilir.GoogleAdsService.Search
büyük yanıtları yönetilebilir sonuç sayfalarına ayırır. Etkileşimli uygulamanız her defasında bir sonuç sayfası gösteriyorsa bu daha uygun olabilir.
Sayfalara ayırma ve akış hakkında daha fazla bilgi edinin.
İstekte bulunun
Arama yöntemi, aşağıdaki özelliklerden oluşan bir SearchGoogleAdsRequest
gerektirir:
customer_id
- Sorgulanacak kaynağın, özelliklerin, segmentlerin ve metriklerin alınacağı ve hangi nesnelerin döndürüleceğini kısıtlamak için kullanılacak koşulları belirten Google Ads Sorgu Dili
query
- (Yalnızca
GoogleAdsService.Search
) Sayfa oluşturma kullanılırken tek bir yanıtta kaç nesnenin döndürüleceğini belirten birpage_size
. - (Yalnızca
GoogleAdsService.Search
) Sayfa oluşturma işlemi sırasında sonraki sonuç grubunu almak için kullanılacak isteğe bağlı birpage_token
.
Google Ads Sorgu Dili hakkında daha fazla bilgi için Google Ads Sorgu Dili kılavuzuna göz atın.
Yanıtları işleme
GoogleAdsService
, GoogleAdsRow
nesne listesini döndürür.
Her GoogleAdsRow
, sorgu tarafından döndürülen bir nesneyi temsil eder ve SELECT
yan tümcesinde istenen alanlara göre doldurulan bir dizi özellikten oluşur. SELECT
yan tümcesine dahil olmayan özellikler yanıttaki GoogleAdsRow
nesnelerinde doldurulmaz.
Örneğin, ad_group_criterion
bir status
özelliğine sahip olsa da, SELECT
ifadesi ad_group_criterion.status
içermeyen bir sorgu yanıtında, satırın ad_group_criterion
özelliğinin status
alanı doldurulmaz. Benzer şekilde, SELECT
yantümcesi campaign
kaynağından herhangi bir alan içermiyorsa satırın campaign
özelliği doldurulmaz.
Her GoogleAdsRow
, aynı sonuç kümesindeki başka bir satırdan farklı özelliklere ve metriklere sahip olabilir. Bu nedenle, satırlar tablonun sabit satırları yerine nesne olarak görüntülenmelidir.
BİLİNMEYEN enum türleri
UNKNOWN
türüyle döndürülen kaynaklar söz konusu API sürümünde tam olarak desteklenmez. Bu kaynaklar, Google Ads kullanıcı arayüzü gibi başka arayüzler aracılığıyla oluşturulmuş olabilir. Bir kaynak UNKNOWN
türüne sahip olduğunda metrikleri seçebilirsiniz ancak kaynağı API aracılığıyla değiştiremezsiniz. Buna örnek olarak, kullanıcı arayüzünde kullanıma sunulan ancak sorguladığınız API sürümünde desteklenmeyen yeni bir kampanya veya reklam verilebilir.
Unutulmaması gereken bazı noktalar aşağıda belirtilmiştir:
UNKNOWN
türündeki bir kaynak daha sonra desteklenebilir veya süresiz olarakUNKNOWN
kalabilir.UNKNOWN
türündeki yeni nesneler herhangi bir zamanda görünebilir. Enum değeri zaten mevcut olduğundan bu nesneler geriye dönük olarak uyumludur. Hesabınızın doğru görünümünü sunabilmek için kaynaklar kullanıma sunuldukça bu değişiklikle birlikte sunulmaktadır.UNKNOWN
kaynağı, hesabınızda diğer arayüzler üzerinden gerçekleştirilen yeni etkinlikler nedeniyle veya bir kaynağın artık desteklenmediğinde görüntülenebilir.UNKNOWN
kaynaklarında sorgulanabilir ayrıntılı metrikler bulunabilir.UNKNOWN
kaynaklar, Google Ads kullanıcı arayüzünde genellikle tamamen görünür durumda olur.UNKNOWN
kaynakları genellikle değiştirilemez.
Segmentasyon
Yanıt, aşağıdakilerin her kombinasyonu için bir GoogleAdsRow
içerir:
FROM
yan tümcesinde belirtilen ana kaynağın örneği- Seçilen her
segment
alanının değeri
Örneğin, FROM campaign
'i seçen ve SELECT
yan tümcesinde segments.ad_network_type
ile segments.date
ifadesi bulunan bir sorgunun yanıtı, aşağıdakilerin her bir kombinasyonu için bir satır içerir:
campaign
segments.ad_network_type
segments.date
Sonuçlar, seçilen tek tek alanların değerlerine göre değil, ana kaynağın her bir örneğine göre örtülü olarak segmentlere ayrılır. Örneğin,
SELECT campaign.status, metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_14_DAYS
sonuçları, campaign.status
alanının her farklı değeri için bir satır değil, kampanya başına bir satırla sonuçlanır.