Mutasi

Sebagian besar resource diubah (dibuat, diperbarui, atau dihapus) menggunakan metode Mutate. Metode Mutate dipanggil sebagai POST HTTP ke URL khusus resource yang cocok dengan pola resource-name, tanpa ID resource di akhir. ID resource yang akan diubah dikirim dalam isi permintaan JSON. Dengan begitu, Anda dapat mengirim satu panggilan API yang berisi beberapa operasi pada resource yang berbeda.

Misalnya, nama resource kampanye menggunakan format berikut:

customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID

Untuk mendapatkan URL yang digunakan untuk mengubah kampanye, hapus ID resource di akhir dan tambahkan :mutate:

https://googleads.googleapis.com/v26/customers/CUSTOMER_ID/campaigns:mutate

Pesan Mutate berisi objek JSON tingkat atas dengan array operations yang dapat berisi banyak objek operation. Setiap operasi dapat berupa: create, update, atau remove. Ini adalah satu-satunya kemungkinan operasi mutasi.

POST /v26/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN

{
  "operations": [
    ...
  ]
}

Sebagian besar layanan mendukung ribuan operasi dalam satu panggilan API. Panduan Batas Sistem mendokumentasikan batasan ukuran permintaan.

Operasi dalam satu permintaan API dieksekusi sebagai satu set tindakan secara default, yang berarti semuanya berhasil bersama-sama atau seluruh batch gagal jika ada satu operasi yang gagal. Beberapa layanan mendukung atribut partialFailure untuk mengubah perilaku ini. Lihat Mengubah Resource untuk mengetahui informasi lebih mendetail tentang semantik operasi mutasi.

Buat

Operasi pembuatan menghasilkan entitas baru dan harus menyertakan representasi JSON lengkap dari resource yang ingin Anda buat.

POST /v26/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN

{
  "operations": [
    {
    "create": {
        "name": "An example campaign",
        "status": "PAUSED",
        "campaignBudget": "customers/CUSTOMER_ID/campaignBudgets/CAMPAIGN_BUDGET_ID",
        "advertisingChannelType": "SEARCH",
        "networkSettings": {
          "targetGoogleSearch": true,
          "targetSearchNetwork": true,
          "targetContentNetwork": true,
          "targetPartnerSearchNetwork": false
        },
        "target_spend": {}
      }
    }
  ]
}

Perbarui

Operasi pembaruan melakukan pembaruan jarang ke resource yang ada. Anda hanya perlu menentukan kolom yang ingin diubah.

Untuk menentukan kolom yang ingin diperbarui, tetapkan atribut updateMask ke daftar nama kolom yang dipisahkan koma. Hal ini sangat berguna jika Anda sudah memiliki representasi JSON objek yang lengkap (misalnya, seperti yang ditampilkan oleh panggilan API sebelumnya), tetapi hanya ingin mengubah kolom tertentu. Daripada memangkas objek JSON, Anda dapat mencantumkan nama kolom yang akan diubah di updateMask dan mengirim seluruh objek JSON.

Contoh berikut mengubah name dan status kampanye yang ada dengan resourceName yang diberikan.

POST /v26/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN

{
  "operations": [
    {
      "updateMask": "name,status",
      "update": {
        "resourceName": "customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID",
        "name": "My renamed campaign",
        "status": "PAUSED",
      }
    }
  ]
}

Hapus

Operasi penghapusan secara efektif menghapus objek, dan menetapkan status iklan Google Ads-nya ke REMOVED. Hanya resourceName yang akan dihapus yang diperlukan.

POST /v26/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN

{
  "operations": [
    {
      "remove": "customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID"
    }
  ]
}