สร้างคำตอบ

หลังจากที่แอปพลิเคชันของคุณประมวลผลคำขอราคาเสนอจาก Google แล้ว แอปพลิเคชันจะต้องสร้าง และส่งคำตอบ คู่มือนี้จะอธิบายวิธีเขียนโค้ดแอปพลิเคชันของคุณเพื่อสร้าง คำตอบ

สร้างข้อความการเสนอราคาตอบ

Authorized Buyers จะส่ง BidRequest เป็นส่วนเนื้อหาข้อความ HTTP POST การตอบกลับที่แอปพลิเคชันของคุณส่งต้องมี ตั้งค่าส่วนหัว Content-Type เป็น application/octet-stream และเนื้อหาข้อความที่ประกอบด้วยบัฟเฟอร์โปรโตคอลแบบอนุกรม โปรโตคอล บัฟเฟอร์เป็นข้อความ BidResponse ตามที่กำหนดไว้ใน realtime-bidding.proto แอปพลิเคชันของคุณต้องส่งคืนโค้ดที่แยกวิเคราะห์ได้ BidResponse เพื่อตอบสนองต่อทุก BidRequest หมดเวลา และคำตอบที่แยกวิเคราะห์ไม่ได้จะถือว่าเป็นข้อผิดพลาดและ การควบคุมของ Google ผู้เสนอราคาที่มีอัตราข้อผิดพลาดสูง

หากคุณไม่ต้องการเสนอราคาสำหรับการแสดงผลหนึ่งๆ คุณสามารถตั้งค่า เว้นช่อง processing_time_ms อย่างเดียว และเว้นช่องอื่นๆ ทั้งหมด ว่างเปล่า คุณสามารถรับ realtime-bidding.proto ได้จาก ข้อมูลอ้างอิง

รหัสครีเอทีฟโฆษณา

BidResponse ของคุณจะระบุครีเอทีฟโฆษณาผ่าน ฟิลด์ buyer_creative_id (จำกัดที่ 64 ไบต์) แม้แต่ครีเอทีฟโฆษณาที่คล้ายกัน ต้องมีค่าที่ไม่ซ้ำกันสำหรับ buyer_creative_id หากค่าแตกต่างกัน ลักษณะเด่นใดๆ ซึ่งรวมถึงแต่ไม่จำกัดเพียงขนาด, URL ที่ประกาศ ครีเอทีฟโฆษณา และประเภทผู้ให้บริการ กล่าวคือ คุณต้องให้ รหัสโฆษณา ไปยังโฆษณา 2 รายการใดต่อไปนี้

  • มีรูปลักษณ์หรือพฤติกรรมที่ต่างออกไป
  • แสดงผลเป็นรูปภาพอื่น
  • แสดงผลด้วยวิธีการต่างๆ (เช่น โฆษณาหนึ่งประกอบด้วยรูปภาพ ในขณะที่อีกรายการหนึ่งมี Flash)

ขณะออกแบบแอปพลิเคชัน คุณควรตัดสินใจเลือกวิธี การสร้างตัวระบุที่เหมาะสมสำหรับ ประเภทครีเอทีฟโฆษณาที่คุณวางแผน ที่จะส่ง

แอตทริบิวต์โฆษณา

คุณต้องประกาศแอตทริบิวต์โฆษณาที่อธิบายรายละเอียดของโฆษณา ลักษณะเฉพาะและการกำหนดเป้าหมายใน BidResponse.Ad.attribute แอตทริบิวต์ที่ต้องประกาศ (โปรดดูรายการที่สนับสนุนทั้งหมดด้วย แอตทริบิวต์ที่ buyer-declarable-creative-attributes.txt):

  • 7 Tagging: IsTagged
    โฆษณาที่มีพิกเซลหรือเว็บบีคอนเพื่อวัตถุประสงค์ในการสร้าง รายการรหัสคุกกี้สำหรับการทำการตลาดใหม่ในภายหลัง
  • 8 Remarketing: IsRemarketing
    โฆษณากำหนดเป้าหมายผู้บริโภคตามรหัสคุกกี้หรือรหัสอุปกรณ์ ซึ่ง รายการรหัสคุกกี้หรือรหัสอุปกรณ์หมายถึงกลุ่มผู้บริโภคที่ เคยโต้ตอบกับเว็บไซต์ที่ผู้ซื้อเป็นเจ้าของหรือเป็นตัวแทน
  • 9 UserInterestTargeting: IsUserInterestTargeted
    โฆษณากำหนดเป้าหมายผู้บริโภคตามรหัสคุกกี้หรือรหัสอุปกรณ์ ซึ่ง รายการรหัสคุกกี้หรือรหัสอุปกรณ์หมายถึงกลุ่มผู้บริโภคที่ผู้ซื้อ เป็นกลุ่มที่มีความสนใจร่วมกัน
  • 30 InstreamVastVideoType: Vpaid
    โฆษณาต้องมีการรองรับ VPAID เพื่อแสดงผล
  • 32 MraidType: MRAID
    โฆษณาต้องใช้ MRAID API ในการแสดงผล

นอกจากนี้ ระบบยังรองรับแอตทริบิวต์ต่อไปนี้ แต่การประกาศคือ เพราะ Authorized Buyers ตรวจพบโดยอัตโนมัติและจะบล็อก (หรือ อนุญาต) ครีเอทีฟโฆษณาตามค่าที่ตรวจพบ ไม่ใช่การประกาศ โปรดดู API ครีเอทีฟโฆษณา เพื่อดูคำอธิบายเกี่ยวกับวิธีรับความคิดเห็นเกี่ยวกับพร็อพเพอร์ตี้ที่ตรวจพบของ ครีเอทีฟโฆษณา

  • 34 RichMediaCapabilityType: RichMediaCapabilityFlash
    โฆษณาต้องใช้ Flash ในการแสดงผล
  • 50 RichMediaCapabilityType: RichMediaCapabilityNonFlash
    โฆษณาไม่ต้องใช้ Flash ในการแสดงผล
  • 47 RichMediaCapabilityType: RichMediaCapabilitySSL
    โฆษณาสามารถแสดงผลบนหน้า SSL ได้ โปรดทราบว่า Authorized Buyers จะปฏิบัติต่อครีเอทีฟโฆษณา ซึ่งมีค่าที่ประกาศต่างกันของแอตทริบิวต์นี้ว่าแตกต่างกัน (จะได้รับการตรวจสอบ แยกกันและมีสถานะการอนุมัติแตกต่างกัน) ดังนั้น ถ้าคุณเสนอราคาด้วยทั้ง SSL และ โฆษณาเดียวกันในเวอร์ชันที่ไม่ใช่ SSL คุณควรประกาศแอตทริบิวต์นี้ให้สอดคล้องกัน เพื่อให้ความแตกต่างนี้แสดงอย่างถูกต้องใน AdX

ช่องการเสนอราคาแบบเปิด

การเสนอราคาตอบที่ส่งโดย Exchange และผู้เสนอราคาในเครือข่ายที่เข้าร่วมใน Open การเสนอราคาคล้ายกับของ Authorized Buyers ที่เข้าร่วม การเสนอราคาแบบเรียลไทม์ ลูกค้าในการเสนอราคาแบบเปิดสามารถระบุ และช่องที่มีอยู่แล้ว 2-3 ช่องอาจมีทางเลือกให้ใช้งาน เหล่านี้ ได้แก่

OpenRTB Authorized Buyers รายละเอียด
BidResponse.imp[].pmp.deals[].id BidResponse.ad[].adslot[].exchange_deal_id

รหัสดีลจากเนมสเปซของ Exchange ที่เชื่อมโยงกับดีลนี้ เสนอราคาและรายงานไปยังผู้เผยแพร่โฆษณาแล้ว

BidResponse.seatbid[].bid[].ext.exchange_deal_type BidResponse.ad[].adslot[].exchange_deal_type

ประเภทของดีลที่รายงานไปยังผู้เผยแพร่โฆษณา ซึ่งส่งผลต่อวิธีการ ในการประมูลแต่ละครั้ง

BidResponse.seatbid[].bid[].ext.third_party_buyer_token BidResponse.ad[].adslot[].third_party_buyer_token โทเค็นที่ใช้ในการระบุข้อมูลผู้ซื้อบุคคลที่สามปลายทาง Exchange ในฐานะผู้เสนอราคาแบบเปิดคือตัวกลาง ข้อมูลนี้มาจาก ผู้ซื้อที่เป็นบุคคลที่สาม และต้องถูกส่งต่อไปยัง Google โดยไม่มีการเปลี่ยนแปลงในราคาเสนอ คำตอบ

คำแนะนำ

  • เปิดใช้การเชื่อมต่อ HTTPS แบบถาวร (หรือเรียกอีกอย่างว่า "keep-alive" หรือ "ใช้การเชื่อมต่อซ้ำ") บนเซิร์ฟเวอร์ของคุณ ตั้งค่าระยะหมดเวลาเป็น 10 วินาทีที่ ค่าต่ำสุด - ค่าที่สูงกว่ามีประโยชน์ในหลายๆ กรณี Google ยืนยัน ระหว่างการทดสอบเวลาในการตอบสนองเริ่มต้นของแอปพลิเคชัน เนื่องจาก Authorized Buyers ส่งคำขอในอัตราที่สูงและจำเป็นต้องหลีกเลี่ยง ส่วนเกินของเวลาในการตอบสนองของการสร้างการเชื่อมต่อ TCP สำหรับแต่ละรายการ อีกครั้ง
  • รวม URL ติดตามการแสดงผลที่ไม่บังคับ เพื่อติดตามเมื่อ แทนเมื่อผู้เสนอราคาชนะ เนื่องจากการออก ระหว่างการชนะและการแสดงผล จะช่วยให้การติดตามแม่นยำมากขึ้น สถิติ

  • ทำให้โค้ดผู้เสนอราคาของคุณปราศจากทรัพยากร Dependency ในช่องที่เลิกใช้งานแล้ว ซึ่งอาจทำให้ราคาเสนอล้มเหลวโดยมีข้อผิดพลาดได้
  • รวม BidResponse.Ad.width และ BidResponse.Ad.height ใน BidResponseBidResponse สำหรับคำขอที่มีโฆษณาหลายขนาดจะต้อง รวมค่า width และ height มิเช่นนั้นระบบจะ ไม่ได้เข้าร่วมการประมูล
  • จำกัดขนาดการตอบกลับให้ต่ำกว่า 8K การตอบกลับที่มีขนาดใหญ่มากอาจเพิ่มขึ้น เวลาในการตอบสนองของเครือข่ายและอาจทำให้หมดเวลา
  • ปฏิบัติตามหลักเกณฑ์สำหรับ ราคาเสนอพื้นที่โฆษณา iOS ที่ต้องมีการระบุแหล่งที่มา SKAdNetwork

ตัวอย่างการเสนอราคาตอบ

ตัวอย่างต่อไปนี้แสดงถึงตัวอย่าง Protobuf ที่มนุษย์อ่านได้และ คำขอ JSON

Google

JSON ของ OpenRTB

โปรโตคอล OpenRTB

ข้อสำคัญ: ข้อความ Protobuf ที่แสดงใน ตัวอย่างจะแสดงเป็นข้อความที่มนุษย์อ่านได้ แต่นี่ไม่ใช่วิธีการ ข้อความเหล่านั้นส่งผ่านสาย เมื่อใช้โปรโตคอล Google หรือ OpenRTB ระบบจะยอมรับเฉพาะข้อความการเสนอราคาตอบแบบต่อเนื่องเท่านั้น

คุณสามารถสร้างและเรียงลำดับข้อความ BidResponse โดยใช้ รหัส C++ ต่อไปนี้

BidResponse bid_response;
// fill in bid response with bid information
string post_response;
if (bid_response.SerializeToString(&post_response)) {
  // respond to the POST with post_response as the content
} else {
  // return an error to the POST
}

ระบุโฆษณา

การเสนอราคาตอบระบุครีเอทีฟโฆษณาที่จะแสดงหากราคาเสนอของคุณชนะ ราคาเสนอของคุณ ต้องมีรูปแบบโฆษณาที่รองรับรูปแบบใดรูปแบบหนึ่ง (AMP, วิดีโอ, เนทีฟ) ด้วยวิธีนี้ เช่น เราจะระบุครีเอทีฟโฆษณาโดยใช้ช่อง html_snippet

อีกทางเลือกหนึ่งคือ คุณจะระบุครีเอทีฟโฆษณาโดยใช้หนึ่งใน ฟิลด์ต่อไปนี้ตามรูปแบบโฆษณา:

  • โฆษณาที่แสดงโดย SDK
    • BidResponse.Ad.sdk_rendered_ad
  • AMP
    • BidResponse.Ad.amp_ad_url
  • วิดีโอ
    • BidResponse.Ad.video_url หรือ
    • BidResponse.Ad.video_vast_xml
  • เนทีฟ
    • BidResponse.Ad.native_ad

ระบุโฆษณาที่โฮสต์บนเซิร์ฟเวอร์ของคุณเองโดยใช้ข้อมูลโค้ด HTML ใน ฟิลด์ html_snippet ของ BidResponse ภายใน iframe ที่แทรกเข้ามาในหน้าเว็บ ส่งผลให้โฆษณา ถูกดึงขึ้นมาและแสดงผลเมื่อหน้าเว็บโหลดขึ้นมา คุณต้องสร้าง HTML เพื่อให้โฆษณา (แบนเนอร์หรือโฆษณาคั่นระหว่างหน้า) แสดงผลอย่างถูกต้องภายในแท็ก iframe และมีขนาดที่เหมาะสมสำหรับช่องโฆษณาที่คุณกำลังเสนอราคา

นอกจากนี้ ขนาดโฆษณาที่ประกาศในการเสนอราคาตอบต้องตรงกับขนาดใดขนาดหนึ่งเท่านั้น ของชุดค่าผสมขนาดในคำขอราคาเสนอเมื่อ

  • โฆษณาเป็นแบนเนอร์ปกติ (ไม่ใช่วิดีโอ เนทีฟ หรือโฆษณาคั่นระหว่างหน้า)
  • ผู้เสนอราคาได้ประกาศขนาดในการเสนอราคาตอบ การประกาศขนาดคือ เมื่อใดก็ตามที่มีคำขอมากกว่า 1 ขนาด
  • โดยมีข้อยกเว้นสำหรับโฆษณาคั่นระหว่างหน้า สำหรับโฆษณาคั่นระหว่างหน้าตามความกว้าง ต้องมีขนาดอย่างน้อย 50% ของความกว้างหน้าจอและความสูงอย่างน้อย 40% ของ ความสูงของหน้าจอ

ฟิลด์ html_snippet รองรับโค้ด HTML ที่ถูกต้องที่ แสดงผลอย่างถูกต้อง แต่โปรดคำนึงถึงข้อจำกัดในการระบุ buyer_creative_id ในส่วนสร้างข้อความการเสนอราคาตอบ หนึ่ง ใช้สำหรับใส่ข้อมูลเพิ่มเติมในอาร์กิวเมนต์ของ URL ที่ ดึงข้อมูลจากเซิร์ฟเวอร์ของคุณเป็นส่วนหนึ่งของการแสดงโฆษณา ซึ่งจะทำให้คุณผ่าน ข้อมูลที่กำหนดเองเกี่ยวกับการแสดงผลกลับไปยังเซิร์ฟเวอร์ของคุณเอง

นโยบายส่วนใหญ่สำหรับข้อมูลโค้ด HTML ที่แสดงในการเสนอราคาตอบจะเหมือนกับ สำหรับโฆษณาของบุคคลที่สาม ดู Authorized Buyers หลักเกณฑ์ของโปรแกรม ข้อกำหนดสำหรับบุคคลที่สาม การแสดงโฆษณา และการประกาศ URL การคลิกผ่านในโฆษณาเพื่อดูข้อมูลเพิ่มเติม

ระบุมาโคร

ข้อมูลโค้ด HTML ที่กำหนดครีเอทีฟโฆษณาอาจมีแบบพิเศษ ที่เรียกว่ามาโคร ขณะแสดงโฆษณา ระบบจะแทนที่ค่าด้วย มาโคร ตัวอย่างเช่น แอปพลิเคชันการเสนอราคาของลูกค้าอาจใช้ฟิลด์ WINNING_PRICE เพื่อคำนวณราคาค่าโฆษณา หากชนะการประมูล หากต้องการแยกวิเคราะห์มาโครนี้ คุณจะต้องมี ที่ถอดรหัสการยืนยันราคา โปรดดูที่การถอดรหัสราคา ดูข้อมูลเพิ่มเติมที่หน้าการยืนยัน

ระบุมาโครเป็นส่วนหนึ่งของข้อมูลโค้ด HTML ในรูปแบบ %%MACRO%% โดยที่ MACRO เป็นหนึ่งในภาษาที่รองรับ ที่แสดงในตารางด้านล่าง

Google กำหนดให้คุณต้องใช้ CLICK_URL_UNESC หรือ มาโคร CLICK_URL_ESC ภายในครีเอทีฟโฆษณาของบุคคลที่สาม โฆษณาของคุณ Google ใช้มาโคร CLICK_URL สำหรับการติดตามการคลิก

ในการใช้มาโคร ให้ใส่มาโครดังกล่าวลงในโฆษณาเพื่อให้ URL ถูกดึงข้อมูลเมื่อ มีคนคลิกวิดีโอ ค่าที่ส่งคืนจากการดึงข้อมูลคือการเปลี่ยนเส้นทางไปยังอีกรายการหนึ่ง URL ที่คุณเพิ่มต่อท้าย CLICK_URL

มาโคร คำอธิบาย
ADVERTISING_IDENTIFIER อนุญาตให้ผู้ซื้อได้รับ iOS IDFA หรือรหัสโฆษณาของ Android ในการแสดงผล ดูการถอดรหัสตัวระบุผู้ลงโฆษณา เพื่อดูรายละเอียด
CACHEBUSTER การแสดงสตริงจำนวนเต็ม 4 ไบต์แบบสุ่มที่ไม่มีเครื่องหมาย
CLICK_URL_UNESC

URL การคลิกที่ไม่ใช้อักขระหลีกของโฆษณา ในข้อมูลโค้ด เวอร์ชันที่ใช้อักขระหลีกของ โดย URL การคลิกของบุคคลที่สามควรอยู่ต่อจากมาโครโดยตรง

ตัวอย่างเช่น หาก URL การคลิกของบุคคลที่สามคือ http://my.adserver.com/some/path/handleclick?click=clk, โค้ดต่อไปนี้สามารถใช้กับ URL การคลิกของบุคคลที่สามที่อยู่หลังการเรียกมาโคร:

<a href="%%CLICK_URL_UNESC%%http%3A%2F%2Fmy.adserver.com%2Fsome%2Fpath%2Fhandleclick%3Fclick%3Dclk"></a>

ขณะแสดงโฆษณา การขยายพื้นที่นี้จะขยายไปยัง

<a href="http://google-click-url?...&ad_url=http%3A%2F%2Fmy.adserver.com%2Fsome%2Fpath%2Fhandleclick%3Fclick%3Dclk"></a>

URL จะบันทึกการคลิกกับ Google ก่อน จากนั้นจึงเปลี่ยนเส้นทางไปยัง URL การคลิกของบุคคลที่สาม

CLICK_URL_ESC

URL การคลิกที่ซ่อนค่าของโฆษณา ใช้แทน CLICK_URL_UNESC หากคุณต้องส่งค่าดังกล่าวก่อน เซิร์ฟเวอร์อื่นที่จะมีการเปลี่ยนเส้นทาง

ตัวอย่างเช่น สามารถใช้โค้ดต่อไปนี้ในข้อมูลโค้ด HTML ได้

<a href="http://my.adserver.com/click?google_click_url=%%CLICK_URL_ESC%%"></a>

ขณะแสดงโฆษณา การขยายพื้นที่นี้จะขยายไปยัง

<a href="http://my.adserver.com/click?google_click_url=http://google-click- url%3F...%26ad_url%3D"></a>

การดำเนินการนี้จะบันทึกคลิกกับ my.adserver.com ซึ่ง มีหน้าที่เปลี่ยนเส้นทางไปยัง URL ที่ส่งผ่าน พารามิเตอร์ google_click_url โดยถือว่า my.adserver.com ปล่อยหลบหนีจาก google_click_url พารามิเตอร์

คุณสามารถเพิ่ม URL ที่ใช้ Escape 2 ครั้งต่อท้าย %%CLICK_URL_ESC%% หลังจากลบ Escape ทำได้โดย my.adserver.com ซึ่งมี URL เวอร์ชัน Escape เพียงครั้งเดียว ต่อท้าย google_click_url เมื่อ ดึงข้อมูล google_click_url แล้ว ระบบจะเลิก Escape อีกครั้งแล้วหลังจากนั้น เปลี่ยนเส้นทาง

CLICK_URL_ESC_ESC

URL ที่ใช้ Escape 2 ครั้งสำหรับโฆษณา ใช้แทน CLICK_URL_UNESC หากคุณต้องส่งค่าดังกล่าวก่อน เซิร์ฟเวอร์อื่นที่จะมีการเปลี่ยนเส้นทาง

ตัวอย่างเช่น สามารถใช้โค้ดต่อไปนี้ในข้อมูลโค้ด HTML ได้

<a href="http://my.adserver.com/click?google_click_url=%%CLICK_URL_ESC_ESC%%"></a>

ขณะแสดงโฆษณา การขยายพื้นที่นี้จะขยายไปยัง

<a href="http://my.otheradserver.com/click?google_click_url=http%3A%2F%2Fmy.adserver.com%2Fclick%3Fgoogle_click_url%3Dhttp%3A%2F%2Fgoogle-click-%20url%253F...%2526ad_url%253D"></a>
SCHEME ขยายเป็น http: หากคำขอราคาเสนอไม่จำเป็นต้องใช้ SSL หรือ https: หากคำขอราคาเสนอต้องใช้ SSL
SITE โดเมน URL ที่ใช้อักขระหลีกของ URL เนื้อหาหรือรหัสที่ไม่ระบุตัวตนสำหรับพื้นที่โฆษณาที่ไม่ระบุตัวตน
SITE_URL เลิกใช้งานแล้ว แทนที่โดยมาโคร SITE ซึ่งมีฟังก์ชันการทำงานที่เหมือนกัน
TZ_OFFSET ออฟเซ็ตเขตเวลา
VERIFICATION ค่าที่แตกต่างกันสำหรับเวอร์ชันที่ใช้งานจริงและเมื่อมีการสแกนครีเอทีฟโฆษณาในการยืนยัน ไปป์ไลน์ รูปแบบคือ %%?VERIFICATION:true-val:false-val%% หากมี ค่ายกเว้นมาโครสามารถใช้สำหรับ true-val และ false-val รวมถึงสตริงว่าง สำหรับการเสนอราคาแบบเปิด เราขอแนะนำให้ Exchange ใช้มาโครนี้ เมื่อทำได้แล้ว แพลตฟอร์มฝั่งซื้อจะไม่จำเป็นต้องทำการเปลี่ยนแปลง

ตัวอย่างเช่น หากครีเอทีฟโฆษณาต้องใส่ %%?VERIFICATION:-1:5000%% การแทนที่ข้อความจะเป็น 5000 ในการแสดงและ -1 ในส่วน ไปป์ไลน์การยืนยัน ซึ่งจะช่วยแยกความแตกต่างระหว่างชุดคำสั่ง ping ทั้งสองชุด
WINNING_PRICE ค่าใช้จ่ายการแสดงผลที่เข้ารหัส (หรือ CPI ไม่ใช่ CPM) ใน ระดับไมโครของสกุลเงินในบัญชี เช่น CPM ที่ชนะ $5 USD ตรงกับ CPM 5,000,000 ไมโคร CPM หรือ CPI ระดับ 5,000 ไมโคร ถอดรหัสแล้ว ที่มีค่า WINNING_PRICE ในกรณีนี้จะเท่ากับ 5,000 ราคาที่ชนะจะระบุด้วย CPI
WINNING_PRICE_ESC WINNING_PRICE ที่ใช้อักขระหลีกกับ URL

การ Escape URL ในมาโครจะใช้ชุดรูปแบบต่อไปนี้

  • ระบบจะแทนที่อักขระเว้นวรรคด้วยเครื่องหมายบวก (+)
  • อักขระที่เป็นตัวอักษรและตัวเลขคละกัน (0-9, a-z, A-Z) และอักขระจากชุด !()*,-./:_~ จะไม่เปลี่ยนแปลง
  • อักขระอื่นๆ ทั้งหมดจะถูกแทนที่ด้วย %XX โดยที่ XX เป็นเลขฐานสิบหก ตัวเลขที่แสดงถึงอักขระ

ข้อจำกัดของผู้เผยแพร่โฆษณา

ผู้เผยแพร่โฆษณาใช้ BidRequest เพื่อผ่านข้อจำกัดเกี่ยวกับโฆษณา พวกเขาจะอนุญาต คุณจำเป็นต้องบังคับใช้ข้อจำกัดในช่องต่อไปนี้

  • allowed_vendor_type
  • excluded_attribute
  • excluded_sensitive_category

ช่องหนึ่งระบุฟีเจอร์ที่อนุญาตของโฆษณาและอีกช่องหนึ่งระบุ ฟีเจอร์ที่ไม่ได้รับอนุญาต ไม่ส่งคืนโฆษณาโดยใช้คุณลักษณะที่ไม่ได้รับอนุญาต สำหรับที่อนุญาต เช่น ประเภทผู้ให้บริการ จะส่งคืนโฆษณาเฉพาะในกรณีที่ประเภทผู้ให้บริการอยู่ใน รายการ allowed_vendor_type ในBidRequest โปรดดู ความคิดเห็นสำหรับช่องเหล่านี้ในบัฟเฟอร์โปรโตคอล BidRequest สำหรับรายละเอียดเพิ่มเติม

หากข้อมูลโค้ด HTML แสดงผลใน BidResponse คุณจะ จำเป็นต่อการตั้งค่า attribute, category อย่างถูกต้อง และ click_through_url ในฟิลด์ BidResponse หากโฆษณามีค่าที่เกี่ยวข้องหลายค่าสำหรับช่องเหล่านี้ คุณต้อง รวมทุกค่า ดูความคิดเห็นสำหรับช่องเหล่านี้ใน คำจำกัดความบัฟเฟอร์โปรโตคอลของ BidResponse สำหรับรายละเอียดเพิ่มเติม คำตอบที่ไม่ได้ตั้งค่าช่องเหล่านี้จะถูกยกเลิก

ค่าที่เป็นไปได้ของ BidRequest.excluded_attribute คือ (ดู publisher-excludable-creative-attributes.txt)

  • 7 Tagging: IsTagged
    โฆษณาไม่ได้รับอนุญาตหากมีพิกเซลหรือเว็บบีคอนเพื่อวัตถุประสงค์ในการสร้างรายการ รหัสคุกกี้สำหรับรีมาร์เก็ตติ้งครั้งต่อไป
  • 8 CookieTargeting: IsCookieTargeted
    โฆษณาจะไม่ได้รับอนุญาตหากกำหนดเป้าหมายผู้บริโภคตามรหัสคุกกี้ซึ่งมีรายการรหัสคุกกี้แสดงอยู่ กลุ่มผู้บริโภคซึ่งก่อนหน้านี้ได้โต้ตอบกับเว็บไซต์ที่ผู้ซื้อเป็นเจ้าของหรือเป็นตัวแทน
  • 9 UserInterestTargeting: IsUserInterestTargeted
    โฆษณาจะไม่ได้รับอนุญาตหากกำหนดเป้าหมายผู้บริโภคตามรหัสคุกกี้ซึ่งมีรายการรหัสคุกกี้แสดงอยู่ กลุ่มผู้บริโภคที่ผู้ซื้อกำหนดให้เป็นกลุ่มความสนใจทั่วไป
  • 21 CreativeType: Html
    โฆษณาไม่ได้รับอนุญาตให้ใช้ html_snippet หรือ snippet_template ใน BidResponse.Ad
  • 22 CreativeType: VastVideo
    โฆษณาไม่ได้รับอนุญาตให้ใช้ช่อง video_url ใน BidResponse.Ad
  • 30 InstreamVastVideoType: Vpaid
    โฆษณาไม่ได้รับอนุญาตให้ต้องมีการรองรับ VPAID เพื่อแสดงผล
  • 32 MraidType: MRAID
    โฆษณาไม่ได้รับอนุญาตให้ใช้ MRAID API ในการแสดงผล
  • 34 RichMediaCapabilityType: RichMediaCapabilityFlash
    โฆษณาไม่ได้รับอนุญาตให้ใช้ Flash เพื่อแสดงผล
  • 39 RichMediaCapabilityType: RichMediaCapabilityHTML5
    โฆษณาไม่ได้รับอนุญาตให้ต้องใช้ฟีเจอร์ HTML5 ในการแสดงผล
  • 48 RichMediaCapabilityType: RichMediaCapabilityNonSSL
    โฆษณาไม่ได้รับอนุญาตให้สร้างคำขอที่ไม่ใช่ SSL

ดังนั้น หากฟิลด์ excluded_attribute มีค่า 7 คุณไม่ควรส่งคืนโฆษณาที่ใช้พิกเซลหรือเว็บบีคอน การสร้างรายการ โปรดทราบว่าหากโฆษณาดำเนินการเช่นนี้ โฆษณาจะต้องกำหนดค่า 7 ไว้ใน ฟิลด์แอตทริบิวต์ของ BidResponse ในทำนองเดียวกัน หากช่อง excluded_attribute มีค่า 48 คุณควรส่งคืนเฉพาะโฆษณาที่สามารถแสดงผลบนหน้าเว็บ SSL (และ ประกาศแอตทริบิวต์ 47 RichMediaCapabilityType: RichMediaCapabilitySSL)

และฟิลด์ excluded_sensitive_category ในฟิลด์ BidRequest ใช้รหัสจาก มี ad-sensitive-categories.txt ไฟล์ในหน้าข้อมูลอ้างอิง นี่คือส่วนที่ขยายเวลา คำอธิบายของโค้ดเหล่านี้บางส่วน:

  • 3 Politics
    ประกอบด้วยปัญหาทางการเมืองหรือความขัดแย้งทางสังคม ไม่รวมโฆษณาสำหรับองค์กรข่าวโดยทั่วไปที่ไม่เกี่ยวข้องกับมุมมองที่ลำเอียงเกี่ยวกับปัญหาดังกล่าว
  • 4 Dating
    ประกอบด้วยบริการหาคู่และชุมชนการนัดพบออนไลน์
  • 5 Religion
    ประกอบด้วยโฆษณาทางศาสนาและโฆษณาที่สนับสนุนหรือต่อต้านมุมมองทางศาสนา ไม่รวมถึงโหราศาสตร์หรือความเชื่อเรื่องจิตและวิญญาณที่ไม่เกี่ยวข้องกับนิกาย
  • 7 Video Games (Casual & Online)
    ประกอบด้วยวิดีโอเกม เกมออนไลน์ และเกมที่ดาวน์โหลดได้ ไม่รวมเครื่องเล่นวิดีโอเกม
  • 8 Ringtones & Downloadables
    ส่วนเพิ่มเติมสำหรับมือถือประกอบด้วย เสียงเรียกเข้า และไฟล์ที่ดาวน์โหลดได้อื่นๆ เช่น สกรีนเซฟเวอร์และวอลเปเปอร์สำหรับเครื่องเดสก์ท็อป รวมทั้งรูปแบบโปรไฟล์และกราฟิกสำหรับโซเชียลเน็ตเวิร์ก
  • 10 Get Rich Quick
    รูปแบบที่สัญญาว่าจะสร้างรายได้อย่างรวดเร็ว
  • 18 Weight Loss
    ประกอบด้วยการลดน้ำหนัก การอดอาหาร รวมถึงผลิตภัณฑ์และโปรแกรมที่เกี่ยวข้อง ไม่รวมโฆษณาเกี่ยวกับการรับประทานที่มีประโยชน์ หรือสมรรถภาพร่างกายทั่วไป
  • 19 Cosmetic Procedures & Body Modification
    ประกอบด้วย การยกกระชับ การดูด เลเซอร์ การกำจัดและการปลูกผมหรือขน รอยสัก และการปรับแต่งร่างกาย
  • 23 Drugs & Supplements:
    ประกอบด้วยโฆษณาเกี่ยวกับเภสัชกรรม วิตามิน อาหารเสริม และร้านค้าปลีกที่เกี่ยวข้อง ไม่รวมแหล่งข้อมูลที่ให้ข้อมูลเกี่ยวกับยาเสพติด
  • 24 Sexual & Reproductive Health
    ประกอบด้วยโฆษณาเกี่ยวกับสมรรถภาพทางเพศและการมีบุตร ไม่รวมแหล่งข้อมูลเกี่ยวกับการตั้งครรภ์ตามปกติ
  • 35 Social Casino Games
    ประกอบด้วยเกมการพนันจำลอง (รวมถึงแต่ไม่จำกัดเพียงโป๊กเกอร์ สล็อต บิงโก ล็อตเตอรี่ การพนันกีฬา การพนันการแข่งขัน รวมถึงเกมไพ่และเกมคาสิโนอื่นๆ) ซึ่งผู้เล่นไม่มีโอกาสที่จะชนะรางวัลที่มีมูลค่าเลย (เช่น เงินหรือของรางวัล)
  • 36 Significant Skin Exposure
    ภาพโฆษณาที่ส่วนใดก็ตามของร่างกายมนุษย์ตั้งแต่ช่วงกระดูกสันอกไปจนถึงกลางต้นขาไม่ได้สวมใส่เสื้อผ้า หรือปกปิดร่างกายด้วยชุดชั้นใน ชุดว่ายน้ำ ชุดชั้นใน ตลอดจนเสื้อผ้าแบบซีทรูหรือสิ่งของที่ไม่ใช่เสื้อผ้า เช่น ผ้าเช็ดตัวหรือผ้าปูที่นอน
  • 37 Sensationalism
    โฆษณาที่มีจุดมุ่งหมายเพื่อกระตุ้นให้ผู้ใช้คลิกโดยการกระตุ้นความอยากรู้อยากเห็น มักจะใช้ข้อความที่กล่าวอ้างเกินจริงหรือการอุปมาอุปไมย รวมถึงโฆษณาที่เน้นเรื่องที่สร้างความตื่นตกใจ (เช่น การจับกุม การเสียชีวิต หรือการหย่าร้างของผู้ที่มีชื่อเสียง) หรือมีเป้าหมายเพื่อสร้างความตื่นตกใจ

Open Measurement

Open Measurement ช่วยให้คุณระบุผู้ให้บริการบุคคลที่สามที่มอบการวัดผลแบบอิสระและ บริการยืนยันสำหรับโฆษณาที่แสดงในสภาพแวดล้อมของแอปบนอุปกรณ์เคลื่อนที่

ขณะนี้รูปแบบโฆษณาที่รองรับ ได้แก่ โฆษณาวิดีโอ โฆษณาแบนเนอร์ และโฆษณาคั่นระหว่างหน้า หากต้องการดูข้อมูลเพิ่มเติม เกี่ยวกับวิธีใช้ Open Measurement ในการเสนอราคาตอบที่มีรูปแบบเหล่านี้ได้ที่ศูนย์ช่วยเหลือของ Open Measurement SDK

ตัวอย่างการเสนอราคาตอบ

ส่วนต่อไปนี้จะแสดงตัวอย่างการเสนอราคาตอบสำหรับโฆษณาประเภทต่างๆ

แบนเนอร์ของแอป

Google

JSON ของ OpenRTB

โปรโตคอล OpenRTB

โฆษณาคั่นระหว่างหน้าในแอป

Google

JSON ของ OpenRTB

โปรโตคอล OpenRTB

โฆษณาวิดีโอคั่นระหว่างหน้าในแอป

Google

โปรโตคอล OpenRTB

เนทีฟของแอป

Google

JSON ของ OpenRTB

โปรโตคอล OpenRTB

วิดีโอบนเว็บ

Google

แบนเนอร์เว็บบนอุปกรณ์เคลื่อนที่สำหรับผู้เสนอราคา Exchange

โปรโตคอล OpenRTB