Layanan resource berubah

Menggunakan layanan khusus resource adalah cara paling langsung untuk membuat, memperbarui, atau menghapus entitas dari satu jenis resource di Google Ads API.

Endpoint perubahan

Setiap resource yang dapat diubah memiliki jenis layanan dan operasi yang sesuai. Untuk mengubah resource menggunakan layanan khusus, isi salah satu kolom berikut pada operasi dan kirimkan ke endpoint perubahan layanan:

  • Buat (create): Objek resource baru yang akan dibuat.
  • Update (update): Objek resource yang diubah, disertai dengan update_mask yang menentukan kolom yang diubah.
  • Hapus (remove): String resource_name dari resource target yang akan dihapus.

Misalnya, untuk membuat Campaign baru, selesaikan langkah-langkah berikut:

  1. Buat objek Campaign dengan atribut yang Anda pilih.
  2. Tetapkan ke kolom create dari CampaignOperation.
  3. Kirim operasi dalam MutateCampaignsRequest ke CampaignService.MutateCampaigns.

Pola yang sama ini berlaku di semua layanan khusus resource di Google Ads API:

Payload JSON REST berikut menggambarkan permintaan ke CampaignService.MutateCampaigns:

{
  "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
}

Beberapa operasi dan batasan

Sebagian besar permintaan perubahan khusus resource menerima kolom operations berulang, sehingga satu permintaan dapat berisi beberapa operasi untuk jenis resource tersebut (hingga 10.000 operasi per permintaan, atau 20.000 untuk AdGroupCriterionService.MutateAdGroupCriteria; CustomerService.MutateCustomer menerima kolom operation tunggal). Secara default, semua operasi dalam permintaan dijalankan secara atomik kecuali jika layanan mendukung partial_failure dan Anda menyetelnya ke true.

Namun, layanan resource individual memiliki dua batasan penting:

  • Satu jenis resource: Permintaan ke layanan resource hanya dapat mengubah resource yang dikelola oleh layanan tertentu tersebut.
  • Tidak ada ID sementara lintas-resource: Karena panggilan mutasi khusus resource hanya menerima satu jenis resource, Anda tidak dapat menetapkan ID negatif sementara ke resource induk (seperti customers/CUSTOMER_ID/campaigns/-1) dan mereferensikannya dari resource turunan dengan jenis yang berbeda (seperti AdGroup) dalam permintaan yang sama. (ID sementara yang mereferensikan diri sendiri dalam jenis resource yang sama didukung untuk pohon hierarkis seperti grup listingan AdGroupCriterion dan node AssetGroupListingGroupFilter.)

Jika Anda perlu mengubah beberapa jenis resource dalam satu permintaan atau mereferensikan nama resource sementara di berbagai jenis resource, gunakan GoogleAdsService.Mutate.

Perbedaan khusus versi

Perhatikan perbedaan berikut di seluruh versi Google Ads API yang didukung saat mengubah resource:

  • Layanan sasaran siklus proses: Sasaran Retensi Pelanggan diubah di semua versi yang didukung melalui GoalService.MutateGoals (retention_goal_settings) dan CampaignGoalConfigService.MutateCampaignGoalConfigs (campaign_retention_settings) menggunakan kolom operations standar yang berulang. Di v25 dan yang lebih baru, Akuisisi Pelanggan Baru (new_customer_acquisition_goal_settings / campaign_new_customer_acquisition_settings) dan Retensi Loyalitas (loyalty_retention_goal_settings / campaign_loyalty_retention_settings) juga diubah melalui GoalService.MutateGoals dan CampaignGoalConfigService.MutateCampaignGoalConfigs. Hal ini menggantikan CustomerLifecycleGoalService.ConfigureCustomerLifecycleGoals dan CampaignLifecycleGoalService.ConfigureCampaignLifecycleGoals, yang digunakan untuk Akuisisi Pelanggan Baru di v23 dan v24 serta menerima kolom operation tunggal.