Đo lường dữ liệu và kết quả của phiên đấu giá Protected Audience API
Trong bài viết này, bạn sẽ thấy thông tin tổng quan cấp cao về nhiều cơ chế mà bạn có thể dùng để báo cáo dữ liệu phiên đấu giá Protected Audience API cho máy chủ của mình, cùng với các cơ chế chuyển đổi hiện có để bạn sử dụng trong quá trình di chuyển cho đến khi các giải pháp thay thế sẵn sàng.
Để báo cáo về các chỉ số quan trọng mà bạn thu thập được từ một phiên đấu giá quảng cáo, Protected Audience API hoạt động với:
- Private Aggregation thu thập các tín hiệu và kết quả đấu giá để tạo báo cáo tóm tắt.
- Ads Reporting API cho Khung được bảo vệ và iframe là một kênh trong các khung để giao tiếp với các worklet Protected Audience API. API này cho phép liên kết dữ liệu ở cấp sự kiện với các tín hiệu đấu giá. Báo cáo ở cấp sự kiện của Ads Reporting API là một cơ chế chuyển đổi cho đến khi một cơ chế báo cáo riêng tư hơn được thiết kế.
- Báo cáo phân bổ cho phép bạn liên kết dữ liệu lượt chuyển đổi với các tín hiệu trong phiên đấu giá.
- Shared Storage cho phép bạn ghi các tín hiệu đấu giá vào một bộ nhớ trên nhiều nguồn gốc, sau đó cho phép bạn báo cáo dữ liệu đó sau này bằng Private Aggregation.
Tổng quan về báo cáo Protected Audience API
Có 3 khoảng thời gian chính mà dữ liệu từ quy trình đấu giá Protected Audience API có thể được báo cáo cho máy chủ của bạn: thời gian đấu giá khi phiên đấu giá được thực thi từ trang web của nhà xuất bản, thời gian hiển thị khi quảng cáo được hiển thị trong một khung được phân vùng hoặc một iframe trên trang web của nhà xuất bản và thời gian chuyển đổi khi người dùng thực hiện một hành động nào đó trên một trang web khác có thể được phân bổ cho phiên đấu giá.
Trong thời gian đấu giá, bạn có thể báo cáo dữ liệu đấu giá bằng cách sử dụng các worklet báo cáo. Trong thời gian hiển thị, bạn có thể báo cáo dữ liệu tương tác từ một iframe hoặc khung được giới hạn. Trong thời gian chuyển đổi, bạn có thể báo cáo dữ liệu phân bổ từ trang đích bằng Attribution Reporting API.
Vị trí báo cáo
Trong một phiên đấu giá, người mua có thể báo cáo các tín hiệu có trong các worklet generateBid() và reportWin(), còn người bán có thể báo cáo các tín hiệu có trong scoreAd() và reportResult(). Bên ngoài phiên đấu giá, người mua và người bán có thể báo cáo dữ liệu từ một khung hiển thị quảng cáo và từ trang web nơi lượt chuyển đổi được thực hiện.
| Khoảng thời gian | Đích đến | Thông tin vị trí | Dữ liệu được cung cấp | API Báo cáo hiện có |
| Đấu giá | Bên mua | generateBid() |
Tín hiệu, kết quả đấu giá và hiệu suất đấu giá | Private Aggregation API |
reportWin() |
Private Aggregation API Ads Reporting API |
|||
| Người bán | scoreAd() |
Private Aggregation API | ||
reportResult() |
Private Aggregation API Ads Reporting API |
|||
| Kết xuất | Người mua / Người bán | Khung trên trang web của nhà xuất bản | Dữ liệu ở cấp sự kiện trong khung quảng cáo | Private Aggregation API Ads Reporting API |
| Chuyển đổi | Người mua / Người bán | Trang web chuyển đổi | Dữ liệu lượt chuyển đổi và dữ liệu ở cấp sự kiện từ trang web chuyển đổi | Attribution Reporting API Private Aggregation API Ads Reporting API |
Trong mỗi khoảng thời gian được liệt kê, người mua và người bán sẽ có quyền truy cập vào nhiều API báo cáo có sẵn để báo cáo dữ liệu, chẳng hạn như tín hiệu đấu giá, dữ liệu cấp sự kiện và dữ liệu lượt chuyển đổi.
Dữ liệu có trong phiên đấu giá Protected Audience API
Bạn có thể báo cáo những dữ liệu sau đây từ một worklet Protected Audience API trong phiên đấu giá.
Tín hiệu
Tín hiệu là dữ liệu theo bối cảnh của phiên đấu giá, dữ liệu người dùng, dữ liệu theo thời gian thực và dữ liệu trình duyệt mà người mua và người bán có thể sử dụng trong một worklet để tạo giá thầu, tính điểm quảng cáo và báo cáo kết quả của phiên đấu giá.
| Signal | Nội dung mô tả | Đặt vị trí | Số người dùng | Phạm vi cung cấp |
| auctionSignals | Dữ liệu có sẵn trong bối cảnh diễn ra phiên đấu giá. Dữ liệu này có thể bao gồm thông tin về nội dung trang, dữ liệu người dùng của bên thứ nhất, v.v. | Do người bán đặt từ trang web của nhà xuất bản trong cấu hình phiên đấu giá. | Người mua Người bán |
generateBid scoreAd reportWin reportResult |
| directFromSellerSignals | Dữ liệu tương tự cho auctionSignals, perBuyerSignals, sellerSignals nhưng các tín hiệu được đảm bảo đến từ người bán được chỉ định. |
Đặt thông qua tiêu đề phản hồi HTTP của người bán | Người mua Người bán |
generateBid scoreAd reportWin reportResult |
| browserSignals | Nhiều dữ liệu do trình duyệt cung cấp (topWindowHostname, interestGroupOwner, renderUrl, adComponents, biddingDurationMsec, IGJoinCount, IGRecency, modelingSignals). |
Do trình duyệt đặt. | Người mua Người bán |
generateBid scoreAd reportWin reportResult |
| sellerSignals | Các tín hiệu được cung cấp cho người bán để tính điểm quảng cáo. | Do người bán đặt từ trang web của nhà xuất bản trong cấu hình phiên đấu giá. | Người bán | scoreAd reportWin reportResult |
| trustedScoringSignals | Tín hiệu theo thời gian thực được cung cấp cho người bán để chấm điểm quảng cáo. | URL này do người bán đặt từ trang web của nhà xuất bản trong cấu hình phiên đấu giá. | Người bán | scoreAd reportResult |
| perBuyerSignals | Dữ liệu theo bối cảnh của phiên đấu giá được cung cấp cho một số người mua cụ thể. Người bán có thể truy xuất các giá trị cho người mua trước khi phiên đấu giá bắt đầu. Đây là kiến thức của người mua về cơ hội quảng cáo. | Do người bán đặt từ trang web của nhà xuất bản trong cấu hình phiên đấu giá. | Bên mua | generateBid scoreAd reportWin reportResult |
| trustedBiddingSignals | Tín hiệu theo thời gian thực được cung cấp cho người mua để đặt giá thầu quảng cáo. | URL do người mua đặt từ trang web của nhà quảng cáo khi nhóm mối quan tâm được đặt. | Bên mua | generateBid |
| userBiddingSignals | Dữ liệu người dùng do người mua cung cấp. | Do người mua đặt từ trang web của nhà quảng cáo khi nhóm lợi ích được đặt . | Bên mua | generateBid |
Đối tượng cấu hình phiên đấu giá là nguồn dữ liệu chính được cung cấp để có sẵn dưới dạng tín hiệu trong các worklet. Nhà xuất bản và người bán có thể cung cấp dữ liệu theo bối cảnh và dữ liệu của bên thứ nhất trong cấu hình phiên đấu giá. Các tín hiệu này có thể được làm phong phú bằng dữ liệu nhóm lợi ích từ người mua, dữ liệu cấp sự kiện từ khung hiển thị quảng cáo và dữ liệu phân bổ từ trang nhấp qua. Bạn có thể dùng dữ liệu được báo cáo cho báo cáo của người mua/người bán, thanh toán, lập ngân sách, huấn luyện mô hình học máy và nhiều mục đích khác.
Dữ liệu khác có sẵn
- Dữ liệu kết quả liên quan đến dữ liệu thắng và thua trong phiên đấu giá, chẳng hạn như giá thầu thắng và lý do từ chối giá thầu.
- Dữ liệu hiệu suất chứa thông tin về độ trễ, chẳng hạn như thời gian cần thiết để tìm nạp và thực thi worklet đặt giá thầu.
Dữ liệu có sẵn bên ngoài phiên đấu giá Protected Audience API
Ngoài phiên đấu giá Protected Audience API, có 2 khoảng thời gian mà dữ liệu có thể được báo cáo.
Trong thời gian hiển thị, khi quảng cáo được hiển thị trên trang web của nhà xuất bản, dữ liệu ở cấp sự kiện từ bên trong iframe hoặc khung được giới hạn có thể được liên kết với dữ liệu đấu giá Protected Audience API và được báo cáo cho máy chủ của bạn. Ví dụ về dữ liệu ở cấp sự kiện bao gồm lượt hiển thị quảng cáo, lượt nhấp, lượt di chuột và mọi sự kiện khác xảy ra bên trong khung.
Trong thời gian chuyển đổi, khi người dùng thực hiện một hành động nào đó trên trang nhấp qua được phân bổ lại cho phiên đấu giá, dữ liệu ở cấp sự kiện từ trang chuyển đổi có thể được liên kết với dữ liệu phiên đấu giá Protected Audience API và được báo cáo cho máy chủ của bạn.
Báo cáo cấp sự kiện
Báo cáo cấp sự kiện cung cấp thông tin chi tiết về một hoặc nhiều sự kiện. Sự kiện có thể là lượt chiến thắng trong phiên đấu giá, lượt hiển thị quảng cáo hoặc lượt chuyển đổi. Ít nhất là cho đến năm 2026, báo cáo lượt thắng trong phiên đấu giá ở cấp sự kiện vẫn sẽ được duy trì, các khung được phân vùng sẽ không bắt buộc phải hiển thị quảng cáo Protected Audience, đồng thời bạn có thể sử dụng iframe có quyền truy cập mạng không bị hạn chế cho báo cáo ở cấp sự kiện. Ngoài ra, Ads Reporting API có sẵn trong các khung được phân vùng và iframe để bạn liên kết dữ liệu lượt chuyển đổi và phiên đấu giá với dữ liệu cấp sự kiện từ khung. Điều này được thiết kế để giúp hệ sinh thái có thể dễ dàng di chuyển hơn, vì bạn có thể tiếp tục sử dụng cơ sở hạ tầng báo cáo hiện có cho đến ít nhất là năm 2026 trong khi di chuyển hệ thống của mình sang Protected Audience.
Báo cáo giành chiến thắng trong phiên đấu giá ở cấp sự kiện bằng sendReportTo()
Một cơ chế có sẵn để báo cáo dữ liệu ở cấp sự kiện trong phiên đấu giá sử dụng Protected Audience API là sendReportTo() function khi thắng phiên đấu giá. Hàm này có trong các worklet báo cáo của người mua và người bán, đồng thời trình duyệt sẽ đưa ra yêu cầu GET đối với chuỗi URL được cung cấp khi quá trình hiển thị quảng cáo bắt đầu. Bạn có thể mã hoá mọi tín hiệu có trong các worklet dưới dạng tham số truy vấn của URL.
Ví dụ: người mua có thể báo cáo số tiền giá thầu chiến thắng từ worklet reportWin() cho mục đích thanh toán:
// Buyer reporting worklet
function reportWin(auctionSignals, perBuyerSignals, sellerSignals, browserSignals, directFromSellerSignals) {
sendReportTo(`https://buyer-reporting-server.example/reporting?bid=${browserSignals.bid}`);
}
Hàm sendReportTo() có thể dùng để tạo báo cáo chiến thắng cho người bán khi được gọi từ reportResult() và báo cáo chiến thắng cho người mua khi được gọi từ reportWin(). Chức năng sendReportTo() sẽ hoạt động ít nhất đến năm 2026,
Báo cáo Mức độ tương tác
Báo cáo tương tác chứa dữ liệu ở cấp sự kiện từ một mẫu quảng cáo, chẳng hạn như dữ liệu về lượt hiển thị hoặc lượt nhấp được liên kết với các tín hiệu của phiên đấu giá Protected Audience API đã hiển thị quảng cáo. Vì quảng cáo được hiển thị sau khi phiên đấu giá kết thúc, nên các tín hiệu đấu giá không có sẵn trong khung hiển thị quảng cáo. Để liên kết những dữ liệu này từ các khoảng thời gian khác nhau, chúng tôi cung cấp cho bạn 2 cơ chế chuyển đổi để tạo báo cáo về mức độ tương tác.
Bạn có thể dùng hàm sendReportTo() như mô tả ở trên để liên kết dữ liệu đấu giá với dữ liệu ở cấp sự kiện từ một iframe, nhưng hàm này không hoạt động đối với khung được giới hạn vì không thể truyền mã nhận dạng duy nhất từ trình nhúng do hoạt động giao tiếp giữa trình nhúng và khung được giới hạn bị hạn chế. Để liên kết dữ liệu phiên đấu giá với dữ liệu ở cấp sự kiện từ một quảng cáo khung được phân vùng, bạn có thể sử dụng Ads Reporting API.
Ads Reporting API cho fenced frame và iframe
Ads Reporting API cho khung được giới hạn và iframe cung cấp một cơ chế để bạn liên kết dữ liệu cấp sự kiện của người dùng từ một khung quảng cáo với các tín hiệu trong phiên đấu giá Protected Audience.
Trong một worklet báo cáo Protected Audience API, bạn có thể đăng ký một beacon quảng cáo bằng hàm registerAdBeacon() và truyền URL báo cáo của bạn vào các tín hiệu được thêm dưới dạng tham số truy vấn. Bạn cũng chỉ định sự kiện tuỳ chỉnh mà bạn muốn liên kết với URL báo cáo. Sau đó, vào thời điểm sau này khi quảng cáo được hiển thị trong một khung được phân vùng, bạn có thể kích hoạt sự kiện tuỳ chỉnh bằng cách gọi hàm window.fence.reportEvent(). Bạn có thể thêm dữ liệu có trong khung được phân vùng làm tải trọng.
Hàm registerAdBeacon() chỉ có trong các hàm báo cáo, chứ không có trong logic đặt giá thầu của người mua và logic tính điểm của người bán.
Trong ví dụ sau, mã chiến dịch được liên kết với tải trọng cấp sự kiện cùng với toạ độ lượt nhấp:
// Protected Audience API buyer win reporting worklet
function reportWin(auctionSignals) {
const { campaignId } = auctionSignals
registerAdBeacon({
click: `https://buyer-server.example/report/click?campaignId=${campaignId}`
})
}
// Protected Audience API seller reporting worklet
function reportResult(auctionConfig) {
const { campaignId } = auctionConfig.auctionSignals;
registerAdBeacon({
click: `https://seller-server.example/report/click?campaignId=${campaignId}`
})
}
// Ad frame
window.fence.reportEvent({
eventType: 'click',
eventData: JSON.stringify({'clickX': '123', 'clickY': '456'}),
destination:['buyer', 'seller']
});
Fenced Frames Ads Reporting API cũng sẽ có sẵn cho đến ít nhất là năm 2026 vì những lý do tương tự như báo cáo lượt thắng.
Để tìm hiểu kỹ hơn, hãy xem phần giải thích.
Quyền truy cập mạng không bị hạn chế
Khung được phân vùng sẽ cho phép tải các tài nguyên mạng theo cách tương tự như iframe và bạn có thể gửi dữ liệu ở cấp sự kiện trong khung được phân vùng đến máy chủ của mình. Sau này, bạn có thể tạo báo cáo ở cấp sự kiện trên phía máy chủ bằng cách liên kết dữ liệu ở cấp sự kiện từ một khung được bao quanh với dữ liệu đấu giá được gửi bằng sendReportTo() mà chúng ta đã thảo luận trong phần cơ chế báo cáo ở cấp sự kiện đấu giá ở trên.
Quyền truy cập mạng sẽ bị hạn chế trong tương lai.
Báo cáo phân bổ
Báo cáo phân bổ cho phép bạn liên kết một lượt chuyển đổi trên trang web với một quảng cáo được chọn trong phiên đấu giá Protected Audience API. Ví dụ: người dùng có thể nhấp vào một quảng cáo sản phẩm mà bạn phân phát, được chuyển hướng đến trang web của nhà quảng cáo, mua hàng tại đó và bạn muốn phân bổ lượt mua hàng cho quảng cáo đã hiển thị. Attribution Reporting API sẽ được tích hợp với Protected Audience API để kết hợp dữ liệu phiên đấu giá từ trang web của nhà xuất bản và dữ liệu lượt chuyển đổi từ trang web của nhà quảng cáo.
Trong khi chúng tôi thiết kế một giải pháp lâu dài hơn, bạn có thể sử dụng Ads Reporting API cho các khung được phân vùng làm cơ chế chuyển đổi để tạo báo cáo cấp sự kiện và có thể tổng hợp bằng Attribution Reporting. Xin lưu ý rằng những báo cáo này dùng để đo lường lượt chuyển đổi và tách biệt với báo cáo tổng hợp và báo cáo ở cấp sự kiện về mức độ tương tác được tạo từ phiên đấu giá và khung quảng cáo. Chúng tôi sẽ xuất bản một bài viết giải thích về giải pháp lâu dài hơn khi giải pháp này sẵn sàng.
Cơ chế chuyển tiếp
Khi đăng ký một đèn hiệu quảng cáo, bạn có thể sử dụng từ khoá reserved.top_navigation. Từ khoá này sẽ tự động thêm tiêu đề Attribution-Reporting-Eligible để đèn hiệu đủ điều kiện đăng ký làm nguồn phân bổ.
registerAdBeacon({
'reserved.top_navigation': 'https://adtech.example/click?buyer_event_id=123',
});
Để đính kèm dữ liệu ở cấp sự kiện vào beacon mà bạn đã đăng ký, bạn có thể gọi setReportEventDataForAutomaticBeacons() từ khung có rào chắn bằng tải trọng sự kiện.
window.fence.setReportEventDataForAutomaticBeacons({
eventType: 'reserved.top_navigation',
eventData: 'data from the frame',
destination:['seller', 'buyer']
})
Hãy xem phần Báo cáo phân bổ trong thông tin giải thích về Ads Reporting API để tìm hiểu thêm.
Ví dụ về báo cáo lượt tương tác và lượt chuyển đổi
Trong ví dụ này, chúng ta sẽ xem xét điều này từ góc độ người mua muốn liên kết dữ liệu từ phiên đấu giá, khung quảng cáo và trang web chuyển đổi với nhau.
Trong quy trình công việc này, người mua phối hợp với người bán để gửi một mã nhận dạng duy nhất vào phiên đấu giá. Trong phiên đấu giá, người mua gửi mã nhận dạng duy nhất này cùng với dữ liệu phiên đấu giá. Trong thời gian hiển thị và chuyển đổi, dữ liệu từ khung được giới hạn hoặc iframe cũng được gửi đi cùng với mã nhận dạng duy nhất. Sau đó, mã nhận dạng duy nhất có thể được dùng để liên kết các báo cáo này với nhau.
Quy trình công việc:
- Trước khi phiên đấu giá bắt đầu, người mua gửi một mã nhận dạng duy nhất cho người bán trong quá trình phản hồi giá thầu bằng tuỳ chọn đặt giá thầu theo thời gian thực ("RTB") có lập trình. Bạn có thể đặt mã nhận dạng ở dạng một biến như
auctionId. Mã nhận dạng được truyền vào dưới dạngperBuyerSignalstrongauctionConfigvà có trong các worklet của người mua. - Trong thời gian đấu giá, người mua có thể đăng ký một beacon quảng cáo để được kích hoạt trong thời gian hiển thị quảng cáo và thời gian chuyển đổi (
registerAdBeacon()).- Để liên kết các tín hiệu đấu giá cho một sự kiện khung quảng cáo, hãy đặt
auctionIdlàm tham số truy vấn của URL beacon. - Để liên kết các tín hiệu đấu giá cho một sự kiện chuyển đổi, hãy đặt
auctionIdtrong URL beacon.
- Để liên kết các tín hiệu đấu giá cho một sự kiện khung quảng cáo, hãy đặt
- Trong thời gian hiển thị quảng cáo, các beacon mà bạn đã đăng ký trong thời gian đấu giá có thể được kích hoạt hoặc nâng cao bằng dữ liệu ở cấp sự kiện.
- Kích hoạt sự kiện khung hình bằng
reportEvent()và truyền dữ liệu cấp sự kiện. - Thêm tải trọng ở cấp sự kiện vào beacon phân bổ bằng
setReportEventDataForAutomaticBeacons() - Đăng ký quảng cáo bằng Attribution Reporting API bằng cách phản hồi các yêu cầu beacon quảng cáo có tiêu đề
Attribution-Reporting-Register-Source.
- Kích hoạt sự kiện khung hình bằng
- Trong thời gian chuyển đổi, bạn có thể kích hoạt nguồn mà bạn đã đăng ký trong thời gian đấu giá.
Sau quy trình trên, người mua sẽ có báo cáo phiên đấu giá, báo cáo mức độ tương tác và báo cáo lượt chuyển đổi, tất cả đều được liên kết với nhau bằng một khoá duy nhất có thể dùng để liên kết với nhau.
Quy trình công việc tương tự sẽ áp dụng cho người bán nếu cần quyền truy cập vào dữ liệu phân bổ và người bán cũng có thể sử dụng một mã nhận dạng duy nhất để gửi bằng registerAdBeacon(). Từ khung này, lệnh gọi reportEvent() chứa một thuộc tính đích có thể được dùng để gửi báo cáo cho cả người mua và người bán. Xin lưu ý rằng SSP cũng phải có trên trang đích để sự kiện kích hoạt được phân bổ cho nguồn.
Tổng hợp dữ liệu Protected Audience
Private Aggregation API là cơ chế dùng để báo cáo dữ liệu Protected Audience nhằm tạo ra một báo cáo tóm tắt. Đây là một báo cáo tổng hợp có nhiễu về dữ liệu được thu thập theo nhóm. Một nhóm được biểu thị bằng một khoá tổng hợp và một số thông tin có thể được mã hoá vào khoá.
Ví dụ: sự kiện lượt hiển thị quảng cáo có thể được tính vào nhiều nhóm, trong đó mỗi nhóm đại diện cho một chiến dịch quảng cáo. Báo cáo tóm tắt khác với báo cáo ở cấp sự kiện ở chỗ báo cáo tóm tắt không tiết lộ thông tin về từng sự kiện riêng lẻ. Với báo cáo ở cấp sự kiện, bạn có thể xác định rằng người dùng A, B và C đã nhìn thấy chiến dịch 123. Với báo cáo tóm tắt, bạn có thể đo lường số lượng người dùng đã xem chiến dịch 123 và độ nhiễu được thêm vào để bảo vệ quyền riêng tư của người dùng.
Hãy xem bài viết Private Aggregation để biết thêm thông tin về API này.
Tổng hợp tín hiệu đấu giá
Bạn có thể tổng hợp các tín hiệu có trong worklet vào máy chủ của mình bằng cách sử dụng Private Aggregation. Đối với việc tổng hợp tín hiệu, bạn có thể sử dụng phương thức privateAggregation.contributeToHistogram() có trong worklet đặt giá thầu của người mua, worklet tính điểm của người bán và worklet báo cáo của người mua/người bán.
Trong ví dụ này, giá thầu giành chiến thắng được tổng hợp vào nhóm chủ sở hữu nhóm đối tượng có cùng mối quan tâm:
function convertBuyerToBucket(igOwner) {}
function convertWinningBidToValue(winningBid) {}
function reportResult(auctionConfig, browserSignals) {
privateAggregation.contributeToHistogram({
bucket: convertBuyerToBucket(browserSignals.interestGroupOwner),
value: convertWinningBidToValue(browserSignals.bid)
});
}
Đây là cơ chế chung để sử dụng khi các tín hiệu bạn muốn tổng hợp không được liên kết với dữ liệu cấp sự kiện và không được kích hoạt bởi một sự kiện bên ngoài phiên đấu giá. Để tìm hiểu thêm về việc báo cáo tín hiệu trong phiên đấu giá, hãy xem bài viết giải thích.
Tổng hợp tín hiệu trong phiên đấu giá với dữ liệu sự kiện
Bạn có thể tổng hợp các tín hiệu đấu giá với thông tin hạn chế về một sự kiện xảy ra trong khung quảng cáo. Ví dụ: bạn có thể đo lường tổng số lượt nhấp mà một quảng cáo trong chiến dịch đã nhận được bằng cách tạo một nhóm đại diện cho chiến dịch đó và sự kiện nhấp chuột. Xin lưu ý rằng trong khung quảng cáo, bạn có thể chỉ định sự kiện đã xảy ra, nhưng không thể đính kèm tải trọng ở cấp sự kiện.
Để tổng hợp các tín hiệu đấu giá theo sự kiện, bạn có thể sử dụng privateAggregation.contributeToHistogramOnEvent(eventType, contribution). Hàm này lấy một chuỗi chỉ định loại sự kiện và mức đóng góp cần báo cáo khi sự kiện đó được kích hoạt. Bạn có thể gọi phương thức này bằng một loại sự kiện tuỳ chỉnh, sau đó gọi window.fence.reportEvent(eventType) từ khung quảng cáo để kích hoạt việc gửi báo cáo.
Giả sử bạn muốn đo lường số lượt nhấp mà một quảng cáo trong chiến dịch đã nhận được.
// Protected Audience API worklet
function getClickReportBucketForCampaign(campaignId) {
// return a bucket for the campaign ID and the click event
}
function generateBid(interestGroup) {
privateAggregation.contributeToHistogramOnEvent('click', {
bucket: getClickReportBucketForCampaign(interestGroup.ads.metadata.campaignId),
value: 1
});
}
Trong hàm tạo giá thầu, bạn có thể xác định một nhóm là tổ hợp của mã chiến dịch và sự kiện nhấp chuột, sau đó tăng giá trị cho nhóm đó thêm 1 mỗi khi sự kiện được kích hoạt.
// Ad frame
window.fence.reportEvent('click');
Sau đó, vào một thời điểm khác, trong khung quảng cáo, bạn có thể kích hoạt việc gửi báo cáo bằng cách gọi reportEvent(eventType):
Tìm hiểu thêm về cách kích hoạt các lượt đóng góp Private Aggregation từ một khung hình trong phần giải thích.
Báo cáo kết quả và hiệu suất của phiên đấu giá
Bạn cũng có thể tổng hợp kết quả đấu giá khi được kích hoạt bởi sự kiện thắng hoặc thua trong phiên đấu giá bằng contributeToHistogramOnEvent(eventType, contribution) khi bạn truyền vào các từ khoá loại sự kiện được đặt trước (reserved.win, reserved.loss và reserved.always).
Tổng hợp riêng tư cung cấp danh sách các giá trị cơ sở mà bạn có thể tính toán giá trị và nhóm đóng góp của mình. Các giá trị cơ sở có sẵn cho kết quả phiên đấu giá là giá trị giá thầu của quảng cáo giành chiến thắng, giá trị giá thầu được tính điểm cao thứ hai và lý do giá thầu bị từ chối trong phiên đấu giá.
Khi cung cấp một giá trị cơ sở nào đó, chẳng hạn như số tiền giá thầu chiến thắng, bạn có thể đặt số tiền cần thêm hoặc trừ vào giá trị đó, sau đó báo cáo giá trị cuối cùng. Ví dụ: nếu giá thầu thắng cuộc là 5 đô la được cung cấp làm giá trị cơ sở, bạn có thể trừ giá thầu 2 đô la của mình để tính giá trị thực là 3 đô la cho biết bạn đã thua cuộc trong phiên đấu giá bao nhiêu.
Báo cáo kết quả đấu giá
Hãy xem một ví dụ về trường hợp bạn đã thua một phiên đấu giá và bạn muốn biết giá thầu của mình thấp hơn giá trúng thầu bao nhiêu.
Để biết bạn đã thua trong phiên đấu giá bao nhiêu, bạn có thể lấy giá thầu của mình trừ đi giá thầu giành chiến thắng:
function generateBid() {
const bid = calculateBidAmount();
privateAggregation.contributeToHistogramOnEvent('reserved.loss', {
bucket: getBucketForCampaign(interestGroup.ads.metadata.campaignId),
value: {
baseValue: 'winning-bid',
scale: 1 // Scale the value to minimize noise-to-signal ratio
offset: -bid, // Numbers added to browser value after scaling
}
});
}
Khi báo cáo được gửi, giá trị thực tế được báo cáo sẽ là baseValue được điều chỉnh theo tỷ lệ và dịch chuyển theo giá trị offset. Để tìm hiểu thêm, hãy xem nội dung giải thích.
Báo cáo hiệu suất
Người mua và người bán có thể báo cáo thời gian thực thi một tập lệnh và thời gian tìm nạp các tín hiệu đáng tin cậy. Người bán có thể thu thập thời gian tạo giá thầu và thời gian tín hiệu đặt giá thầu đáng tin cậy của từng người mua khi có sự cho phép của họ.
Hãy xem video giải thích để tìm hiểu thêm.
Lưu trữ tín hiệu đấu giá trong Shared Storage
Bộ nhớ dùng chung là bộ nhớ không phân vùng và đa nguồn mà bạn có thể ghi dữ liệu vào một cách thoải mái, nhưng được bảo vệ bằng các cổng khi đọc và xử lý các giá trị được lưu trữ. Một trong những cổng có sẵn cho Shared Storage API là Private Aggregation. Bạn chỉ có thể đọc các giá trị trong bộ nhớ dùng chung từ bên trong một worklet và có thể báo cáo các giá trị đó bằng cách sử dụng tính năng Tổng hợp riêng tư từ worklet.
Bạn cũng có thể ghi vào bộ nhớ dùng chung từ các worklet đặt giá thầu, tính điểm và báo cáo của Protected Audience API. Sau đó, bạn có thể báo cáo những giá trị đó trong bộ nhớ dùng chung cho máy chủ của mình bằng cách sử dụng Private Aggregation . Bạn cũng có thể sử dụng các giá trị được lưu trữ cho thao tác Chọn URL.
Từ một worklet Protected Audience API, bạn có thể ghi mọi khoá và giá trị vào bộ nhớ dùng chung:
// Protected Audience API worklet
function generateBid() {
sharedStorage.set('test-bucket', 123);
}
Sau đó, bạn có thể tải một worklet Shared Storage để đọc và gửi giá trị đó bằng Private Aggregation:
// Shared Storage worklet
class SendReachReport{
async run() {
const testBucket = await this.sharedStorage.get('test-bucket');
privateAggregation.contributeToHistogram({
bucket: testBucket,
value: 1
});
}
}
register('send-report', SendReachReport);
Để tìm hiểu thêm về Shared Storage, hãy xem phần bộ nhớ dùng chung trong hướng dẫn dành cho nhà phát triển báo cáo Protected Audience API, giải thích, bản minh hoạ trực tiếp và mã minh hoạ trên GitHub.
Tiếp theo là gì?
Chúng tôi muốn thảo luận với bạn để đảm bảo việc xây dựng một API phù hợp với tất cả mọi người.
Thảo luận về API
Giống như các API Hộp cát về quyền riêng tư khác, API này được ghi lại và thảo luận công khai.
Thử nghiệm với API
Bạn có thể thử nghiệm và tham gia cuộc trò chuyện về Protected Audience API.