Macros: update

Memerlukan otorisasi

Memperbarui makro GTM. Coba sekarang atau lihat contohnya.

Permintaan

Permintaan HTTP

PUT https://www.googleapis.com/tagmanager/v1/accounts/accountId/containers/containerId/macros/macroId

Parameter

Nama parameter Nilai Deskripsi
Parameter jalur
accountId string ID Akun GTM.
containerId string ID Penampung GTM.
macroId string ID Makro GTM.
Parameter kueri opsional
fingerprint string Jika diberikan, sidik jari ini harus cocok dengan sidik jari makro di penyimpanan.

Otorisasi

Permintaan ini memerlukan otorisasi dengan cakupan berikut (baca selengkapnya tentang autentikasi dan otorisasi).

Cakupan
https://www.googleapis.com/auth/tagmanager.edit.containers

Isi permintaan

Dalam isi permintaan, berikan Resource makro dengan properti berikut:

Nama properti Nilai Deskripsi Catatan
Properti yang Diperlukan
parameter[].type string Jenis parameter. Nilai yang valid adalah:
  • boolean: Nilai mewakili boolean, yang diwakili sebagai 'true' atau 'false'
  • integer: Nilai mewakili nilai bilangan bulat dengan tanda tangan 64-bit, di basis 10
  • list: Daftar parameter harus ditentukan
  • map: Peta parameter harus ditentukan
  • template: Nilai mewakili teks apa pun; nilai ini dapat mencakup referensi makro (bahkan referensi makro yang mungkin menampilkan jenis non-string)


Nilai yang dapat diterima:
  • "boolean"
  • "integer"
  • "list"
  • "map"
  • "template"
dapat ditulis
type string Jenis Makro GTM. dapat ditulis
Properti Opsional
disablingRuleId[] list Khusus untuk penampung seluler: Daftar ID aturan untuk menonaktifkan makro bersyarat; makro diaktifkan jika salah satu aturan pengaktifan bernilai benar sedangkan semua aturan penonaktifan bernilai salah. Dianggap sebagai kumpulan yang tidak berurutan. dapat ditulis
enablingRuleId[] list Khusus untuk penampung seluler: Daftar ID aturan untuk mengaktifkan makro bersyarat; makro diaktifkan jika salah satu aturan pengaktifan bernilai benar sedangkan semua aturan penonaktifan bernilai salah. Dianggap sebagai kumpulan yang tidak berurutan. dapat ditulis
name string Nama tampilan makro. dapat ditulis
notes string Catatan pengguna tentang cara menerapkan makro ini di penampung. dapat ditulis
parameter[] list Parameter makro. dapat ditulis
parameter[].key string Kunci bernama yang mengidentifikasi parameter secara unik. Diperlukan untuk parameter tingkat teratas, serta nilai peta. Diabaikan untuk nilai daftar. dapat ditulis
parameter[].list[] list Parameter parameter daftar ini (kunci akan diabaikan). dapat ditulis
parameter[].map[] list Parameter parameter peta ini (harus memiliki kunci; kunci harus unik). dapat ditulis
parameter[].value string Nilai parameter (dapat berisi referensi makro seperti "") yang sesuai dengan jenis yang ditentukan. dapat ditulis
scheduleEndMs long Stempel waktu akhir dalam milidetik untuk menjadwalkan makro. dapat ditulis
scheduleStartMs long Stempel waktu mulai dalam milidetik untuk menjadwalkan makro. dapat ditulis

Respons

Jika berhasil, metode ini akan menampilkan Resource makro dalam isi respons.

Contoh

Catatan: Contoh kode yang tersedia untuk metode ini tidak merepresentasikan semua bahasa pemrograman yang didukung (lihat halaman library klien untuk mengetahui daftar bahasa yang didukung).

Java

Menggunakan library klien Java.

/*
 * Note: This code assumes you have an authorized tagmanager service object.
 */

/*
 * This request updates an existing macro for the authorized user.
 */

// Construct the macro object.
Macro macro = new Macro();
macro.setName("Updated URL Macro");
macro.setType("u");

// Construct the parameters.
Parameter arg0 = new Parameter();
arg0.setType("template");
arg0.setKey("component");
arg0.setValue("URL");

Parameter arg1 = new Parameter();
arg1.setType("template");
arg1.setKey("customUrlSource");
arg1.setValue("{{element}}");

// set the parameters on the macro.
macro.setParameter(Arrays.asList(arg0, arg1));

try {
  Macro response = tagmanager.accounts().containers().
      macros().update("123456", "54321", "18", macro).execute();

} catch (GoogleJsonResponseException e) {
  System.err.println("There was a service error: "
      + e.getDetails().getCode() + " : "
      + e.getDetails().getMessage());
}

/*
 * The results of the update method are stored in the response object.
 * The following code shows how to access the updated name and fingerprint.
 */
System.out.println("Updated Name = " + response.getName());
System.out.println("Updated Fingerprint = " + response.getFingerprint());

Python

Menggunakan library klien Python.

# Note: This code assumes you have an authorized tagmanager service object.

# This request updates an existing macro for the authorized user.
try:
  response = tagmanager.accounts().containers().macros().update(
      accountId='123456',
      containerId='54321',
      macroId='19',
      body={
          'name': 'Sample URL Macro',
          'type': 'u',
          'parameter': [
              {
                  'type': 'template',
                  'key': 'component',
                  'value': 'URL'
              },
              {
                  'type': 'template',
                  'key': 'customUrlSource',
                  'value': '{{element}}'
              }
          ]
      }
  ).execute()

except TypeError, error:
  # Handle errors in constructing a query.
  print 'There was an error in constructing your query : %s' % error

except HttpError, error:
  # Handle API errors.
  print ('There was an API error : %s : %s' %
         (error.resp.status, error.resp.reason))

# The results of the update method are stored in the response object.
# The following code shows how to access the updated name and fingerprint.
print 'Updated Name = %s' % response.get('name')
print 'Updated Fingerprint = %s' % response.get('fingerprint')

Cobalah!

Gunakan APIs Explorer di bawah untuk memanggil metode ini pada data live dan melihat respons.