Bir kaynağın özel hizmetini kullanmak, Google Ads API'de tek bir kaynak türünün varlıklarını oluşturmanın, güncellemenin veya kaldırmanın en doğrudan yoludur.
Değişiklik uç noktaları
Değiştirilebilir her kaynağın karşılık gelen bir hizmeti ve işlem türü vardır. Özel hizmetini kullanarak bir kaynağı değiştirmek için işlemdeki 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. - Remove (
remove): Kaldırılacak hedef kaynağınresource_namedizesi.
Örneğin, yeni bir Campaign oluşturmak için aşağıdaki adımları uygulayın:
- Seçtiğiniz özelliklerle bir
Campaignnesnesi oluşturun. CampaignOperationöğesinincreatealanına atayın.- İşlemi
MutateCampaignsRequestiçindeCampaignService.MutateCampaignsadresine gönderin.
Aynı kalıp, Google Ads API'deki kaynağa özgü tüm hizmetler için geçerlidir:
AdGroup:AdGroupService.MutateAdGroups'a birAdGroupOperationiletin.CampaignCriterion:CampaignCriterionService.MutateCampaignCriteria'a birCampaignCriterionOperationiletin.
Aşağıdaki REST JSON yükü, CampaignService.MutateCampaigns için bir isteği göstermektedir:
{
"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 çok işlem ve sınırlama
Kaynağa özgü değişiklik isteklerinin çoğu yinelenen bir operations alanı kabul eder. Bu nedenle, tek bir istek ilgili kaynak türü için birden fazla işlem içerebilir (istek başına en fazla 10.000 işlem veya AdGroupCriterionService.MutateAdGroupCriteria için 20.000 işlem; CustomerService.MutateCustomer tekil bir operation alanını kabul eder). Hizmet partial_failure özelliğini desteklemediği ve siz bu özelliği true olarak ayarlamadığınız sürece istekteki tüm işlemler varsayılan olarak atomik şekilde yürütülür.
Ancak bireysel kaynak hizmetlerinin iki önemli sınırlaması vardır:
- Tek kaynak türü: Bir kaynak hizmetine gönderilen istek, yalnızca o hizmet tarafından yönetilen kaynakları değiştirebilir.
- Kaynaklar arası geçici kimlikler kullanılamaz: Kaynağa özel bir mutate çağrısı yalnızca tek bir kaynak türünü kabul ettiğinden, bir üst kaynağa (ör.
customers/CUSTOMER_ID/campaigns/-1) geçici bir negatif kimlik atayamaz ve aynı istekte farklı türdeki bir alt kaynaktan (ör.AdGroup) bu kimliğe referans veremezsiniz. (Aynı kaynak türü içindeki kendi kendine referans veren geçici kimlikler,AdGroupCriterionlisteleme grupları veAssetGroupListingGroupFilterdüğümleri gibi hiyerarşik ağaçlar için desteklenir.)
Tek bir istekte birden fazla kaynak türünü değiştirmeniz veya farklı kaynak türleri arasında geçici kaynak adlarına referans vermeniz gerekiyorsa bunun yerine GoogleAdsService.Mutate kullanın.
Sürüme özgü farklılıklar
Kaynakları değiştirirken desteklenen Google Ads API sürümleri arasındaki aşağıdaki farkı göz önünde bulundurun:
- Yaşam döngüsü hedefi hizmetleri: Müşteriyi elde tutma hedefleri, standart bir yinelenen
operationsalanı kullanılarakGoalService.MutateGoals(retention_goal_settings) veCampaignGoalConfigService.MutateCampaignGoalConfigs(campaign_retention_settings) aracılığıyla desteklenen tüm sürümlerde değiştirilir. v25 ve sonraki sürümlerde, yeni müşteri edinme (new_customer_acquisition_goal_settings/campaign_new_customer_acquisition_settings) ve bağlılık elde tutma (loyalty_retention_goal_settings/campaign_loyalty_retention_settings) deGoalService.MutateGoalsveCampaignGoalConfigService.MutateCampaignGoalConfigsaracılığıyla değiştirilir. Bu, 23 ve 24 sürümlerinde yeni müşteri edinme için kullanılan ve tek biroperationalanı kabul edenCustomerLifecycleGoalService.ConfigureCustomerLifecycleGoalsveCampaignLifecycleGoalService.ConfigureCampaignLifecycleGoalsalanlarının yerini alır.