Video: 2019 atölyesinde gerçekleştirilen Hizmetler ve Kaynaklar konuşmasına göz atın
Bu kılavuzda, Google Ads API'yi oluşturan temel bileşenler tanıtılmaktadır. Google Ads API kaynaklar ve hizmetlerden oluşur. Kaynak, Google Ads varlıklarını temsil ederken hizmetler, Google Ads varlıklarını alır ve değiştirir.
Nesne hiyerarşisi
Bir Google Ads hesabı, nesne hiyerarşisi olarak görüntülenebilir.
Bir hesabın üst düzey kaynağı müşteridir.
Her müşteri bir veya daha fazla etkin kampanya içerir.
Her kampanya, reklamlarınızı mantıksal koleksiyonlar halinde gruplandırmak için kullanılan bir veya daha fazla reklam grubu içerir.
Reklam grubu reklamı, yayınladığınız bir reklamı temsil eder. Reklam grubu başına yalnızca bir reklam grubu reklamı olabilen uygulama kampanyaları hariç, her reklam grubunda bir veya daha fazla reklam grubu reklamı bulunur.
Bir reklam grubuna veya kampanyaya bir ya da daha fazla AdGroupCriterion
ya da CampaignCriterion
ekleyebilirsiniz. Bunlar, reklamların nasıl tetikleneceğini tanımlayan ölçütleri temsil eder.
Anahtar kelimeler, yaş grupları ve konumlar gibi birçok ölçüt türü vardır. Kampanya düzeyinde tanımlanan ölçütler, kampanyadaki diğer tüm kaynakları etkiler. Ayrıca, kampanya genelinde bütçeler ve tarihler de belirtebilirsiniz.
Son olarak, hesap, kampanya veya reklam grubu düzeyinde uzantılar ekleyebilirsiniz. Uzantılar, reklamlarınızda telefon numarası, açık adres veya promosyonlar gibi ek bilgiler sağlamanıza olanak tanır.
Kaynaklar
Kaynaklar, Google Ads hesabınızdaki varlıkları temsil eder. Campaign
ve AdGroup
, iki kaynak örneğidir.
Nesne Kimlikleri
Google Ads'deki her nesne kendi kimliğiyle tanımlanır. Bu kimliklerden bazıları tüm Google Ads hesaplarında global olarak benzersizdir, diğerleri ise yalnızca sınırlı bir kapsamda benzersizdir.
Nesne kimliği | Benzersizliğin Kapsamı | Tüm Dünyada Benzersiz mi? |
---|---|---|
Bütçe Kimliği | Global | Evet |
Kampanya Kimliği | Global | Evet |
Reklam Grubu Kimliği | Global | Evet |
Reklam Kimliği | Reklam Grubu | Hayır, ancak (AdGroupId , AdId ) çifti genel olarak benzersiz |
AdGroupCriterion Kimliği | Reklam Grubu | Hayır, ancak (AdGroupId , CriterionId ) çifti genel olarak benzersiz |
CampaignCriterion Kimliği | Kampanya | Hayır, ancak (CampaignId , CriterionId ) çifti genel olarak benzersiz |
Reklam Uzantıları | Kampanya | Hayır, ancak (CampaignId , AdExtensionId ) çifti genel olarak benzersiz |
Özet akışı kimliği | Global | Evet |
Özet Akışı Öğesi Kimliği | Global | Evet |
Feed Özellik Kimliği | Feed | Hayır |
Özet Akışı Eşleme Kimliği | Global | Evet |
Etiket Kimliği | Global | Evet |
Kullanıcı Listesi Kimliği | Global | Evet |
Bu kimlik kuralları, Google Ads nesneleriniz için yerel depolama tasarlanırken yararlı olabilir.
Bazı nesneler birden çok varlık türü için kullanılabilir. Böyle durumlarda, nesne, içeriğini açıklayan bir type
alanı içerir. Örneğin AdGroupAd
; metin reklam, otel reklamı veya yerel reklam gibi bir nesneye işaret edebilir. Bu değere AdGroupAd.ad.type
alanından erişilebilir ve AdType
sıralamasında bir değer döndürür.
Kaynak adları
Her kaynak, kaynağı ve üst öğelerini bir yol halinde birleştiren bir resource_name
dizesiyle benzersiz şekilde tanımlanır. Örneğin, kampanya
kaynaklarının adları şu şekildedir:
customers/customer_id/campaigns/campaign_id
Buna göre, 1234567
müşteri kimliğine sahip Google Ads hesabında 987654
kimlikli bir kampanya için resource_name
şu şekilde olur:
customers/1234567/campaigns/987654
Hizmetler
Hizmetler, Google Ads öğelerinizi almanıza ve değiştirmenize olanak tanır. Üç tür hizmet vardır: değiştirme, nesne ve istatistik alma ve meta veri alma hizmetleri.
Nesneleri değiştirme (değiştirme)
Bu hizmetler, mutate
isteği kullanarak ilişkili bir kaynak türünün örneklerini değiştirir. Ayrıca, tek bir kaynak örneği alan ve kaynak yapısını incelemek için yararlı olabilecek bir get
isteği de sağlarlar.
Hizmet örnekleri:
Müşterileri değiştirmek için
CustomerService
.Kampanyaları değiştirmek için
CampaignService
.Reklam gruplarını değiştirmek için
AdGroupService
.
Her mutate
isteği, karşılık gelen operation
nesnelerini içermelidir. Örneğin, CampaignService.MutateCampaigns
yöntemi, bir veya daha fazla CampaignOperation
örneğini bekler. İşlemlerle ilgili ayrıntılı bir açıklama için Nesneleri Değiştirme ve Denetleme bölümüne bakın.
Eşzamanlı mutasyonlar
Bir Google Ads nesnesi, birden fazla kaynak tarafından eşzamanlı olarak değiştirilemez. Bu durum, uygulamanızla aynı nesneyi güncelleyen birden fazla kullanıcınız varsa veya birden çok iş parçacığı kullanarak Google Ads nesnelerini paralel olarak dönüştürüyorsanız hatalara neden olabilir. Buna, aynı uygulamadaki birden fazla iş parçacığından veya farklı uygulamalardan (örneğin, uygulamanız ve eş zamanlı bir Google Ads kullanıcı arayüzü oturumu) nesne güncellemek dahildir.
API, güncellemeden önce nesnenin kilitlenmesi için bir yol sağlamaz. İki kaynak, bir nesneyi aynı anda değiştirmeye çalışırsa API bir DatabaseError.CONCURRENT_MODIFICATION_ERROR
çıkarır.
Eşzamansız ve eşzamanlı mutasyonlar
Google Ads API değişiklik yöntemleri eşzamanlıdır. API çağrıları yalnızca nesneler dönüştürüldükten sonra yanıt döndürür ve her isteğe yanıt verilmesini beklemeniz gerekir. Bu yaklaşım kodlamak nispeten basit olsa da, süreçler çağrıların tamamlanmasını beklemek zorunda kalırsa yük dengelemeyi ve kaynak israfını olumsuz etkileyebilir.
Alternatif bir yaklaşım, BatchJobService
aracılığıyla nesneleri eşzamansız olarak değiştirmektir. Bu işlem, tamamlanmalarını beklemeden birden fazla hizmet üzerinde işlem grupları gerçekleştirir. Bir toplu iş gönderildikten sonra, Google Ads API sunucuları işlemleri eşzamansız olarak yürüterek işlemleri diğer işlemleri gerçekleştirecek şekilde serbest bırakır. İşin tamamlanma durumunu düzenli
olarak kontrol edebilirsiniz.
Eşzamansız işleme hakkında daha fazla bilgi için Toplu İşleme kılavuzuna bakın.
Değişiklik doğrulaması
Çoğu değişiklik isteği, çağrıyı gerçek veriler üzerinde yürütmeden doğrulanabilir. İşlemi gerçekten yürütmeden, isteği eksik parametreler ve yanlış alan değerleri açısından test edebilirsiniz.
Bu özelliği kullanmak için isteğin isteğe bağlı validate_only
boole alanını true
olarak ayarlayın. Bu durumda istek, yürütülecekmiş gibi tamamen doğrulanır ancak son yürütme atlanır. Hata bulunmazsa boş bir yanıt döndürülür. Doğrulama başarısız olursa yanıttaki hata mesajları, hata noktalarını belirtir.
validate_only
özellikle yaygın politika ihlallerine karşı reklamların test edilmesinde faydalıdır. Reklamlar belirli kelime, noktalama, büyük harf veya uzunluk gibi politikaları ihlal etmeleri durumunda otomatik olarak reddedilir. Tek bir sakıncalı reklam,
tüm grubun başarısız olmasına neden olabilir. validate_only
isteği içinde yeni bir reklamı test etmek, bu tür ihlalleri ortaya çıkarabilir. Bunu uygulamalı olarak görmek için politika ihlali hatalarını ele alma ile ilgili kod örneğine bakın.
Nesneleri ve performans istatistiklerini alma
GoogleAdsService
, nesneleri ve performans istatistiklerini almak için kullanılan tek, birleştirilmiş hizmettir.
GoogleAdsService
için tüm Search
ve SearchStream
istekleri, sorgulanacak kaynağı, alınacak kaynak özelliklerini ve performans metriklerini, isteği filtrelemek için kullanılacak koşulu ve performans istatistiklerini daha ayrıntılı bir şekilde ayrıştırmak için kullanılacak segmentleri belirten bir sorgu gerektirir. Sorgu biçimi hakkında daha fazla bilgi için Google Ads Sorgu Dili kılavuzuna göz atın.
Meta verileri alma
GoogleAdsFieldService
, Google Ads API'deki kaynaklarla ilgili meta verileri (ör. bir kaynak ve kaynağın veri türü için kullanılabilir özellikler) alır.
Bu hizmet, GoogleAdsService
'e sorgu oluştururken gereken bilgileri sağlar. Size kolaylık sağlaması için, GoogleAdsFieldService
tarafından döndürülen bilgiler alan referans belgelerinde de bulunmaktadır.