โพรโทคอลบริการ API ของ Bing Ads
คุณสามารถเขียนแอปพลิเคชัน Bing Ads API ของคุณในภาษาใดก็ได้ที่สนับสนุนบริการเว็บ เอกสารภาษาคําอธิบายของบริการเว็บ (WSDL) ถูกกําหนดไว้สําหรับบริการเว็บแต่ละบริการ WSDL กําหนดการดําเนินการที่บริการเว็บมีและรูปแบบของคําขอและข้อความตอบกลับที่ไคลเอ็นต์ส่งไปยังและรับจากการดําเนินงาน ข้อความคําขอและการตอบสนองจะกําหนดชื่อและชนิดของข้อมูลที่ไคลเอ็นต์แลกเปลี่ยนกับการดําเนินการ สําหรับข้อมูลเพิ่มเติมเกี่ยวกับ WSDLs ให้ดูข้อมูลจําเพาะ W3C WSDL
SOAP สําหรับ Bing Ads API
Bing Ads API สนับสนุน Simple Object Access Protocol (SOAP) ภาษาบางภาษา เช่น C# และ Java มีเครื่องมือที่สร้างคลาสพร็อกซีจาก WSDL ถ้าภาษาที่คุณเลือกไม่มีเครื่องมือในการสร้างคลาสพร็อกซี คุณจะต้องสร้างระดับพร็อกซีหรือซองจดหมาย SOAP ของคุณเอง ในการสร้างคลาสพร็อกซี คุณต้องมีที่อยู่เว็บของเอกสาร WSDL ของบริการที่คุณต้องการใช้ Sandbox โฆษณาของ Microsoft และสภาพแวดล้อมการผลิตแต่ละรายการมีที่อยู่ที่ไม่ซ้ํากัน ที่อยู่ยังรวมถึงหมายเลขเวอร์ชันของ WSDL ที่เฉพาะเจาะจงสําหรับการเผยแพร่ API โฆษณา Bing หลัก สําหรับ WSDLs ของบริการผลิตและ Sandbox ของ Bing Ads API เวอร์ชันล่าสุด ดูที่อยู่บริการบนเว็บของ Bing Ads API
ลําดับองค์ประกอบ SOAP XML
เมื่อคุณสร้างข้อความคําขอ SOAP ลําดับขององค์ประกอบภายในเนื้อความ SOAP มีความสําคัญ องค์ประกอบต้องอยู่ในลําดับเดียวกับที่กําหนดไว้ในภาษาคําอธิบายบริการเว็บ (WSDL) ถ้าองค์ประกอบที่จําเป็นไม่เป็นลําดับ การเรียกใช้จะล้มเหลว ถ้าองค์ประกอบที่เลือกได้ไม่เป็นลําดับ การเรียกใช้อาจล้มเหลวหรือองค์ประกอบจะถูกละเว้น ไวยากรณ์ WSDL ซึ่งแสดงลําดับที่ถูกต้องขององค์ประกอบจะรวมอยู่ในแต่ละข้อความคําขอ ข้อความตอบกลับ และวัตถุข้อมูลที่จัดทําเป็นเอกสารในเนื้อหาอ้างอิง นอกจากนี้ แต่ละคําขอและข้อความตอบกลับแสดงตัวอย่างซองจดหมาย SOAP
หมายเหตุ
XML ไวต่ออักษรใหญ่-เล็ก คุณต้องใช้ตัวพิมพ์ที่ถูกต้องสําหรับชื่อค่า ภาษาการเขียนโปรแกรมที่มีชนิดอย่างยิ่ง เช่น C# ตรวจสอบให้แน่ใจว่า คุณมีตัวพิมพ์ที่ถูกต้องก่อนที่คุณจะสามารถคอมไพล์ได้ ภาษาอื่นๆ อาจไม่อนุญาตให้คุณมีข้อผิดพลาดในการคอมไพล์ถ้าไม่ได้ใช้ตัวพิมพ์ที่ถูกต้อง อย่างไรก็ตาม รหัสล้มเหลวในขณะทํางาน
ความสําเร็จบางส่วน
Bing Ads API สนับสนุนการดําเนินการเพิ่ม อัปเดต และลบบางส่วน ถ้าหนึ่งในวัตถุในรายการของวัตถุที่คุณกําลังเพิ่ม การอัปเดต หรือการลบล้มเหลว การดําเนินการอาจสําเร็จสําหรับผู้อื่นในคอลเลกชัน เมื่อคุณเรียกใช้การดําเนินการรับที่รับรายการตัวระบุ ตัวอย่างเช่น การดําเนินการ GetKeywordsByIds และหนึ่งในตัวระบุในรายการไม่ถูกต้อง การดําเนินการจะสําเร็จและองค์ประกอบการตอบสนองที่สอดคล้องกับตัวระบุการร้องขอที่ไม่ถูกต้องจะเป็น nil
การอัปเดตบางส่วน
การอัปเดตบางส่วนของการจัดการการส่งเสริมการขาย
การอัปเดตบางส่วนได้รับการสนับสนุนสําหรับวัตถุข้อมูลการจัดการการส่งเสริมการขายส่วนใหญ่ แต่ไม่ใช่ทั้งหมด ตัวอย่างเช่น เมื่ออัปเดตคุณสมบัติ Text ของ ExpandedTextAd คุณจําเป็นต้องระบุเฉพาะองค์ประกอบ Id และ Text เท่านั้น องค์ประกอบแบบอ่านอย่างเดียว เช่น สถานะบรรณาธิการโฆษณาต้องถูกทิ้งไว้เป็น nil หรือว่างเปล่า องค์ประกอบที่เลือกได้อาจเว้นว่างไว้และการตั้งค่าที่มีอยู่จะไม่เปลี่ยนแปลง เว้นแต่จะมีการจัดทําเอกสารไว้อย่างชัดเจน
ไม่รองรับการอัปเดตบางส่วนสําหรับส่วนขยายโฆษณา องค์ประกอบทางเลือกใดๆ ที่ไม่ได้ส่งด้วยคําขอการอัปเดตจะลบออกจากส่วนขยายโฆษณาที่เกี่ยวข้อง
การอัปเดตบางส่วนของการจัดการลูกค้า
บริการการจัดการลูกค้าทําการอัปเดตเอนทิตีอย่างเต็มรูปแบบ ดังนั้นนอกเหนือจากคุณสมบัติที่จําเป็นที่จัดทําเป็นเอกสารแล้ว คุณต้องให้ค่าสําหรับคุณสมบัติเพิ่มเติมทั้งหมดที่คุณไม่ต้องการเป็น nil หรือว่างเปล่า
หมายเหตุ
มีข้อยกเว้นหนึ่งข้อสําหรับกฎนี้คือองค์ประกอบ ForwardCompatibilityMap ของวัตถุใดๆ ตัวอย่างเช่น ถ้าคุณไม่มีองค์ประกอบ ForwardCompatibilityMap ของ AdvertiserAccount บริการจะไม่อัปเดตหรือทําให้คุณสมบัติใด ๆ ที่แสดงด้วยคู่คีย์และค่าเป็น null
จัดเก็บตัวระบุเอนทิตีของคุณภายในเครื่อง
คุณควรรักษาที่เก็บข้อมูลภายในเครื่องของบัญชีและเอนทิตีแคมเปญของคุณ โดยเฉพาะอย่างยิ่ง คุณควรจัดเก็บตัวระบุบัญชี ลูกค้า แคมเปญ กลุ่มโฆษณา และคีย์เวิร์ดไว้ในเครื่อง การเรียกส่วนใหญ่จําเป็นต้องมีตัวระบุของเอนทิตี ถ้าคุณจัดเก็บตัวระบุ คุณจะลบการเรียกใช้ที่จําเป็นในการรับตัวระบุออกไป
ตัวอย่างเช่น การเรียกการจัดการการส่งเสริมการขายจํานวนมากจําเป็นต้องใช้ตัวระบุบัญชี หากต้องการรับตัวระบุบัญชี คุณสามารถใช้บริการการจัดการลูกค้าได้ อย่างไรก็ตาม แทนที่จะเรียกใช้บริการซ้ํา ๆ ให้จัดเก็บตัวระบุบัญชีไว้ภายในเครื่อง เพื่อให้คุณสามารถใช้ในการโทรครั้งต่อไปได้
จัดการค่าใช้จ่ายที่เกี่ยวข้องกับการเรียกใช้บริการเว็บ
ต่อไปนี้เป็นค่าใช้จ่ายค่าใช้จ่ายในการประมวลผลเวลาที่เกี่ยวข้องกับการเรียกบริการเว็บแต่ละครั้ง
- กําลังสร้างการเชื่อมต่อ HTTPS ไปยังบริการเว็บ
- การรับรองความถูกต้องชื่อผู้ใช้และรหัสผ่าน
- กําลังตรวจสอบความถูกต้องของโทเค็นนักพัฒนา
ต้นทุนเหล่านี้เกิดขึ้นไม่ว่าคุณจะประมวลผลสินค้ารายการเดียวหรือชุดสินค้า โดยทั่วไปเพื่อลดค่าใช้จ่ายคุณควรพยายามประมวลผลรายการมากเท่าที่เป็นไปได้ในการโทรครั้งเดียว ตัวอย่างเช่น แทนที่จะเรียกใช้ UpdateCampaigns สําหรับแต่ละแคมเปญที่คุณต้องการอัปเดต ให้เรียกใช้เพียงครั้งเดียวสําหรับหลายแคมเปญที่คุณต้องการอัปเดต หากต้องการจัดการข้อมูลขนาดใหญ่ โดยเฉพาะอย่างยิ่งหากคุณต้องการเพิ่มหรืออัปเดตโฆษณาและคีย์เวิร์ดในกลุ่มโฆษณาหรือแคมเปญหลายรายการในบัญชี คุณควรใช้บริการจํานวนมาก บริการจํานวนมากช่วยให้คุณสามารถดาวน์โหลดข้อมูลเป็นไฟล์ TSV หรือ CSV แก้ไขตามความจําเป็น จากนั้นอัปโหลดการเปลี่ยนแปลงของคุณ สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้บริการแบบกลุ่ม ดูดาวน์โหลดจํานวนมากและอัปโหลด
เนื่องจากค่าใช้จ่ายที่เกี่ยวข้องกับการสร้างการเชื่อมต่อกับบริการเว็บคุณควรรักษาการเชื่อมต่อตราบเท่าที่จําเป็น ตัวอย่างเช่น ถ้าคุณต้องการร้องขอหลายรายงาน ให้ใช้วัตถุไคลเอ็นต์บริการการรายงานเดียวกันสําหรับการเรียกใช้การดําเนินการบริการการรายงานทั้งหมด ปิดการเชื่อมต่ออย่างชัดเจนเมื่อคุณไม่ต้องการใช้บริการอีกต่อไป
จัดการการควบคุมปริมาณ
การควบคุมการใช้งานในปริมาณสูงมากรักษาการใช้งานที่เป็นธรรมสําหรับลูกค้า Microsoft Advertising ทั้งหมด
API ข้อมูลเชิงลึกของโฆษณา
สําหรับบริการ Ad Insight การควบคุมจะจํากัดจํานวนการเรียกใช้ไปยัง API ที่ผู้ใช้หนึ่งคนสามารถดําเนินการได้ในหนึ่งนาที
ที่ระดับลูกค้า จํานวนการโทรที่ลูกค้าสามารถโทรไปยังข้อมูลลูกค้าจะถูกจํากัดโดยใช้โพรโทคอลบานเลื่อนที่มีหน้าต่าง 60 วินาที
หากคุณเกินขีดจํากัดการเรียกบริการ คุณจะเห็นข้อผิดพลาดต่อไปนี้:
- รหัสข้อผิดพลาดของตัวเลข: 117
- รหัสข้อผิดพลาดที่เป็นสัญลักษณ์: CallRateExceeded
- ข้อความ: คุณได้โทรเกินจํานวนที่คุณได้รับอนุญาตให้โทรในหนึ่งนาที โปรดลดจํานวนการโทรที่คุณโทรต่อนาที
เมื่อคุณสังเกตข้อผิดพลาดนี้ คุณสามารถส่งคําขอใหม่ภายใต้ขีดจํากัดหลังจากรอ 60 วินาที
API จํานวนมาก
บริการ Bulk จํากัดจํานวนคําขอที่คุณสามารถทําได้ใน DownloadCampaignsByAccountIds, DownloadCampaignsByCampaignIds และ GetBulkUploadUrl รายละเอียดของขีดจํากัดบริการอยู่ภายในและอาจมีการเปลี่ยนแปลง
หากคุณถึงขีดจํากัดการเรียกใช้บริการ คุณจะเห็นข้อผิดพลาดต่อไปนี้:
- รหัสข้อผิดพลาดของตัวเลข: 4204
- รหัสข้อผิดพลาดที่เป็นสัญลักษณ์: BulkServiceNoMoreCallsPermittedForTheTimePeriod
- ข้อความ: ไม่อนุญาตให้อัปโหลดหรือดาวน์โหลดเป็นกลุ่มขนาดใหญ่สําหรับบัญชีนี้สําหรับช่วงเวลาปัจจุบัน ถ้าคุณถึงขีดจํากัดการอัปโหลดเป็นกลุ่มแล้ว การดําเนินการดาวน์โหลดเป็นกลุ่มอาจยังพร้อมใช้งาน หรือในทางกลับกัน
ถ้าคุณสังเกตข้อผิดพลาดนี้ คุณสามารถส่งการร้องขอของคุณอีกครั้งหลังจากรอถึง 15 นาที สําหรับรายละเอียดเพิ่มเติม โปรดดูแนวทางปฏิบัติที่ดีที่สุดสําหรับการดาวน์โหลดเป็นกลุ่มและแนวทางปฏิบัติที่ดีที่สุดสําหรับการอัปโหลดเป็นกลุ่ม
นอกจากนี้ โปรดทราบว่าขีดจํากัดขนาดต่อไฟล์สําหรับการอัปโหลดจํานวนมากในการผลิตคือ 100MB และสูงสุด 4 ล้านแถว สําหรับ Sandbox ขีดจํากัดคือ 20K แถว
API การจัดการแคมเปญ
สําหรับบริการการจัดการแคมเปญ การควบคุมจะจํากัดจํานวนการเรียกใช้ API ที่ผู้ใช้หนึ่งคนสามารถดําเนินการได้ในเวลาไม่กี่นาที
ที่ระดับลูกค้า จํานวนการโทรที่ลูกค้าสามารถโทรไปยังข้อมูลลูกค้าจะถูกจํากัดโดยใช้โพรโทคอลบานเลื่อนที่มีหน้าต่าง 60 วินาที
หากคุณถึงขีดจํากัดการเรียกใช้บริการ คุณจะเห็นข้อผิดพลาดต่อไปนี้:
- รหัสข้อผิดพลาดของตัวเลข: 117
- รหัสข้อผิดพลาดที่เป็นสัญลักษณ์: CallRateExceeded
- ข้อความ: คุณได้โทรเกินจํานวนที่คุณได้รับอนุญาตให้โทรในหนึ่งนาที โปรดลดจํานวนการโทรที่คุณโทรต่อนาที
เมื่อคุณสังเกตข้อผิดพลาดนี้ คุณสามารถส่งคําขอใหม่ภายใต้ขีดจํากัดหลังจากรอ 60 วินาที
API การรายงาน
บริการการรายงานจํากัดจํานวนคําขอที่คุณสามารถทําได้ใน SubmitGenerateReportRequest รายละเอียดของขีดจํากัดบริการอยู่ภายในและอาจมีการเปลี่ยนแปลง
หากคุณถึงขีดจํากัดการเรียกใช้บริการ คุณจะเห็นข้อผิดพลาดต่อไปนี้:
- รหัสข้อผิดพลาดของตัวเลข: 207
- รหัสข้อผิดพลาดที่เป็นสัญลักษณ์: ConcurrentRequestOverLimit
- ข้อความ: จํานวนการร้องขอรายงานที่เกิดขึ้นพร้อมกันถึงจํานวนสูงสุดแล้ว โปรดรอจนกว่ารายงานก่อนหน้าจะเสร็จสมบูรณ์ แล้วลองส่งคําขอใหม่
ถ้าคุณสังเกตข้อผิดพลาดนี้ โปรดรอจนกว่ารายงานก่อนหน้าจะเสร็จสมบูรณ์ แล้วลองส่งการร้องขอใหม่
ดูเพิ่มเติม
ที่อยู่ของบริการเว็บ API ของ Bing Ads
ภาพรวมของ API โฆษณา Bing