รหัส

เอนทิตี Google Ads ส่วนใหญ่แสดงgetId()เมธอดที่แสดงตัวระบุ ของเอนทิตี แม้ว่าในกรณีส่วนใหญ่จะไม่จำเป็นอย่างเคร่งครัด แต่รหัสอาจมีประโยชน์ เมื่อ

การทำงานกับรายงาน
รหัสเป็นวิธีที่ดีในการลิงก์แถวรายงานกับเอนทิตี Google Ads จริง
การรักษาการแมปกับที่เก็บข้อมูลภายนอก
คุณอาจมีข้อมูลที่อิงตามรหัสซึ่งจัดเก็บไว้ในฐานข้อมูลของคุณเองอยู่แล้ว
หากต้องการเพิ่มประสิทธิภาพเล็กน้อย

การดึงข้อมูลตามรหัสมักจะเร็วกว่าวิธีอื่นๆ โค้ดสำหรับการดึงข้อมูล เอนทิตีเดียวก็ง่ายขึ้นเล็กน้อยเช่นกัน

let campaigns = AdsApp.campaigns()
   .withIds([678678])
   .get();
// versus
let campaigns = AdsApp.campaigns()
   .withCondition("Name='My Campaign'")
   .get();

ความเป็นเอกลักษณ์

รหัสแคมเปญและรหัสกลุ่มโฆษณาจะไม่ซ้ำกัน โดยไม่มีแคมเปญหรือกลุ่มโฆษณา 2 รายการที่ใช้รหัสเดียวกัน อย่างไรก็ตาม โฆษณาและคีย์เวิร์ดมีรหัสแบบผสม โดยตัวระบุที่ไม่ซ้ำกันของคีย์เวิร์ดคือการรวมกันของรหัสกลุ่มโฆษณาและรหัสคีย์เวิร์ด ในทำนองเดียวกัน ตัวระบุที่ไม่ซ้ำกันของโฆษณาคือการรวมกันของรหัสกลุ่มโฆษณาและรหัสโฆษณา ซึ่งจะส่งผลต่อวิธีเรียกใช้ selector.withIds()

สําหรับแคมเปญและกลุ่มโฆษณา selector.withIds() คาดหวังอาร์เรย์ของตัวเลขดังนี้

let ids = [123123, 234234, 345345];
let campaignSelector = AdsApp.campaigns().withIds(ids);

แต่สำหรับโฆษณาและคีย์เวิร์ด selector.withIds() ต้องมีอาร์เรย์ของอาร์เรย์ 2 องค์ประกอบ โดยองค์ประกอบแรกคือรหัสกลุ่มโฆษณา ข้อมูลโค้ดต่อไปนี้ จะดึงคีย์เวิร์ด 3 รายการจากกลุ่มโฆษณา

let adGroupId = 123123;
let keywordSelector = AdsApp.keywords().withIds([
    [adGroupId, 234234],
    [adGroupId, 345345],
    [adGroupId, 456456]
]);

โครงสร้างเดียวกันนี้จะใช้เมื่อดึงข้อมูลโฆษณา

รหัสชั่วคราว

เมื่อทำงานกับคำขอเปลี่ยนแปลง ที่มีการดำเนินการหลายอย่าง คุณอาจต้องใช้รหัสชั่วคราว เพื่อลิงก์ทรัพยากรเข้าด้วยกัน เนื่องจากชื่อทรัพยากรแบบเต็มจะยังไม่พร้อมใช้งานจนกว่าคุณจะได้รับการตอบกลับจาก API รหัสชั่วคราวต้องเป็นตัวเลขติดลบที่เริ่มต้นด้วย -1 และต้องไม่ซ้ำกันภายในคำขอเปลี่ยนแปลงเดียวกัน หากต้องการใช้รหัสชั่วคราวอย่างมีประสิทธิภาพ คุณจะต้องเขียนโค้ดบางส่วนเพื่อให้แน่ใจว่าคุณจะไม่สร้างรหัสชั่วคราวที่ซ้ำกัน

let nextId = -1;

function getNextTempId() {
    const ret = nextId;
    nextId -= 1;
    return ret;
}

การเรียกใช้ getNextTempId แต่ละครั้งจะแสดงหมายเลขที่น้อยกว่าหมายเลขก่อนหน้าอยู่ 1 เนื่องจากรหัสชั่วคราวทั้งหมดต้องเป็นค่าลบ ให้เริ่มต้นที่ -1

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