รายการโฆษณาทั้งหมดที่สร้างขึ้นโดยใช้ Display & Video 360 API จะสร้างขึ้นในสถานะฉบับร่าง ในสถานะฉบับร่างนี้ รายการโฆษณาจะไม่แสดงโฆษณา คุณจึงปรับการตั้งค่าและการกำหนดเป้าหมายได้อย่างอิสระโดยที่การเปลี่ยนแปลงเหล่านั้นจะไม่กระทบต่อการแสดงโฆษณาในปัจจุบัน หน้านี้จะอธิบายขั้นตอนที่คุณควรทำเพื่อยืนยันว่ารายการโฆษณาพร้อมแสดงโฆษณาแล้ว และวิธีอัปเดตสถานะของรายการโฆษณา
สิ่งที่ต้องทำก่อนการเปิดใช้งาน
เนื่องจากรายการโฆษณาเป็นลักษณะการใช้รายได้จากโฆษณาผ่านการซื้อและการแสดงโฆษณา คุณจึงต้องตรวจสอบว่ารายการโฆษณาจะแสดงโฆษณาตามที่ตั้งใจไว้เมื่อเปิดใช้งาน สิ่งที่ต้องพิจารณาก่อนเปิดใช้งานรายการโฆษณามีดังนี้
- ตรวจสอบว่าการตั้งค่าเที่ยวบินถูกต้อง: ตรวจสอบช่อง
flight
ของรายการโฆษณาเพื่อให้แน่ใจว่ากำหนดกรอบเวลาการแสดงโฆษณาของรายการโฆษณาไว้ถูกต้องแล้ว กรอบเวลาการแสดงโฆษณาของรายการโฆษณาอาจกำหนดขึ้นเองสำหรับรายการโฆษณา หรือได้รับช่วงมาจากใบสั่งซื้อการใส่โฆษณาระดับบนสุด - ยืนยันว่าไม่มีคำเตือนที่บล็อกการแสดงรายการโฆษณา:
ใช้
advertisers.lineItems.get
เพื่อเรียกข้อมูลทรัพยากรของรายการโฆษณา และตรวจสอบช่องwarningMessages
เพื่อยืนยันว่ารายการโฆษณาไม่มีคำเตือนที่อาจขัดขวางการแสดงรายการโฆษณา enum ของLineItemWarningMessage
จะระบุผลกระทบของคำเตือนแต่ละรายการ - ยืนยันว่าทรัพยากรระดับบนสุดทั้งหมดทำงานอยู่ด้วย: รายการโฆษณาที่ใช้งานอยู่จะไม่เริ่มแสดงโฆษณาหากผู้ลงโฆษณาหลัก แคมเปญ หรือใบสั่งซื้อการใส่โฆษณาไม่ทำงาน เรียกดูแหล่งข้อมูลเหล่านี้โดยใช้เมธอด
GET
ในบริการผู้ลงโฆษณา แคมเปญ และใบสั่งซื้อการใส่โฆษณา
เปิดใช้งานรายการโฆษณา
เปิดใช้งานรายการโฆษณาโดยอัปเดตช่อง entityStatus
เป็น ENTITY_STATUS_ACTIVE
คุณอัปเดตช่องนี้สำหรับรายการโฆษณาแต่ละรายการได้โดยใช้เมธอด advertisers.lineItems.patch
และสำหรับหลายรายการโฆษณาภายในผู้ลงโฆษณานั้นๆ โดยใช้ advertisers.lineItems.bulkUpdate
ต่อไปนี้คือตัวอย่างวิธีใช้ bulkUpdate
เพื่อเปิดใช้งานรายการโฆษณาหลายรายการ
Java
// Create the line item structure. LineItem targetLineItem = new LineItem(); targetLineItem.setEntityStatus("ENTITY_STATUS_ACTIVE"); // Create the bulk update request body. BulkUpdateLineItemsRequest requestBody = new BulkUpdateLineItemsRequest(); requestBody.setLineItemIds(line-item-ids); requestBody.setTargetLineItem(targetLineItem); requestBody.setUpdateMask("entityStatus"); // Configure the bulk update request. LineItems.BulkUpdate request = service.advertisers().lineItems() .bulkUpdate(advertiser-id, requestBody); // Update the line items. BulkUpdateLineItemsResponse response = request.execute(); // Display the line items that were updated, failed, and skipped. if (response.getUpdatedLineItemIds() != null) { System.out.printf( "The following line item IDs were successfully updated: %s.\n", Arrays.toString(response.getUpdatedLineItemIds().toArray())); } if (response.getFailedLineItemIds() != null) { System.out.printf("The following line item IDs failed to update: %s.\n", Arrays.toString(response.getFailedLineItemIds().toArray())); if (response.getErrors() != null) { System.out.printf( "The failed updates were caused by the following errors: %s.\n", Arrays.toString(response.getErrors().toArray())); } } if (response.getSkippedLineItemIds() != null) { System.out.printf( "The following line items IDs were skipped in the update: %s.\n", Arrays.toString(response.getSkippedLineItemIds().toArray())); }
Python
# Create a line item object with only updated entity status. line_item_obj = { 'entityStatus': 'ENTITY_STATUS_ACTIVE' } # Build the bulk update request. bulk_update_request = { 'lineItemIds': line-item-ids, 'targetLineItem': line_item_obj, 'updateMask': "entityStatus" } # Update the line items. response = service.advertisers().lineItems().bulkUpdate( advertiserId=advertiser-id, body=bulk_update_request ).execute() # Display the line items that were updated, failed, and skipped. if 'updatedLineItemIds' in response: print("The following line item IDs were updated: %s" % response['updatedLineItemIds']) if 'failedLineItemIds' in response: print("The following line item IDs failed to update: %s" % response['failedLineItemIds']) if 'errors' in response: print("The failed updates were caused by the following errors:") for error in response["errors"]: print("Error code: %s, Message: %s" % (error["code"], error["message"])) if 'skippedLineItemIds' in response: print("The following line items IDs were skipped in the update:: %s" % response['skippedLineItemIds'])
PHP
// Create request body. $body = new Google_Service_DisplayVideo_BulkUpdateLineItemsRequest(); $body->setLineItemIds(line-item-ids); // Create target line item with updated fields. $lineItem = new Google_Service_DisplayVideo_LineItem(); $lineItem->setEntityStatus('ENTITY_STATUS_ACTIVE'); $body->setTargetLineItem($lineItem); // Set update mask in request body. $body->setUpdateMask("entityStatus"); // Call the API, updating the entity status for the identified line item. $response = $service->advertisers_lineItems->bulkUpdate( advertiser-id, $body ); // Display the line items that were updated, failed, and skipped. if (!empty($response->getUpdatedLineItemIds())) { printf('The following line item IDs were updated:\n'); foreach ($response->getUpdatedLineItemIds() as $id) { printf('%s\n', $id); } } if (!empty($response->getFailedLineItemIds())) { print('The following line item IDs failed to update:\n'); foreach ($response->getFailedLineItemIds() as $id) { printf('%s\n', $id); } if (!empty($response->getErrors())) { print('The failed updates were caused by the following errors:\n'); foreach ($response->getErrors() as $error) { printf( 'Error Code: %s, Message: %s\n', $error->getCode(), $error->getMessage() ); } } } if (!empty($response->getSkippedLineItemIds())) { print('The following line item IDs were skipped in the update:\n'); foreach ($response->getSkippedLineItemIds() as $id) { printf('%s\n', $id); } }