Thông tin tổng quan cấp cao về các dịch vụ được kết nối cho Báo cáo phân bổ, dành cho những người ra quyết định về mặt kỹ thuật.
Attribution Reporting API cho phép các công nghệ quảng cáo và nhà quảng cáo đo lường thời điểm một lượt nhấp vào quảng cáo hoặc lượt xem quảng cáo dẫn đến một lượt chuyển đổi, chẳng hạn như một lượt mua hàng. API này dựa trên sự kết hợp của các chế độ tích hợp phía máy khách và phía máy chủ, tuỳ thuộc vào nhu cầu kinh doanh của bạn.
Trước khi tiếp tục, hãy nhớ đọc bài viết Tổng quan về Báo cáo phân bổ. Điều này sẽ giúp bạn hiểu rõ mục đích của API và quy trình của các báo cáo đầu ra khác nhau (báo cáo cấp sự kiện và báo cáo tóm tắt). Nếu bạn gặp phải các thuật ngữ không quen thuộc, hãy tham khảo Bảng thuật ngữ về Hộp cát về quyền riêng tư.
Bài viết này dành cho ai?
Bạn nên đọc bài viết này nếu:
- Bạn là người ra quyết định về kỹ thuật của công nghệ quảng cáo hoặc nhà quảng cáo. Bạn có thể làm việc trong bộ phận vận hành, DevOps, khoa học dữ liệu, CNTT, tiếp thị hoặc một vai trò khác mà bạn đưa ra quyết định triển khai kỹ thuật. Bạn đang thắc mắc về cách hoạt động của các API để đo lường theo phương pháp bảo đảm quyền riêng tư.
- Bạn là một người thực hành kỹ thuật (chẳng hạn như nhà phát triển, nhà điều hành hệ thống, kiến trúc sư hệ thống hoặc nhà khoa học dữ liệu) sẽ thiết lập các thử nghiệm với API và môi trường Dịch vụ tổng hợp này.
Trong bài viết này, bạn sẽ đọc được nội dung giải thích tổng quan, toàn diện về cách hoạt động của các dịch vụ cho API Báo cáo phân bổ. Nếu là một chuyên gia kỹ thuật, bạn có thể thử nghiệm với API này trên máy.
Tổng quan
API Báo cáo phân bổ bao gồm nhiều dịch vụ, đòi hỏi phải thiết lập, định cấu hình phía máy khách và triển khai máy chủ theo cách cụ thể. Để xác định những gì bạn cần, trước tiên:
- Đưa ra các quyết định về thiết kế. Xác định thông tin bạn muốn thu thập, xác định những lượt chuyển đổi mà bạn mong đợi từ một chiến dịch bất kỳ và xác định loại báo cáo cần thu thập. Kết quả cuối cùng là một hoặc cả hai loại báo cáo: báo cáo ở cấp sự kiện và báo cáo tóm tắt.
Luôn có hai (và đôi khi là ba) thành phần hoạt động cùng nhau để hỗ trợ báo cáo:
- Giao tiếp giữa trang web và trình duyệt. Trong các hệ thống dựa trên cookie, thông tin về lượt chuyển đổi và lượt tương tác với quảng cáo được đính kèm vào một giá trị nhận dạng cho phép bạn hoặc dịch vụ phân tích tham gia vào các sự kiện này sau này. Với API này, trình duyệt sẽ liên kết lượt chuyển đổi với lượt nhấp/lượt xem quảng cáo dựa trên hướng dẫn của bạn trước khi phân phối lượt chuyển đổi để phân tích. Do đó, mã hiển thị quảng cáo và tính năng theo dõi lượt chuyển đổi phải:
- Cho trình duyệt biết những lượt chuyển đổi nào sẽ được phân bổ cho những lượt nhấp hoặc lượt hiển thị quảng cáo nào.
- Báo hiệu mọi dữ liệu khác cần đưa vào báo cáo cuối cùng.
- Thu thập dữ liệu. Bạn sẽ cần một điểm cuối của trình thu thập để nhận các báo cáo được tạo trong trình duyệt của người dùng. Đầu ra từ trình duyệt có thể là một trong hai báo cáo: báo cáo cấp sự kiện và báo cáo tổng hợp (được mã hoá, dùng để tạo báo cáo tóm tắt).
Nếu đã thu thập báo cáo tổng hợp, bạn sẽ cần một thành phần thứ ba:
- Tạo báo cáo tóm tắt. Gửi hàng loạt báo cáo tổng hợp và sử dụng Dịch vụ tổng hợp để xử lý các báo cáo đó nhằm tạo báo cáo tóm tắt.
Quyết định về thiết kế
Một nguyên tắc quan trọng của Báo cáo phân bổ là các quyết định thiết kế sớm. Bạn quyết định loại dữ liệu cần thu thập trong những danh mục nào và tần suất xử lý dữ liệu đó. Báo cáo đầu ra cung cấp thông tin chi tiết về chiến dịch hoặc doanh nghiệp của bạn.
Báo cáo đầu ra có thể là:
- Báo cáo ở cấp sự kiện liên kết một lượt nhấp hoặc lượt xem quảng cáo cụ thể (ở phía quảng cáo) với dữ liệu ở phía lượt chuyển đổi. Để bảo vệ quyền riêng tư của người dùng bằng cách hạn chế việc kết hợp danh tính người dùng trên các trang web, dữ liệu phía lượt chuyển đổi rất hạn chế và dữ liệu này có nhiều tạp âm (tức là trong một tỷ lệ nhỏ các trường hợp, dữ liệu ngẫu nhiên được gửi thay vì báo cáo thực tế).
- Báo cáo tóm tắt không liên kết với một sự kiện cụ thể ở phía quảng cáo. Những báo cáo này cung cấp dữ liệu lượt chuyển đổi chi tiết hơn và linh hoạt hơn trong việc kết hợp dữ liệu lượt nhấp và lượt xem với dữ liệu lượt chuyển đổi.
Báo cáo mà bạn chọn sẽ xác định dữ liệu mà bạn cần thu thập.
Bạn cũng có thể coi kết quả cuối cùng là dữ liệu đầu vào cho các công cụ mà bạn sử dụng để đưa ra quyết định. Ví dụ: nếu bạn tạo báo cáo tóm tắt để xác định số lượt chuyển đổi dẫn đến một số giá trị tổng chi tiêu, thì điều đó có thể giúp nhóm của bạn quyết định chiến dịch quảng cáo tiếp theo nên nhắm đến mục tiêu nào để tạo ra tổng chi tiêu cao hơn.
Sau khi quyết định những gì bạn muốn đo lường, bạn có thể thiết lập phía máy khách cho Attribution Reporting API.
Giao tiếp giữa trang web và trình duyệt

Luồng sự kiện phân bổ
Hãy tưởng tượng một trang web của nhà xuất bản hiển thị quảng cáo. Mỗi nhà quảng cáo hoặc nhà cung cấp công nghệ quảng cáo đều muốn tìm hiểu về các lượt tương tác với quảng cáo của họ và phân bổ lượt chuyển đổi cho đúng quảng cáo. Báo cáo (cả báo cáo cấp sự kiện và báo cáo tổng hợp) sẽ được tạo như sau:
Trên trang web của nhà xuất bản, một thành phần quảng cáo (thẻ
<a>
hoặc<img>
) được định cấu hình bằng một thuộc tính đặc biệtattributionsrc
. Giá trị của thuộc tính này là một URL, ví dụ:https://adtech.example/register-source/ad_id=...
.Dưới đây là ví dụ về một đường liên kết sẽ đăng ký một nguồn sau khi được nhấp vào:
<a href="https://shoes.example/landing" attributionsrc="http://adtech.example/register-source?..." target="_blank"> Click me</a>
Dưới đây là ví dụ về một hình ảnh sẽ khiến nguồn được đăng ký khi được xem:
<img href="https://advertiser.example/landing" attributionsrc="https://adtech.example/register-source?..."/>
Ngoài ra, thay vì các phần tử HTML, bạn có thể sử dụng lệnh gọi JavaScript.
Sau đây là ví dụ về JavaScript sử dụng
window.open()
. Xin lưu ý rằng URL được mã hoá để tránh các vấn đề về ký tự đặc biệt.const encodedUrl = encodeURIComponent( 'https://adtech.example/attribution_source?ad_id=...'); window.open( "https://shoes.example/landing", "_blank", attributionsrc=${encodedUrl});
- Khi người dùng nhấp hoặc xem quảng cáo, trình duyệt sẽ gửi một yêu cầu
GET
đếnattributionsrc
– thường là một điểm cuối của nhà quảng cáo hoặc nhà cung cấp công nghệ quảng cáo. Sau khi nhận được yêu cầu này, nhà quảng cáo hoặc nhà cung cấp công nghệ quảng cáo sẽ quyết định hướng dẫn trình duyệt đăng ký sự kiện nguồn cho các lượt tương tác với quảng cáo, để sau này có thể phân bổ lượt chuyển đổi cho quảng cáo này. Để làm như vậy, nhà quảng cáo hoặc nhà cung cấp công nghệ quảng cáo sẽ thêm một tiêu đề HTTP đặc biệt vào phản hồi. Mã này đính kèm vào dữ liệu tuỳ chỉnh của tiêu đề này để cung cấp thông tin về sự kiện nguồn (lượt nhấp vào quảng cáo hoặc lượt xem quảng cáo). Nếu một lượt chuyển đổi cuối cùng diễn ra cho quảng cáo này, thì dữ liệu tuỳ chỉnh này cuối cùng sẽ xuất hiện trong báo cáo phân bổ.
Sau đó, người dùng truy cập vào trang web của nhà quảng cáo.
Trên mỗi trang có liên quan của trang web của nhà quảng cáo (ví dụ: trang xác nhận mua hàng hoặc trang sản phẩm), một pixel chuyển đổi (thành phần
<img>
) hoặc lệnh gọi JavaScript sẽ gửi yêu cầu đếnhttps://adtech.example/conversion?param1=...¶m2=...
.Dịch vụ tại URL này (thường là nhà quảng cáo hoặc nhà cung cấp công nghệ quảng cáo) sẽ nhận được yêu cầu. Vì quyết định phân loại hành động này là một lượt chuyển đổi, nên trình theo dõi cần hướng dẫn trình duyệt ghi lại một lượt chuyển đổi, tức là kích hoạt một lượt phân bổ. Để làm như vậy, nhà quảng cáo hoặc nhà cung cấp công nghệ quảng cáo sẽ thêm một tiêu đề HTTP đặc biệt chứa dữ liệu tuỳ chỉnh về lượt chuyển đổi vào phản hồi của họ đối với yêu cầu về pixel.
Trình duyệt (trên thiết bị cục bộ của người dùng) sẽ nhận được phản hồi này và so khớp dữ liệu chuyển đổi với sự kiện nguồn ban đầu (lượt xem hoặc lượt nhấp vào quảng cáo). Tìm hiểu thêm trong bài viết So khớp nguồn với điều kiện kích hoạt
Trình duyệt lên lịch gửi báo cáo đến
attributionsrc
. Báo cáo này bao gồm:- Dữ liệu cấu hình mô hình phân bổ tuỳ chỉnh mà nhà cung cấp công nghệ quảng cáo hoặc nhà quảng cáo đính kèm vào sự kiện nguồn ở Bước 3.
- Dữ liệu lượt chuyển đổi tuỳ chỉnh được thiết lập ở Bước 6.
Sau đó, trình duyệt sẽ gửi báo cáo đến điểm cuối được xác định trong
attributionsrc
, với một số độ trễ và nhiễu. Báo cáo tổng hợp được mã hoá, còn báo cáo ở cấp sự kiện thì không.
Điều kiện kích hoạt mô hình phân bổ (trang web của nhà quảng cáo)
Trình kích hoạt phân bổ là sự kiện cho trình duyệt biết cần ghi lại lượt chuyển đổi.
Bạn nên ghi lại những lượt chuyển đổi quan trọng nhất đối với nhà quảng cáo, chẳng hạn như lượt mua hàng. Bạn có thể thu thập nhiều loại chuyển đổi và siêu dữ liệu trong báo cáo tóm tắt.
Điều này giúp đảm bảo kết quả tổng hợp chi tiết và chính xác cho những sự kiện này.
So khớp nguồn với trình kích hoạt
Khi nhận được phản hồi điều kiện kích hoạt phân bổ, trình duyệt sẽ truy cập vào bộ nhớ cục bộ để tìm một nguồn khớp với cả nguồn gốc của điều kiện kích hoạt phân bổ và eTLD+1 của URL trang đó.
Ví dụ: khi trình duyệt nhận được điều kiện kích hoạt phân bổ từ adtech.example
trên shoes.example/shoes123
, trình duyệt sẽ tìm một nguồn trong bộ nhớ cục bộ khớp với cả adtech.example
và shoes.example
.
Bạn có thể đặt Bộ lọc (hoặc quy tắc tuỳ chỉnh) để xác định thời điểm một điều kiện kích hoạt được so khớp với một nguồn cụ thể. Ví dụ: đặt bộ lọc để chỉ tính lượt chuyển đổi cho một danh mục sản phẩm cụ thể và bỏ qua tất cả các danh mục khác. Bộ lọc và mô hình ưu tiên cho phép báo cáo phân bổ nâng cao hơn.
Nếu tìm thấy nhiều nguồn phân bổ trong bộ nhớ cục bộ, trình duyệt sẽ chọn nguồn được lưu trữ gần đây nhất. Trong một số trường hợp, khi các nguồn phân bổ được chỉ định mức độ ưu tiên, trình duyệt sẽ chọn nguồn có mức độ ưu tiên cao nhất.
Thu thập dữ liệu
Cùng với nhau, một điều kiện kích hoạt phân bổ được so khớp với một nguồn tương ứng sẽ được trình duyệt gửi dưới dạng báo cáo đến một điểm cuối báo cáo trên máy chủ thuộc sở hữu của công nghệ quảng cáo (đôi khi được gọi là điểm cuối thu thập hoặc dịch vụ thu thập). Các báo cáo này có thể là báo cáo cấp sự kiện hoặc báo cáo tổng hợp.
Báo cáo tổng hợp được dùng để tạo báo cáo tóm tắt. Báo cáo tổng hợp là sự kết hợp giữa dữ liệu thu thập được từ quảng cáo (trên trang web của nhà xuất bản) và dữ liệu chuyển đổi (từ trang web của nhà quảng cáo). Dữ liệu này do trình duyệt tạo và mã hoá trên thiết bị của người dùng trước khi được công nghệ quảng cáo thu thập.
Báo cáo cấp sự kiện bị trễ từ 2 đến 30 ngày. Báo cáo tổng hợp được gửi với độ trễ ngẫu nhiên trong vòng một giờ và các sự kiện phải nằm trong ngân sách đóng góp. Những lựa chọn này giúp bảo vệ quyền riêng tư và ngăn chặn hành vi lợi dụng hành động của bất kỳ người dùng nào.
Nếu bạn chỉ quan tâm đến báo cáo cấp sự kiện, thì đây là phần cơ sở hạ tầng cuối cùng mà bạn cần. Tuy nhiên, nếu muốn tạo báo cáo tóm tắt, bạn cần xử lý các báo cáo tổng hợp bằng một dịch vụ bổ sung.
Tạo báo cáo tóm tắt
Để tạo báo cáo tóm tắt, bạn sẽ sử dụng Dịch vụ tổng hợp (do công nghệ quảng cáo vận hành) để xử lý các báo cáo tổng hợp. Dịch vụ tổng hợp thêm nhiễu để bảo vệ quyền riêng tư của người dùng và trả về báo cáo tóm tắt cuối cùng.

Sau khi gộp các báo cáo tổng hợp đã thu thập, Dịch vụ tổng hợp sẽ xử lý lô báo cáo đó. Trình điều phối chỉ cấp khoá giải mã cho các phiên bản được chứng thực của Dịch vụ tổng hợp. Sau đó, Dịch vụ tổng hợp sẽ giải mã dữ liệu, tổng hợp dữ liệu đó và thêm nhiễu trước khi trả về kết quả dưới dạng báo cáo tóm tắt.
Báo cáo tổng hợp theo lô
Trước khi được xử lý, báo cáo tổng hợp phải được phân thành lô. Một lô bao gồm các báo cáo tổng hợp được nhóm theo chiến lược. Chiến lược của bạn nhiều khả năng sẽ phản ánh một khoảng thời gian cụ thể (chẳng hạn như hằng ngày hoặc hằng tuần). Quá trình này có thể diễn ra trên cùng một máy chủ đóng vai trò là điểm cuối báo cáo của bạn.
Mỗi lô phải chứa nhiều báo cáo để đảm bảo tỷ lệ tín hiệu trên tạp âm cao.

Khoảng thời gian theo lô có thể thay đổi bất cứ lúc nào để đảm bảo bạn thu thập được các sự kiện cụ thể mà bạn dự kiến sẽ có số lượng lớn, chẳng hạn như chương trình giảm giá hằng năm. Bạn có thể thay đổi khoảng thời gian tạo lô mà không cần thay đổi nguồn phân bổ hoặc điều kiện kích hoạt.
Dịch vụ tổng hợp
Dịch vụ tổng hợp chịu trách nhiệm xử lý các báo cáo tổng hợp để tạo báo cáo tóm tắt. Các báo cáo tổng hợp được mã hoá và chỉ có thể được Dịch vụ tổng hợp đọc. Dịch vụ này chạy trên một môi trường thực thi đáng tin cậy (TEE).
Dịch vụ tổng hợp yêu cầu khoá giải mã từ trình điều phối để giải mã và tổng hợp dữ liệu. Sau khi giải mã và tổng hợp, kết quả sẽ được làm nhiễu để bảo vệ quyền riêng tư và được trả về dưới dạng báo cáo tóm tắt.
Người thực hành có thể tạo báo cáo văn bản thô tổng hợp để kiểm thử Dịch vụ tổng hợp cục bộ. Hoặc bạn có thể thử nghiệm với báo cáo đã mã hoá trên AWS bằng Nitro Enclaves.
Tiếp theo là gì?
Chúng tôi muốn trao đổi với bạn để đảm bảo rằng chúng tôi xây dựng một API phù hợp với 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 nhận và thảo luận công khai.
Thử nghiệm với API
Bạn có thể thử nghiệm và tham gia vào cuộc trò chuyện về Attribution Reporting API.