Menggunakan layanan khusus resource adalah cara paling langsung untuk membuat, memperbarui, atau menghapus entitas dari satu jenis resource di Google Ads API.
Endpoint mutasi
Setiap resource yang dapat diubah memiliki jenis layanan dan operasi yang sesuai. Untuk mengubah resource menggunakan layanan khususnya, isi salah satu kolom berikut pada operasi dan kirimkan ke endpoint mutasi layanan:
- Create (
create): Objek resource baru yang akan dibuat. - Update (
update): Objek resource yang diubah, disertai denganupdate_maskyang menentukan kolom yang diubah. - Remove (
remove): Stringresource_namedari resource target yang akan dihapus.
Misalnya, untuk membuat Campaign baru, selesaikan langkah-langkah berikut:
- Buat objek
Campaigndengan atribut yang Anda pilih. - Tetapkan ke kolom
createdariCampaignOperation. - Kirim operasi dalam
MutateCampaignsRequestkeCampaignService.MutateCampaigns.
Pola yang sama ini berlaku di semua layanan khusus resource di Google Ads API:
AdGroup: TeruskanAdGroupOperationkeAdGroupService.MutateAdGroups.CampaignCriterion: TeruskanCampaignCriterionOperationkeCampaignCriterionService.MutateCampaignCriteria.
Payload JSON REST berikut mengilustrasikan 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 modifikasi 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 menetapkannya ke true.
Namun, layanan resource individual memiliki dua batasan penting:
- Jenis resource tunggal: 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 dari jenis yang berbeda (sepertiAdGroup) dalam permintaan yang sama. (ID sementara yang merujuk pada dirinya sendiri dalam jenis resource yang sama didukung untuk hierarki seperti kelompok listingAdGroupCriteriondan nodeAssetGroupListingGroupFilter.)
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 memutasi resource:
- Layanan sasaran siklus proses: Sasaran Retensi Pelanggan diubah di semua
versi yang didukung melalui
GoalService.MutateGoals(retention_goal_settings) danCampaignGoalConfigService.MutateCampaignGoalConfigs(campaign_retention_settings) menggunakan kolomoperationsberulang standar. 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 melaluiGoalService.MutateGoalsdanCampaignGoalConfigService.MutateCampaignGoalConfigs. Kolom ini menggantikanCustomerLifecycleGoalService.ConfigureCustomerLifecycleGoalsdanCampaignLifecycleGoalService.ConfigureCampaignLifecycleGoals, yang digunakan untuk Akuisisi Pelanggan Baru di v23 dan v24 serta menerima satu kolomoperation.