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 denganupdate_maskyang menentukan kolom yang diubah. - Hapus (
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 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 (sepertiAdGroup) dalam permintaan yang sama. (ID sementara yang mereferensikan diri sendiri dalam jenis resource yang sama didukung untuk pohon hierarkis seperti grup listinganAdGroupCriteriondan 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 mengubah 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 kolomoperationsstandar 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 melaluiGoalService.MutateGoalsdanCampaignGoalConfigService.MutateCampaignGoalConfigs. Hal ini menggantikanCustomerLifecycleGoalService.ConfigureCustomerLifecycleGoalsdanCampaignLifecycleGoalService.ConfigureCampaignLifecycleGoals, yang digunakan untuk Akuisisi Pelanggan Baru di v23 dan v24 serta menerima kolomoperationtunggal.