Variables: update

ต้องมีการให้สิทธิ์

อัปเดตตัวแปร GTM ลองใช้เลยหรือดูตัวอย่าง

ส่งคำขอ

คำขอ HTTP

PUT https://www.googleapis.com/tagmanager/v1/accounts/accountId/containers/containerId/variables/variableId

พารามิเตอร์

ชื่อพารามิเตอร์ ค่า คำอธิบาย
พารามิเตอร์เส้นทาง
accountId string รหัสบัญชี GTM
containerId string รหัสคอนเทนเนอร์ GTM
variableId string รหัสตัวแปร GTM
พารามิเตอร์การค้นหาที่ไม่บังคับ
fingerprint string หากระบุ ลายนิ้วมือนี้ต้องตรงกับลายนิ้วมือของตัวแปรในพื้นที่เก็บข้อมูล

การให้สิทธิ์

คำขอนี้ต้องได้รับสิทธิ์ด้วยขอบเขตต่อไปนี้ (อ่านเพิ่มเติมเกี่ยวกับการตรวจสอบสิทธิ์และการให้สิทธิ์)

ขอบเขต
https://www.googleapis.com/auth/tagmanager.edit.containers

เนื้อหาของคำขอ

ในเนื้อหาคำขอ ให้ระบุทรัพยากรตัวแปรพร้อมด้วยพร็อพเพอร์ตี้ต่อไปนี้

ชื่อพร็อพเพอร์ตี้ ค่า คำอธิบาย Notes
พร็อพเพอร์ตี้ที่จำเป็น
name string ชื่อที่แสดงของตัวแปร เขียนได้
parameter[].type string ประเภทพารามิเตอร์ ค่าที่ถูกต้องคือ:
  • boolean: ค่านี้แทนค่าบูลีน ซึ่งแสดงเป็น "true" หรือ "false"
  • integer: ค่านี้แสดงค่าจำนวนเต็มแบบมีเครื่องหมาย 64 บิตในฐาน 10
  • list: ควรระบุรายการพารามิเตอร์
  • map: ควรระบุแมปของพารามิเตอร์
  • template: ค่าแสดงถึงข้อความทุกอย่าง ซึ่งอาจรวมถึงการอ้างอิงตัวแปร (แม้แต่การอ้างอิงตัวแปรที่อาจแสดงประเภทที่ไม่ใช่สตริง)
  • trigger_reference: ค่านี้แทนทริกเกอร์ ซึ่งแสดงเป็นรหัสทริกเกอร์


ค่าที่ยอมรับมีดังนี้
  • "boolean"
  • "integer"
  • "list"
  • "map"
  • "template"
  • "triggerReference"
เขียนได้
type string ประเภทตัวแปร GTM เขียนได้
พร็อพเพอร์ตี้ที่ไม่บังคับ
disablingTriggerId[] list สำหรับคอนเทนเนอร์อุปกรณ์เคลื่อนที่เท่านั้น: รายการรหัสทริกเกอร์สำหรับปิดใช้ตัวแปรแบบมีเงื่อนไข ระบบจะเปิดใช้ตัวแปรนี้หากทริกเกอร์เปิดใช้รายการใดรายการหนึ่งเป็นจริง ขณะที่ทริกเกอร์ปิดใช้ทั้งหมดเป็นเท็จ ถือว่าเป็นชุดที่ไม่มีลำดับ เขียนได้
enablingTriggerId[] list สำหรับคอนเทนเนอร์อุปกรณ์เคลื่อนที่เท่านั้น: รายการรหัสทริกเกอร์สำหรับเปิดใช้ตัวแปรแบบมีเงื่อนไข ระบบจะเปิดใช้ตัวแปรนี้หากทริกเกอร์เปิดใช้ตัวใดตัวหนึ่งเป็นจริง ขณะที่ทริกเกอร์ปิดใช้ทั้งหมดเป็นเท็จ ถือว่าเป็นชุดที่ไม่มีลำดับ เขียนได้
notes string ผู้ใช้หมายเหตุเกี่ยวกับวิธีใช้ตัวแปรนี้ในคอนเทนเนอร์ เขียนได้
parameter[] list พารามิเตอร์ของตัวแปร เขียนได้
parameter[].key string คีย์ที่มีชื่อซึ่งระบุพารามิเตอร์โดยไม่ซ้ำกัน ต้องระบุสำหรับพารามิเตอร์ระดับบนสุดและค่าแมป ละเว้นสำหรับค่ารายการ เขียนได้
parameter[].list[] list พารามิเตอร์ของพารามิเตอร์รายการนี้ (ระบบจะไม่สนใจคีย์) เขียนได้
parameter[].map[] list พารามิเตอร์ของพารามิเตอร์แมปนี้ (ต้องมีคีย์ คีย์ต้องไม่ซ้ำกัน) เขียนได้
parameter[].value string ค่าของพารามิเตอร์ (อาจมีการอ้างอิงตัวแปร เช่น "") ตามความเหมาะสมกับประเภทที่ระบุ เขียนได้
scheduleEndMs long การประทับเวลาสิ้นสุดเป็นมิลลิวินาทีเพื่อตั้งเวลาตัวแปร เขียนได้
scheduleStartMs long การประทับเวลาเริ่มต้นเป็นมิลลิวินาทีเพื่อตั้งเวลาตัวแปร เขียนได้

คำตอบ

หากสําเร็จ เมธอดนี้จะแสดงทรัพยากรตัวแปรในเนื้อหาการตอบสนอง

ตัวอย่าง

หมายเหตุ: ตัวอย่างโค้ดที่มีสำหรับวิธีการนี้ไม่ได้แสดงถึงภาษาโปรแกรมที่รองรับทั้งหมด (ดูรายการภาษาที่รองรับได้ในหน้าไลบรารีของไคลเอ็นต์)

Java

ใช้ไลบรารีของไคลเอ็นต์ Java

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

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

// Create the variable object.
Variable variable = new Variable();
variable.setName("RandomNumber");
variable.setType("r"); // The random number type.

try {
  Variable response = tagmanager.accounts().containers().
      variables().update("12345", "54321", "2", variable).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

ใช้ไลบรารีของไคลเอ็นต์ Python

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

# This request updates an existing variable.
try:
  response = tagmanager.accounts().containers().variables().update(
      accountId='123456',
      containerId='54321',
      variableId='4',
      body={
          'name': 'updated_random_number',
          'type': 'r'
      }
  ).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')

ลองใช้เลย

ใช้ API Explorer ด้านล่างเพื่อเรียกใช้เมธอดนี้กับข้อมูลแบบเรียลไทม์และดูการตอบสนอง