Chạy phiên đấu giá dựa trên trình duyệt với một người bán duy nhất

Trong tài liệu này, bạn sẽ tìm thấy thông tin tổng quan về việc chạy phiên đấu giá với Dữ liệu Protected Audience cho một người bán, như được sử dụng trong phiên bản hiện tại của Protected Audience API. Phiên đấu giá với một người bán duy nhất có thể được thực hiện trong một phiên đấu giá phức tạp hơn có sự tham gia của nhiều người bán. Trong phần này thì phiên đấu giá một người bán được gọi là "phiên đấu giá thành phần", có thể đưa ra các đề xuất quảng cáo cho "phiên đấu giá cấp cao nhất" có nhiều người bán tham gia.

Hãy đọc hướng dẫn cho nhà phát triển để biết toàn bộ vòng đời của Protected Audience API, và tham khảo tài liệu giải thích về Protected Audience API để biết thêm thông tin chuyên sâu thảo luận về cách người bán chạy phiên đấu giá trên thiết bị.

6 giai đoạn trong phiên đấu giá quảng cáo Protected Audience API

6 giai đoạn trong phiên đấu giá quảng cáo Protected Audience API
Sơ đồ này trình bày từng giai đoạn của một phiên đấu giá quảng cáo bằng Protected Audience API.
  1. Người dùng truy cập vào trang web hiển thị quảng cáo.
  2. Mã của người bán thực thi navigator.runAdAuction(). Điều này chỉ định không gian quảng cáo là để bán và ai có thể đặt giá thầu. Người bán cũng phải bao gồm một tập lệnh để tính điểm từng giá thầu, scoreAd().
  3. Mã của người mua được mời thực thi để tạo giá thầu, URL cho quảng cáo có liên quan mẫu quảng cáo và dữ liệu khác. Tập lệnh đặt giá thầu có thể truy vấn dữ liệu theo thời gian thực, chẳng hạn như ngân sách còn lại của chiến dịch quảng cáo, Dịch vụ Khoá/Giá trị.
  4. Mã của người bán tính điểm từng giá thầu và chọn giá thầu chiến thắng. Logic này sử dụng giá trị giá thầu và dữ liệu khác trả về mức độ mong muốn của giá thầu. Những quảng cáo không thể bỏ qua quảng cáo chiến thắng theo bối cảnh sẽ bị từ chối. Người bán có thể sử dụng Dịch vụ Khoá/Giá trị cho dữ liệu theo thời gian thực.
  5. Quảng cáo chiến thắng được trả về dưới dạng một giá trị không rõ ràng, giá trị này hiển thị trong một khung bảo vệ. Cả người bán và nhà xuất bản sẽ không thể xem giá trị này.
  6. Phiên đấu giá được báo cáo cho người bán và người mua chiến thắng.

Phiên đấu giá có thể diễn ra khi người dùng chuyển đến một trang hiển thị quảng cáo. Các phiên đấu giá có thể tiến hành trước thời hạn để mẫu quảng cáo sẵn sàng khi quảng cáo xuất hiện trong khung nhìn.

Người bán bắt đầu phiên đấu giá quảng cáo, tính điểm quảng cáo đề xuất bằng cách sử dụng logic tuỳ chỉnh được cung cấp dưới dạng hàm scoreAd() và chịu trách nhiệm báo cáo kết quả của đấu giá cho chính họ cũng như người mua chiến thắng. Người bán cũng có thể thực thi các quy tắc của nhà xuất bản và lọc chất lượng quảng cáo bằng cách sử dụng scoreAd() .

Người bán có thể đề cập đến:

  • Nhà xuất bản nội dung, tự lưu trữ nội dung quảng cáo trên trang web của họ
  • Nền tảng bên cung (SSP), làm việc với nhà xuất bản quảng cáo và cung cấp các dịch vụ khác
  • Tập lệnh của bên thứ ba, hoạt động cho nhà xuất bản để cho phép tham gia vào các phiên đấu giá quảng cáo.

Điều kiện tiên quyết để chạy phiên đấu giá

Người bán cần hai hàm JavaScript được xác định để chạy phiên đấu giá:

  • scoreAd() giúp tính điểm đề xuất quảng cáo
  • reportResult(), giúp xử lý việc báo cáo kết quả của phiên đấu giá cho chính người bán

Các tập lệnh này cần được phân phát từ một điểm cuối duy nhất mà người bán sở hữu.

scoreAd()

Người bán cần xác định một hàm scoreAd() được phân phát từ một điểm cuối mà họ sở hữu. Điểm cuối được chỉ định trong cấu hình đấu giá làm decisionLogicUrl. Hàm scoreAd() có chữ ký sau:

scoreAd(
  adMetadata,
  bid,
  auctionConfig,
  trustedScoringSignals,
  browserSignals,
  directFromSellerSignals)

Các tham số scoreAd() bao gồm:

  • adMetaData, là siêu dữ liệu tuỳ ý về mẫu quảng cáo do người mua cung cấp. Đây là một đối tượng JSON có thể chuyển đổi tuần tự mà người bán và người mua cần xác định và thống nhất về cấu trúc.
  • bid là một giá trị bằng số đại diện cho giá thầu.
  • auctionConfig là cấu hình đấu giá dùng để thực thi phiên đấu giá.
  • trustedScoringSignals là các tín hiệu được đọc tại thời điểm đấu giá từ máy chủ Khoá/Giá trị của người bán. Nền tảng này sẽ sử dụng renderUrl của làm khoá cho quá trình tra cứu này.
  • browserSignals là một đối tượng do trình duyệt tạo, bao gồm thông tin mà trình duyệt biết và tập lệnh đấu giá nào của người bán có thể muốn xác minh.
  • directFromSellerSignals là một đối tượng có thể chứa các trường sau: ** sellerSignals: Giống như auctionConfig.sellerSignals, nhưng đã được truyền bằng cách sử dụng phương thức Cơ chế directFromSellerSignals. ** auctionSignals: Giống như auctionConfig.auctionSignals, nhưng đã được truyền bằng cách sử dụng phương thức Cơ chế directFromSellerSignals.

Sau đây là ví dụ về browserSignals. Xin lưu ý rằng renderUrl của quảng cáo đề xuất có sẵn thông qua các tín hiệu sau:

{ 'topWindowHostname': 'www.example-publisher.com',
  'interestGroupOwner': 'https://www.example-buyer.com',
  'renderURL': 'https://cdn.com/render_url_of_bid',
  'renderSize': {width: 100, height: 200}, /* if specified in the bid */
  'adComponents': ['https://cdn.com/ad_component_of_bid',
                   'https://cdn.com/next_ad_component_of_bid',
                   ...],
  'biddingDurationMsec': 12,
  'bidCurrency': 'USD', /* bidCurrency returned by generateBid, or '???' if none */
  'dataVersion': 1, /* Data-Version value from the trusted scoring signals server's response */
}

reportResult()

Người bán cần xác định hàm reportResult() được phân phát từ mà chúng sở hữu. Điểm cuối được chỉ định trong cấu hình đấu giá với tư cách là decisionLogicUrl. Hàm reportResult() có các giá trị sau chữ ký:

reportResult(auctionConfig, browserSignals) {
  ...
  return signalsForWinner;
}

Các tham số reportResult() bao gồm:

  • auctionConfig là cấu hình đấu giá dùng để thực thi phiên đấu giá.
  • browserSignals là một đối tượng do trình duyệt tạo, bao gồm thông tin mà trình duyệt biết và tập lệnh đấu giá nào của người bán có thể muốn xác minh. Đây cũng chính là đối tượng được truyền đến hàm scoreAds().

reportResult() trả về signalsForWinner (đây là một đối tượng JSON tuỳ ý) được chuyển đến chức năng báo cáo của người mua chiến thắng. Điều này phải bao gồm mọi thông tin có liên quan mà người bán có thể cung cấp về phiên đấu giá mà người mua yêu cầu cho báo cáo của họ.

Chạy phiên đấu giá Protected Audience API

Người bán phải thực hiện bốn bước chính để chạy phiên đấu giá. Lưu ý rằng các bước giả định người bán đã thiết lập điểm cuối để trả về JavaScript bắt buộc đề cập trước đó trong hướng dẫn này.

  1. Định cấu hình phiên đấu giá. Bước này bao gồm việc tạo một đối tượng auctionConfig. Điều này cho phép người bán chỉ định người mua nào sẽ tham gia vào phiên đấu giá, cũng như cung cấp mọi tín hiệu có thể có liên quan trong thời gian đặt giá thầu việc tạo hoặc tính điểm quảng cáo.
  2. Thực thi phiên đấu giá bằng cách gọi navigator.runAdAuction(), truyền vào giá trị tạo ở bước trước. Việc này sẽ bắt đầu chuỗi người mua tạo giá thầu, sau đó tính điểm. Kết quả cuối cùng của bước này là một đề xuất quảng cáo có thể được hiển thị để hiển thị quảng cáo.
  3. Hiển thị quảng cáo giành chiến thắng trong khung hàng rào hoặc iframe.
  4. Báo cáo kết quả của phiên đấu giá. Có một hàm, navigator.sendReportTo(), sẽ bắt đầu báo cáo. Người bán sẽ luôn sẽ nhận được báo cáo về kết quả phiên đấu giá. Chỉ người mua đã thắng phiên đấu giá sẽ nhận được báo cáo. Tuỳ chọn này sử dụng reportResult() của người bán được mô tả trước đó trong hướng dẫn này để báo cáo cho máy chủ của họ.