Là người mua quảng cáo (DSP và nhà quảng cáo), bạn có thể quan tâm đến việc tham gia phiên đấu giá quảng cáo Protected Audience trên trang web của nhà xuất bản để nhắm mục tiêu quảng cáo đến nhóm mối quan tâm mà bạn đã xác định trên trang web của nhà quảng cáo. Khi tham gia phiên đấu giá trong Protected Audience, bạn có thể tiếp cận khách hàng mà bạn đã xác định trên những trang web khác theo cách bảo đảm quyền riêng tư.
Trong phiên đấu giá trong Protected Audience, bạn cung cấp logic để tạo giá thầu và trình duyệt sẽ tính toán giá thầu bằng logic đó. Điều này trái ngược với các cấu trúc đấu giá khác, trong đó bạn trực tiếp gửi giá thầu thay vì cung cấp logic.
Bạn cung cấp logic tạo giá thầu trong hàm JavaScript generateBid()
và tệp này được lưu trữ trên máy chủ của bạn. Khi bạn thêm người dùng vào một nhóm mối quan tâm, vị trí của tệp này sẽ được chuyển vào cấu hình của nhóm mối quan tâm dưới dạng biddingLogicUrl
.
Trong phiên đấu giá, trình duyệt sẽ tìm nạp logic đặt giá thầu được chỉ định trong trường biddingLogicUrl
và thực thi hàm generateBid()
cho từng nhóm mối quan tâm trong một môi trường riêng biệt bảo mật bị hạn chế về khả năng giao tiếp với ngữ cảnh bên ngoài. Khi generateBid()
được thực thi, trình duyệt sẽ truyền các tín hiệu vào hàm dưới dạng đối số. Các tín hiệu này chứa nhiều thông tin từ nhiều nguồn, chẳng hạn như dữ liệu bên thứ nhất của nhà xuất bản, dữ liệu của người bán, dữ liệu theo thời gian thực, v.v. Bạn có thể sử dụng các tín hiệu này để tính toán giá thầu và giá trị được trả về từ lệnh gọi generateBid()
. Sau khi giá thầu được gửi, trình duyệt sẽ thực thi logic tính điểm của người bán trên từng giá thầu để tính điểm mong muốn của người bán.
generateBid()
Phần sau đây mô tả các đối số của hàm generateBid()
và cấu trúc của giá thầu mà hàm trả về:
generateBid(interestGroup, auctionSignals, perBuyerSignals,
trustedBiddingSignals, browserSignals, directFromSellerSignals) {
return {
ad: adObject,
adCost: optionalAdCost,
bid: bidValue,
bidCurrency: 'USD',
render: {
url: renderURL,
width: renderWidth,
height: renderHeight
},
adComponents: [
{url: adComponent1, width: componentWidth1, height: componentHeight1},
{url: adComponent2, width: componentWidth2, height: componentHeight2},
// ...
],
allowComponentAuction: false,
modelingSignals: 123 // 0-4095 integer (12-bits)
};
}
Đối số
generateBid()
nhận các đối số sau:
Đối số | Role |
---|---|
|
Đối tượng được người mua quảng cáo chuyển đến. Bạn có thể cập nhật nhóm mối quan tâm bằng dailyUpdateUrl . |
|
Thuộc tính của đối số cấu hình phiên đấu giá được người bán chuyển đến navigator.runAdAuction() . Thẻ này cung cấp thông tin về ngữ cảnh của trang (chẳng hạn như kích thước quảng cáo và mã nhà xuất bản), loại phiên đấu giá (giá đầu tiên hoặc giá thứ hai) và siêu dữ liệu khác. |
|
Thuộc tính của đối số cấu hình phiên đấu giá do người bán chuyển. Điều này có thể cung cấp tín hiệu bối cảnh từ máy chủ của người mua về trang, nếu người bán là SSP thực hiện lệnh gọi đặt giá thầu theo thời gian thực đến máy chủ của người mua và gửi lại phản hồi, hoặc nếu trang nhà xuất bản liên hệ trực tiếp với máy chủ của người mua. Nếu có, người mua nên kiểm tra chữ ký mã hoá của các tín hiệu đó bên trong generateBid() để ngăn chặn hành vi can thiệp. |
|
Một đối tượng có khoá là trustedBiddingSignalsKeys cho nhóm mối quan tâm và có các giá trị được trả về trong yêu cầu trustedBiddingSignals . |
|
Một đối tượng do trình duyệt tạo, có thể bao gồm thông tin về ngữ cảnh trang (chẳng hạn như hostname của trang hiện tại mà người bán có thể làm giả nếu không) và dữ liệu cho chính nhóm mối quan tâm (chẳng hạn như bản ghi về thời điểm nhóm đó đã thắng một phiên đấu giá trước đó, để cho phép giới hạn tần suất trên thiết bị). |
|
Các tín hiệu được đảm bảo đến từ một người bán cụ thể, không giống như auctionSignals và sellerSignals có thể đến từ bất kỳ người tham gia nào có mặt trong bối cảnh runAdAuction được thực thi. |
Tín hiệu của trình duyệt
Đối tượng browserSignals
có các thuộc tính sau:
{
topWindowHostname: 'publisher.example',
seller: 'https://ssp.example',
topLevelSeller: 'https://www.top-level-ssp.com',
requestedSize: {width: 100, height: 200}, /* if specified in auction config */
joinCount: 3,
recency: 3600000,
bidCount: 17,
prevWinsMs: [[timeDeltaMs1,ad1],[timeDeltaMs2,ad2],...],
wasmHelper: ...
dataVersion: 1,
adComponentsLimit: 40
}
Tài sản | Nội dung mô tả |
---|---|
|
Tên máy chủ nơi thực hiện lệnh gọi runAdAuction() . |
|
Người bán nhận giá thầu. Trong một phiên đấu giá thành phần, giá trị này là người bán thành phần. |
|
Người bán cấp cao nhất trong phiên đấu giá thành phần và chỉ xuất hiện trong phiên đấu giá thành phần. |
|
Thuộc tính requestedSize đề xuất kích thước khung hình cho phiên đấu giá. Người bán đặt kích thước được yêu cầu trong cấu hình phiên đấu giá và bên đặt giá thầu có thể sử dụng giá trị này trong generateBid() . Bên đặt giá thầu bên trong phiên đấu giá có thể chọn kích thước nội dung khác cho quảng cáo và kích thước thu được sẽ được điều chỉnh tỷ lệ trực quan cho vừa với kích thước vùng chứa của phần tử. |
|
Trường joinCount là số lần thiết bị này tham gia nhóm mối quan tâm này trong 30 ngày qua trong khi nhóm mối quan tâm được lưu trữ liên tục (nghĩa là không có khoảng trống nào trong bộ nhớ của nhóm mối quan tâm trên thiết bị do người dùng rời khỏi nhóm mối quan tâm hoặc hết hạn thành viên). |
|
Trường recency là khoảng thời gian (tính bằng phút) kể từ khi thiết bị này tham gia nhóm mối quan tâm này cho đến bây giờ |
|
Số lần nhóm mối quan tâm đó đã gửi giá thầu. |
|
Trường prevWinMs chứa quảng cáo giành chiến thắng của nhóm mối quan tâm và thời gian kể từ lần thắng trước đó của nhóm đó (tính bằng mili giây). Lưu ý rằng đối tượng quảng cáo ở đây chỉ chứa các trường renderURL và siêu dữ liệu. |
|
một đối tượng WebAssembly.Module dựa trên biddingWasmHelperURL của nhóm mối quan tâm. |
|
Giá trị phiên bản dữ liệu từ(các) phản hồi dịch vụ Khoá/giá trị của người mua. |
|
Số thành phần quảng cáo tối đa generateBid() có thể trả về |
Tính giá thầu
Để tính giá trị giá thầu, mã trong generateBid()
có thể sử dụng các thuộc tính của thông số của hàm.
Ví dụ:
function generateBid(interestGroup, auctionSignals, perBuyerSignals,
trustedBiddingSignals, browserSignals) {
return {
// ...
bid: auctionSignals.is_above_the_fold ? perBuyerSignals.atf_value : perBuyerSignals.btf_value,
// ...
}
}
Trả lại giá thầu
generateBid()
trả về một đối tượng có các thuộc tính sau:
Tài sản | Role |
---|---|
ad |
Siêu dữ liệu tuỳ ý về quảng cáo, chẳng hạn như thông tin mà người bán muốn tìm hiểu về giá thầu hoặc mẫu quảng cáo này. Người bán sử dụng thông tin này trong logic phiên đấu giá và logic quyết định. |
adCost |
Một giá trị bằng số dùng để chuyển số lượt nhấp hoặc chi phí chuyển đổi báo cáo của nhà quảng cáo từ generateBid sang reportWin. Độ chính xác của số này được giới hạn ở mantissa 8 bit và số mũ 8 bit, với bất kỳ việc làm tròn nào được thực hiện một cách ngẫu nhiên. |
adComponents |
Một danh sách không bắt buộc gồm tối đa 20 thành phần cho quảng cáo bao gồm nhiều thành phần, được lấy từ thuộc tính adComponents của đối số nhóm mối quan tâm được truyền vào navigator.joinAdInterestGroup() . |
allowComponentAuction |
Giá trị boolean cho biết liệu giá thầu này có thể dùng trong phiên đấu giá thành phần hay không. Giá trị mặc định là "false" nếu không được chỉ định. |
bid |
Giá thầu bằng số sẽ tham gia phiên đấu giá. Người bán phải ở trong vị thế để so sánh giá thầu từ những người mua khác nhau, do đó giá thầu phải theo một đơn vị nào đó do người bán chọn (chẳng hạn như"USD trên mỗi nghìn"). Nếu giá thầu bằng 0 hoặc âm, thì nhóm mối quan tâm này sẽ hoàn toàn không tham gia vào phiên đấu giá của người bán. Với cơ chế này, người mua có thể triển khai bất kỳ quy tắc nào dành cho nhà quảng cáo đối với vị trí mà quảng cáo của họ có thể xuất hiện hoặc không xuất hiện. |
bidCurrency |
Đơn vị tiền tệ của giá thầu, dùng để kiểm tra đơn vị tiền tệ. |
render |
Từ điển mô tả mẫu quảng cáo sẽ được hiển thị nếu giá thầu này thắng phiên đấu giá. Trong đó có:
|
|
Số nguyên 0-4095 (12 bit) được truyền đến reportWin() , có hiện tượng nhiễu, như mô tả trong sơ đồ nhiễu và phân giỏ. Các giá trị không hợp lệ, chẳng hạn như các giá trị âm, vô hạn và NaN , sẽ bị bỏ qua và không được chuyển. Chỉ 12 bit thấp nhất sẽ được truyền. Người mua có thể sử dụng các tín hiệu có sẵn trong hàm generateBid() , bao gồm cả dữ liệu của người mua bên thứ nhất, được thu thập tại thời điểm tạo Nhóm mối quan tâm trong userBiddingSignals , để lấy một số giá trị được chuyển đến chức năng báo cáo giành chiến thắng của người mua nhằm hỗ trợ việc huấn luyện mô hình học máy. |