Bir kaynağın özel hizmetini kullanmak, Google Ads API'de tek bir kaynak türündeki varlıkları oluşturmanın, güncellemenin veya kaldırmanın en doğrudan yoludur.
Değiştirme uç noktaları
Değiştirilebilir her kaynağın karşılık gelen bir hizmeti ve işlem türü vardır. Bir kaynağı özel hizmetini kullanarak değiştirmek için işlemde aşağıdaki alanlardan birini doldurun ve hizmetin değiştirme uç noktasına gönderin:
- Oluştur (
create): Oluşturulacak yeni bir kaynak nesnesi. - Güncelleme (
update): Değiştirilen kaynak nesnesi ve değiştirilen alanları belirten birupdate_mask. - Kaldır (
remove): Kaldırılacak hedef kaynağınresource_namedizesi.
Örneğin, yeni bir Campaign oluşturmak için aşağıdaki adımları tamamlayın:
- Seçtiğiniz özelliklerle bir
Campaignnesnesi oluşturun. - Bu değeri bir
CampaignOperationöğesinincreatealanına atayın. - İşlemi
MutateCampaignsRequestbiçimindeCampaignService.MutateCampaignsadresine gönderin.
Aynı kalıp, Google Ads API'deki tüm kaynağa özgü hizmetler için geçerlidir:
AdGroup:AdGroupOperationdeğeriniAdGroupService.MutateAdGroupsöğesine iletin.CampaignCriterion:CampaignCriterionOperationdeğeriniCampaignCriterionService.MutateCampaignCriteriadeğerine iletin.
Aşağıdaki REST JSON yükü, CampaignService.MutateCampaigns isteğini gösterir:
{
"customerId": "CUSTOMER_ID",
"operations": [
{
"create": {
"name": "Interplanetary Cruise #1",
"advertisingChannelType": "SEARCH",
"status": "PAUSED",
"manualCpc": {},
"campaignBudget": "customers/CUSTOMER_ID/campaignBudgets/BUDGET_ID",
"containsEuPoliticalAdvertising": "DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING"
}
}
],
"partialFailure": false,
"validateOnly": false
}
Birden fazla işlem ve sınırlama
Bir değişiklik isteğinin operations alanı tekrarlandığı için tek bir istek, söz konusu kaynak türü için birden fazla işlem (istek başına en fazla 10.000 işlem) içerebilir. Varsayılan olarak, partial_failure değerini true olarak ayarlamadığınız sürece, isteğin tüm işlemleri atomik olarak yürütülür.
Ancak, bireysel kaynak hizmetlerinin iki önemli sınırlaması vardır:
- Tek kaynak türü: Bir kaynak hizmetine yapılan istek yalnızca söz konusu hizmet tarafından yönetilen kaynakları değiştirebilir.
- Geçici kaynak kimlikleri veya çapraz referans yok: Kaynağa özel bir değiştirme çağrısındaki işlemler bağımsız olarak işlenir. Geçici negatif kimlikler (ör.
customers/CUSTOMER_ID/campaigns/-1) atayamaz veya aynı istekteki diğer işlemlerden yeni oluşturulan öğelere referans veremezsiniz.
Tek bir istekte birden fazla kaynak türünü değiştirmeniz veya bağımlı işlemler genelinde geçici kaynak adlarına başvurmanız gerekiyorsa bunun yerine GoogleAdsService.Mutate kullanın.
Sürüme özgü farklılıklar
Kaynaklarda değişiklik yaparken desteklenen Google Ads API sürümleri arasındaki aşağıdaki farkları göz önünde bulundurun:
- Yaşam döngüsü hedefi hizmetleri: 25. sürüm ve sonraki sürümlerde, Yeni Müşteri Edinme (
new_customer_acquisition_goal_settings), Müşteri Elde Tutma (retention_goal_settings) ve Bağlılık Elde Tutma (loyalty_retention_goal_settings) dahil olmak üzere tüm yaşam döngüsü hedefleri, standart bir tekrarlananoperationsalanı kullanılarakGoalService.MutateGoalsveCampaignGoalConfigService.MutateCampaignGoalConfigsaracılığıyla değiştirilir. Bu,CustomerLifecycleGoalService.ConfigureCustomerLifecycleGoalsveCampaignLifecycleGoalService.ConfigureCampaignLifecycleGoals'nin (v24 ve önceki sürümlerde yeni müşteri edinme için kullanılan ve tek biroperationalanını kabul eden) yerini alır. - Kampanya tarihi ve saati alanları: Bir
Campaignoluşturulurken veya güncellenirken v23 ve sonraki sürümlerde, v22'de kullanılan yalnızca tarihlistart_dateveend_datealanlarının yerinestart_date_timeveend_date_time(yyyy-MM-dd HH:mm:ss) alanları kullanılır. - Yapay içerik onayının değiştirilebilirliği:
Asset.synthetic_content_infoveAd.synthetic_content_info, v22 ve sonraki sürümlerin şemasında görünse desynthetic_content_info.advertiser_attestation.statusvesynthetic_content_info.advertiser_attestation.sourcealanları yalnızca v23 ve sonraki sürümlerde değiştirilebilir (system_attestationher zamanOUTPUT_ONLY'dir). v22'deadvertiser_attestationalt alanlarını değiştirmeye çalışmak değiştirilemez alan hatası ("The field attempted to be mutated is immutable"veya"Field cannot be set") döndürür.