Quản lý việc nhắm mục tiêu tài nguyên là tính năng trọng tâm của chiến dịch Hiển thị và API Video 360. Bạn có thể chỉ định tiêu chí nhắm mục tiêu cho nhiều loại tài nguyên và sử dụng nhiều không gian mã nhận dạng và tài nguyên khác. Trang này trình bày chi tiết các hạn chế cần lưu ý và các mẹo hay nhất cần triển khai khi sử dụng chiến dịch Hiển thị Nhắm mục tiêu được chỉ định qua API Video 360 Tùy chọn.
Sử dụng tính kế thừa tiêu chí nhắm mục tiêu
Hoạt động nhắm mục tiêu được chỉ định cho một số tài nguyên có thể được con của tài nguyên đó kế thừa của chúng tôi. Bạn có thể truy xuất các lựa chọn nhắm mục tiêu mà tài nguyên con kế thừa nhưng không chỉnh sửa được ở cấp tài nguyên con. Thao tác này cho phép cài đặt an toàn thương hiệu và khác cần thực thi trên toàn bộ đối tác hoặc nhà quảng cáo.
Bạn có thể thấy lộ trình kế thừa trong sơ đồ dưới đây:
Như được chỉ ra trong biểu đồ, một số cấp nhắm mục tiêu chỉ hỗ trợ một tập hợp con nhắm mục tiêu. Điều này có nghĩa là bạn không thể đặt một số tùy chọn nhắm mục tiêu ở mức cao hơn cấp và được kế thừa, nhưng cần đặt ở cấp thấp hơn.
Tính kế thừa trên YouTube và Tài nguyên dành cho đối tác
Tính kế thừa nhắm mục tiêu không được phản ánh cho YouTube và Tài nguyên dành cho đối tác trong
Hiển thị và API Video 360. Nhắm mục tiêu được kế thừa bởi Nhóm quảng cáo sẽ không
có thể truy xuất ở cấp AdGroup
và nhắm mục tiêu trên YouTube
được gán cho các tài nguyên mẹ sẽ không được các tài nguyên con kế thừa.
Để truy xuất tất cả các cài đặt nhắm mục tiêu theo chức năng cho một nhóm quảng cáo, bạn nên truy xuất tùy chọn nhắm mục tiêu được chỉ định cho Nhóm quảng cáo, mục hàng gốc và nhà quảng cáo mẹ.
Lưu ý đến tiêu chí nhắm mục tiêu được chỉ định khi tạo mục hàng
Ngoài các tùy chọn nhắm mục tiêu kế thừa, bạn chỉ có thể chỉ định hầu hết các tiêu chí nhắm mục tiêu sau khi tạo mục hàng. Tuy nhiên, có một vài loại nhắm mục tiêu một tập hợp con mặc định các giá trị được chỉ định cho các mục hàng khi tạo mục hàng. Những các loại nhắm mục tiêu bao gồm:
Cố gắng tạo các tùy chọn nhắm mục tiêu hiện có hoặc xóa các tùy chọn nhắm mục tiêu không tồn tại
trả về lỗi, vì vậy chúng tôi khuyên bạn nên biết bộ nhắm mục tiêu đầy đủ
được chỉ định cho các mục hàng khi tạo. Nếu bạn cần truy xuất
nhắm mục tiêu được chỉ định cho một mục hàng trên các loại nhắm mục tiêu, hãy sử dụng
advertisers.lineItems.bulkListAssignedTargetingOptions
.
Ngoài ra, một số chế độ cài đặt được đặt theo mặc định khi không có tuỳ chọn nhắm mục tiêu nào
được gán cho tài nguyên. Ví dụ: nếu một tài nguyên không có
TARGETING_TYPE_AUTHORIZED_SELLER_STATUS
tuỳ chọn nhắm mục tiêu đã xác định, có nghĩa là tuỳ chọn này sử dụng tuỳ chọn "Authorized Direct được xác định
Người bán và Người bán lại" trạng thái.
Không muốn sử dụng tính năng "nhắm mục tiêu mặc định" tự động
Trong Mạng Hiển thị và Video 360, tiêu chí nhắm mục tiêu được đặt ở cấp chiến dịch hoặc đơn đặt hàng quảng cáo là không được chuyển ngay đến các mục hàng con. Nhắm mục tiêu này được gọi là "nhắm mục tiêu mặc định" và dùng làm mẫu nhắm mục tiêu được áp dụng cho các mục hàng được tạo sau đó trong giao diện người dùng.
Trong chiến dịch Hiển thị và API Video 360, tiêu chí nhắm mục tiêu mặc định không được tự động áp dụng cho tạo riêng. Thao tác tạo mục hàng cơ bản không sao chép bất kỳ chiến dịch nào hoặc nhắm mục tiêu ở cấp đơn đặt hàng quảng cáo. Trong trường hợp này, nhắm mục tiêu mong muốn phải được áp dụng cho các mục hàng riêng biệt thông qua tùy chọn nhắm mục tiêu được chỉ định tạo hoặc chỉnh sửa hàng loạt.
Các phương thức đặc biệt có thể là một ngoại lệ. Ví dụ: mục hàng được tạo qua
advertisers.lineItems.generateDefault
sao chép
chế độ cài đặt từ đơn đặt hàng quảng cáo gốc, bao gồm cả tiêu chí nhắm mục tiêu được chỉ định.
Tương tự, các mục hàng được tạo thông qua việc trùng lặp sẽ được chỉ định
cùng tiêu chí nhắm mục tiêu với mục hàng ban đầu.
YouTube và Không thể sửa đổi nhắm mục tiêu đối tác
Nhắm mục tiêu cụ thể cho YouTube & Bạn không thể cập nhật chiến dịch của Đối tác bằng màn hình và API Video 360.
YouTube và Nhắm mục tiêu đối tác bao gồm tất cả nhắm mục tiêu được chỉ định trực tiếp cho YouTube và Mục hàng của Đối tác và Nhóm quảng cáo, cũng như bất kỳ tiêu chí nhắm mục tiêu nào thuộc các loại nhắm mục tiêu sau đây:
TARGETING_TYPE_SESSION_POSITION
TARGETING_TYPE_YOUTUBE_CHANNEL
TARGETING_TYPE_YOUTUBE_VIDEO
Bạn có thể cập nhật nhắm mục tiêu này bằng cách sử dụng thuộc tính Hiển thị Giao diện người dùng Video 360 trực tiếp hoặc thông qua tải tệp dữ liệu có cấu trúc lên.
Chỉ định tiêu chí nhắm mục tiêu theo đối tượng bằng một lựa chọn duy nhất
Tùy chọn nhắm mục tiêu cho hầu hết các loại nhắm mục tiêu được chỉ định riêng lẻ. Độc giả
nhắm mục tiêu theo nhóm không tuân theo quy ước mô-đun này, mà thay vào đó được chỉ định
trong một ứng dụng duy nhất, có thể định cấu hình
chi tiết nhắm mục tiêu theo nhóm đối tượng liệt kê
Mã của đối tượng cần bao gồm và loại trừ khi phân phát quảng cáo. Chiến lược phát hành đĩa đơn
assignedTargetingOptionId
cho tùy chọn nhóm đối tượng này,
sau khi được chỉ định, luôn là "audienceGroup".
Thiết kế này có nghĩa là mọi thay đổi đối với tiêu chí nhắm mục tiêu theo nhóm đối tượng đều phải được
trước tiên xoá nhóm đối tượng hiện có đã được chỉ định
tùy chọn nhắm mục tiêu, rồi tạo nhóm đối tượng mới
với các thay đổi mong muốn. Có thể thực hiện việc này trong một yêu cầu duy nhất
đang sử dụng
advertisers.lineItems.bulkEditAssignedTargetingOptions
.
Sau đây là ví dụ về cách cập nhật tiêu chí nhắm mục tiêu theo đối tượng để tích cực nhắm mục tiêu đến các đối tượng khác của Google:
Java
long advertiserId = advertiser-id; long lineItemId = line-item-id List<Long> addedGoogleAudienceIds = Arrays.asList(google-audience-id-to-add,...); // Build Google audience targeting settings objects to add to audience // targeting. ArrayList<GoogleAudienceTargetingSetting> newGoogleAudienceSettings = new ArrayList<GoogleAudienceTargetingSetting>(); // Convert list of Google Audience IDs into list of settings. for (Long googleAudienceId : addedGoogleAudienceIds) { newGoogleAudienceSettings.add(new GoogleAudienceTargetingSetting() .setGoogleAudienceId(googleAudienceId)); } // Create relevant bulk edit request objects. BulkEditLineItemAssignedTargetingOptionsRequest requestContent = new BulkEditLineItemAssignedTargetingOptionsRequest(); AudienceGroupAssignedTargetingOptionDetails updatedAudienceGroupDetails; ArrayList<DeleteAssignedTargetingOptionsRequest> audienceGroupDeleteRequests = new ArrayList<DeleteAssignedTargetingOptionsRequest>(); try { // Retrieve existing audience group targeting. AssignedTargetingOption existingAudienceGroupTargetingOption = service .advertisers() .lineItems() .targetingTypes() .assignedTargetingOptions() .get( advertiserId, lineItemId, "TARGETING_TYPE_AUDIENCE_GROUP", "audienceGroup" ).execute(); // Extract existing audience group targeting details. updatedAudienceGroupDetails = existingAudienceGroupTargetingOption.getAudienceGroupDetails(); // Build and add delete request for existing audience group targeting. ArrayList<String> deleteAudienceGroupAssignedTargetingIds = new ArrayList<String>(); deleteAudienceGroupAssignedTargetingIds.add("audienceGroup"); audienceGroupDeleteRequests .add(new DeleteAssignedTargetingOptionsRequest() .setTargetingType("TARGETING_TYPE_AUDIENCE_GROUP") .setAssignedTargetingOptionIds( deleteAudienceGroupAssignedTargetingIds ) ); } catch (GoogleJsonResponseException e) { updatedAudienceGroupDetails = new AudienceGroupAssignedTargetingOptionDetails(); } // Set delete requests in edit request. requestContent.setDeleteRequests(audienceGroupDeleteRequests); // Construct new group of Google Audiences to include in targeting. GoogleAudienceGroup updatedIncludedGoogleAudienceGroup = updatedAudienceGroupDetails.getIncludedGoogleAudienceGroup(); if (updatedIncludedGoogleAudienceGroup != null) { List<GoogleAudienceTargetingSetting> updatedGoogleAudienceSettings = updatedIncludedGoogleAudienceGroup.getSettings(); updatedGoogleAudienceSettings.addAll(newGoogleAudienceSettings); updatedIncludedGoogleAudienceGroup .setSettings(updatedGoogleAudienceSettings); } else { updatedIncludedGoogleAudienceGroup = new GoogleAudienceGroup(); updatedIncludedGoogleAudienceGroup.setSettings(newGoogleAudienceSettings); } // Add new Google Audience group to audience group targeting details. updatedAudienceGroupDetails .setIncludedGoogleAudienceGroup(updatedIncludedGoogleAudienceGroup); // Create new targeting option to assign. AssignedTargetingOption newAudienceGroupTargeting = new AssignedTargetingOption(); newAudienceGroupTargeting .setAudienceGroupDetails(updatedAudienceGroupDetails); // Build audience group targeting create request and add to list of create // requests. ArrayList<AssignedTargetingOption> createAudienceGroupAssignedTargetingOptions = new ArrayList<AssignedTargetingOption>(); createAudienceGroupAssignedTargetingOptions.add(newAudienceGroupTargeting); ArrayList<CreateAssignedTargetingOptionsRequest> targetingCreateRequests = new ArrayList<CreateAssignedTargetingOptionsRequest>(); targetingCreateRequests.add(new CreateAssignedTargetingOptionsRequest() .setTargetingType("TARGETING_TYPE_AUDIENCE_GROUP") .setAssignedTargetingOptions( createAudienceGroupAssignedTargetingOptions ) ); // Set create requests in edit request. requestContent.setCreateRequests(targetingCreateRequests); // Configure and execute the bulk list request. BulkEditLineItemAssignedTargetingOptionsResponse response = service.advertisers().lineItems() .bulkEditLineItemAssignedTargetingOptions( advertiserId, lineItemId, requestContent).execute();
Python
advertiser_id = advertiser-id line_item_id = line-item-id added_google_audiences = [google-audience-id-to-add,...] # Build Google audience targeting settings objects to create. new_google_audience_targeting_settings = [] for google_audience_id in added_google_audiences: new_google_audience_targeting_settings.append( {'googleAudienceId': google_audience_id} ) # Retrieve any existing line item audience targeting. retrieved_audience_targeting = service.advertisers().lineItems( ).targetingTypes().assignedTargetingOptions().get( advertiserId=advertiser_id, lineItemId=line_item_id, targetingType="TARGETING_TYPE_AUDIENCE_GROUP", assignedTargetingOptionId="audienceGroup" ).execute() updated_audience_group_details = {} # Copy over any existing audience targeting. if 'audienceGroupDetails' in retrieved_audience_targeting: updated_audience_group_details = retrieved_audience_targeting[ 'audienceGroupDetails'] # Append the new Google audience IDs to any existing positive Google # audience targeting. if 'includedGoogleAudienceGroup' in updated_audience_group_details: updated_audience_group_details[ 'includedGoogleAudienceGroup']['settings'].extend( new_google_audience_targeting_settings) else: updated_audience_group_details['includedGoogleAudienceGroup'] = { 'settings': new_google_audience_targeting_settings } # Build bulk edit request. bulk_edit_request = { 'deleteRequests': [ { 'targetingType': "TARGETING_TYPE_AUDIENCE_GROUP", 'assignedTargetingOptionIds': [ "audienceGroup" ] } ], 'createRequests': [ { 'targetingType': "TARGETING_TYPE_AUDIENCE_GROUP", 'assignedTargetingOptions': [ {'audienceGroupDetails': updated_audience_group_details} ] } ] } # Update the audience targeting updated_audience_targeting = service.advertisers().lineItems( ).bulkEditLineItemAssignedTargetingOptions( advertiserId=advertiser_id, lineItemId=line_item_id, body=bulk_edit_request ).execute()
PHP
$advertiserId = advertiser-id; $lineItemId = line-item-id; $addedGoogleAudienceIds = array(google-audience-id-to-add,...); // Convert list of Google Audience IDs into list of Google audience // settings. $newGoogleAudienceSettings = array(); foreach ($addedGoogleAudienceIds as $googleAudienceId) { $newSetting = new Google_Service_DisplayVideo_GoogleAudienceTargetingSetting(); $newSetting->setGoogleAudienceId($googleAudienceId); $newGoogleAudienceSettings[] = $newSetting; } // Create a bulk edit request. $requestBody = new Google_Service_DisplayVideo_BulkEditLineItemAssignedTargetingOptionsRequest(); $audienceGroupDeleteRequests = array(); try { // Retrieve existing audience group targeting. $existingAudienceGroupTargetingOption = $this ->service ->advertisers_lineItems_targetingTypes_assignedTargetingOptions ->get( $advertiserId, $lineItemId, 'TARGETING_TYPE_AUDIENCE_GROUP', 'audienceGroup' ); // Extract existing audience group targeting details. $updatedAudienceGroupDetails = $existingAudienceGroupTargetingOption ->getAudienceGroupDetails(); // Build and add delete request for existing audience group // targeting. $deleteAudienceGroupAssignedTargetingIds = array(); $deleteAudienceGroupAssignedTargetingIds[] = "audienceGroup"; $audienceGroupDeleteRequest = new Google_Service_DisplayVideo_DeleteAssignedTargetingOptionsRequest(); $audienceGroupDeleteRequest ->setTargetingType('TARGETING_TYPE_AUDIENCE_GROUP'); $audienceGroupDeleteRequest ->setAssignedTargetingOptionIds( $deleteAudienceGroupAssignedTargetingIds ); $audienceGroupDeleteRequests[] = $audienceGroupDeleteRequest; } catch (\Exception $e) { $updatedAudienceGroupDetails = new Google_Service_DisplayVideo_AudienceGroupAssignedTargetingOptionDetails(); } // Set delete requests in edit request. $requestBody->setDeleteRequests($audienceGroupDeleteRequests); // Construct new group of Google audiences to include in targeting. $updatedIncludedGoogleAudienceGroup = $updatedAudienceGroupDetails ->getIncludedGoogleAudienceGroup(); if (!empty($updatedIncludedGoogleAudienceGroup)) { // Get existing settings. $updatedGoogleAudienceSettings = $updatedIncludedGoogleAudienceGroup->getSettings(); // Add new Google audiences to existing list. $updatedGoogleAudienceSettings = array_merge( $updatedGoogleAudienceSettings, $newGoogleAudienceSettings ); // Set updated Google audience list. $updatedIncludedGoogleAudienceGroup ->setSettings($updatedGoogleAudienceSettings); } else { // Create new Google audience group. $updatedIncludedGoogleAudienceGroup = new Google_Service_DisplayVideo_GoogleAudienceGroup(); // Set list of new Google audiences for targeting. $updatedIncludedGoogleAudienceGroup ->setSettings($newGoogleAudienceSettings); } // Add new Google Audience group to audience group targeting details. $updatedAudienceGroupDetails ->setIncludedGoogleAudienceGroup( $updatedIncludedGoogleAudienceGroup ); // Create new targeting option to assign. $newAudienceGroupTargeting = new Google_Service_DisplayVideo_AssignedTargetingOption(); $newAudienceGroupTargeting ->setAudienceGroupDetails($updatedAudienceGroupDetails); // Build audience group targeting create request and add to list of // create requests. $createAudienceGroupAssignedTargetingOptions = array(); $createAudienceGroupAssignedTargetingOptions[] = $newAudienceGroupTargeting; $createAudienceGroupTargetingRequest = new Google_Service_DisplayVideo_CreateAssignedTargetingOptionsRequest(); $createAudienceGroupTargetingRequest->setTargetingType( "TARGETING_TYPE_AUDIENCE_GROUP" ); $createAudienceGroupTargetingRequest->setAssignedTargetingOptions( $createAudienceGroupAssignedTargetingOptions ); $createRequests[] = $createAudienceGroupTargetingRequest; // Set create requests in edit request. $requestBody->setCreateRequests($createRequests); // Call the API, editing the assigned targeting options for the // identified line item. $response = $this ->service ->advertisers_lineItems ->bulkEditLineItemAssignedTargetingOptions( $advertiserId, $lineItemId, $requestBody );
Chuẩn bị cho các lựa chọn nhắm mục tiêu sẽ không được dùng nữa
Các tùy chọn nhắm mục tiêu không phải là tĩnh và một số ít có thể không được dùng nữa từng thời điểm. Khi không dùng nữa, các lựa chọn nhắm mục tiêu sẽ không ảnh hưởng đến quảng cáo của mục hàng đầu cuối. Sau khi không được dùng nữa, các tuỳ chọn này sẽ được bỏ chỉ định khỏi dòng hiện có mục và yêu cầu cố truy xuất hoặc gán các tuỳ chọn này sẽ dẫn đến kết quả có lỗi.
Để tránh những lỗi này, bạn nên thường xuyên kiểm tra thông tin
mã tuỳ chọn nhắm mục tiêu. Để tiết kiệm hạn mức, bạn nên lưu vào bộ nhớ đệm
mã nhận dạng được sử dụng thường xuyên. Tuy nhiên, nếu lưu trữ mã nhận dạng, bạn có thể không
nhận thấy tuỳ chọn nhắm mục tiêu đã bị loại bỏ. Vì lý do này, bạn nên
thường xuyên sử dụng targetingOptions.targetingTypes.get
để
truy xuất tất cả ID tùy chọn nhắm mục tiêu đã lưu để xác nhận rằng chúng vẫn đang
được hỗ trợ bởi Display & Video 360.
Vui lòng xem trang Thông báo ngừng hoạt động để biết thông tin chi tiết về các tính năng quan trọng việc ngừng sử dụng trước đây và sắp tới.
Không thực hiện các yêu cầu đồng thời để cập nhật cùng một mục hàng
Cố gắng cập nhật các chế độ cài đặt hoặc tiêu chí nhắm mục tiêu được chỉ định cho một mục hàng việc sử dụng nhiều yêu cầu đồng thời sẽ trả về lỗi. Số yêu cầu có thể áp dụng bao gồm:
advertisers.lineItems.bulkEditAssignedTargetingOptions
advertisers.lineItems.bulkUpdate
advertisers.lineItems.patch
advertisers.lineItems.targetingTypes.assignedTargetingOptions.create
advertisers.lineItems.targetingTypes.assignedTargetingOptions.delete
Nếu bạn cần thêm hoặc xóa nhiều tùy chọn nhắm mục tiêu được chỉ định cho một
Bạn nên sử dụng một chỉ số
advertisers.lineItems.bulkEditAssignedTargetingOptions
của bạn. Nếu bạn muốn cập nhật chế độ cài đặt và tiêu chí nhắm mục tiêu của mục hàng, hãy thêm vào hàng đợi
yêu cầu patch
hoặc bulkUpdate
và báo cáo liên quan
yêu cầu nhắm mục tiêu để đảm bảo yêu cầu thứ hai không được gửi cho đến yêu cầu đầu tiên
sẽ trả về một phản hồi.