Kaynak hizmeti mutasyonları

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 bir update_mask.
  • Kaldır (remove): Kaldırılacak hedef kaynağın resource_name dizesi.

Örneğin, yeni bir Campaign oluşturmak için aşağıdaki adımları tamamlayın:

  1. Seçtiğiniz özelliklerle bir Campaign nesnesi oluşturun.
  2. Bu değeri bir CampaignOperation öğesinin create alanına atayın.
  3. İşlemi MutateCampaignsRequest biçiminde CampaignService.MutateCampaigns adresine gönderin.

Aynı kalıp, Google Ads API'deki tüm kaynağa özgü hizmetler için geçerlidir:

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

Çoğu kaynağa özgü değiştirme isteği, tekrarlanan bir operations alanı kabul eder. Bu nedenle, tek bir istek bu kaynak türü için birden fazla işlem içerebilir (istek başına 10.000 işlem veya AdGroupCriterionService.MutateAdGroupCriteria için 20.000 işlem; CustomerService.MutateCustomer tek bir operation alanı kabul eder). Hizmet partial_failure özelliğini desteklemediği ve siz true olarak ayarlamadığınız sürece, istekteki tüm işlemler varsayılan olarak 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.
  • Kaynaklar arası geçici kimlik yok: Kaynağa özgü bir değiştirme ç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 atayıp aynı istekte farklı türde bir alt kaynaktan (ör. AdGroup) buna referans veremezsiniz. (Aynı kaynak türündeki geçici kimliklere kendi içinde referans verme, AdGroupCriterion listeleme grupları ve AssetGroupListingGroupFilter düğü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ürlerinde 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 şu farkı göz önünde bulundurun:

  • Yaşam döngüsü hedefi hizmetleri: Müşteri elde tutma hedefleri, standart bir tekrarlanan operations alanı kullanılarak GoalService.MutateGoals (retention_goal_settings) ve CampaignGoalConfigService.MutateCampaignGoalConfigs (campaign_retention_settings) aracılığıyla desteklenen tüm sürümlerde değiştirilir. 25. sürüm ve sonraki sürümlerde, yeni müşteri edinme (new_customer_acquisition_goal_settings / campaign_new_customer_acquisition_settings) ve müşteri bağlılığını koruma (loyalty_retention_goal_settings / campaign_loyalty_retention_settings) hedefleri de GoalService.MutateGoals ve CampaignGoalConfigService.MutateCampaignGoalConfigs üzerinden değiştirilir. Bu, v23 ve v24'te yeni müşteri edinme için kullanılan ve tek bir operation alanını kabul eden CustomerLifecycleGoalService.ConfigureCustomerLifecycleGoals ve CampaignLifecycleGoalService.ConfigureCampaignLifecycleGoals parametrelerinin yerini alır.