GoogleAdsService
, Google Ads API'nin birleşik nesne getirme ve raporlama hizmetidir. Hizmetin aşağıdakileri sağlayan yöntemleri vardır:
- Nesnelerin belirli özelliklerini alma.
- Tarih aralığına göre nesnelerin performans metriklerini alma
- Nesneleri özelliklerine göre sıralama
- Yanıtta döndürülmesini istediğiniz nesneleri belirtmek için koşulları kullanın.
- Döndürülen nesne sayısını sınırlayın.
GoogleAdsService
, sonuçları iki şekilde döndürebilir:
GoogleAdsService.SearchStream
, tüm satırları tek bir akış yanıtında döndürür. Bu, büyük (10.000 satırdan fazla) sonuç kümeleri için daha verimlidir. Toplu uygulamanız mümkün olduğunca fazla veri indirmek istiyorsa bu yöntem daha uygun olabilir.GoogleAdsService.Search
, büyük yanıtları yönetilebilir sonuç sayfalarına ayırır. Bu, etkileşimli uygulamanız bir seferde bir sayfa sonuç gösteriyorsa daha uygun olabilir.
Sayfalama ve akış karşılaştırması hakkında daha fazla bilgi edinin.
İstekte bulunun
Arama yöntemi, aşağıdaki özelliklerden oluşan bir SearchGoogleAdsRequest
gerektirir:
customer_id
- Hangi kaynağın sorgulandığını, hangi özelliklerin, segmentlerin ve metriklerin alınacağını ve hangi nesnelerin döndürüleceğini kısıtlamak için kullanılacak koşulları belirten bir Google Ads sorgu dili
query
- (Yalnızca
GoogleAdsService.Search
) Sayfalama kullanılırken tek bir yanıtta kaç nesnenin döndürüleceğini belirtmek için birpage_size
. - (Yalnızca
GoogleAdsService.Search
) Sayfalama kullanılırken sonraki sonuç grubunu almak için 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
nesnelerinin listesini döndürür.
Her GoogleAdsRow
, bir sorgu tarafından döndürülen bir nesneyi temsil eder ve SELECT
yan tümcesinde istenen alanlara göre doldurulan bir özellik grubundan oluşur. SELECT
yan tümcesine dahil edilmeyen özellikler, yanıttaki GoogleAdsRow
nesnelerinde doldurulmaz.
Örneğin, bir ad_group_criterion
öğesinde status
özelliği olsa da satırın ad_group_criterion
özelliğinin status
alanı, SELECT
yan tümcesinin ad_group_criterion.status
içermediği bir sorgu yanıtında doldurulmaz. Benzer şekilde, SELECT
yan tü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 bir tablonun sabit satırları yerine nesne olarak görüntülenmelidir.
UNKNOWN enum türleri
UNKNOWN
türüyle döndürülen kaynaklar, ilgili API sürümünde tam olarak desteklenmez. Bu kaynaklar, Google Ads kullanıcı arayüzü gibi diğer arayüzler aracılığıyla oluşturulmuş olabilir. Bir kaynağın türü UNKNOWN
olduğunda metrikleri seçebilirsiniz ancak kaynağı API üzerinden 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.
Aşağıda dikkat edilmesi gereken noktalardan bazılarını görebilirsiniz:
UNKNOWN
türüne sahip bir kaynak daha sonra desteklenebilir veya süresiz olarakUNKNOWN
olarak kalabilir.UNKNOWN
türüne sahip yeni nesneler herhangi bir zamanda görünebilir. Numaralandırma değeri zaten mevcut olduğu için bu nesneler geriye dönük uyumludur. Bu değişiklikle birlikte, hesabınızı doğru bir şekilde görebilmeniz için kaynaklar kullanıma sunulmuştur.UNKNOWN
kaynağı, hesabınızda diğer arayüzler üzerinden yapılan yeni etkinlikler veya bir kaynak artık desteklenmediği için görünebilir.UNKNOWN
kaynaklarına sorgulanabilir ayrıntılı metrikler eklenebilir.UNKNOWN
kaynakları genellikle Google Ads kullanıcı arayüzünde tamamen görünürdür.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
seçen ve SELECT
yan tümcesinde segments.ad_network_type
ve segments.date
içeren bir sorgunun yanıtı, aşağıdakilerin her kombinasyonu için bir satır içerir:
campaign
segments.ad_network_type
segments.date
Sonuçlar, seçilen alanların değerlerine göre değil, ana kaynağın her bir örneğine göre dolaylı olarak segmentlere ayrılır. Örneğin,
SELECT campaign.status, metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_14_DAYS
campaign.status
alanının farklı değeri başına bir satır değil, kampanya başına bir satır oluşturur.