Chrome은 개인 정보 보호 샌드박스의 일환으로 실험적인 Topics API를 제안했습니다. Topics API는 웹페이지의 서드 파티 호출자 (광고 기술 제공업체 포함)에게 페이지 방문자가 현재 관심을 가질 수 있는 대략적인 광고 주제를 제공합니다. 이러한 주제는 현재 페이지에 관한 문맥 정보를 보완할 수 있으며 관심분야 기반 광고를 지원하는 데 유용합니다.
Topics API 실험은 입찰 요청에서 RTB 파트너가 사용할 수 있습니다. 주제는 사용 가능 여부에 따라 모든 RTB 파트너에게 전송됩니다.
입찰 요청 표현
OpenRTB 프로토콜
주제는 OpenRTB BidRequest.user.data 메시지에서 세그먼트로 표시됩니다.
| 필드 | 유형 | 설명 |
|---|---|---|
Data.ext.segtax
|
정수 | 중앙에 등록된 분류의 ID입니다. Topics의 경우 각 주제 ID의 의미를 정의하는 광고 분류의 버전입니다. 600은 Chrome의 Topics 초기 분류에 사용됩니다. |
Data.ext.segclass
|
문자열 | classifier_version와 같습니다.
|
Data.segment.id
|
문자열 | 문자열로 변환된 id과 같습니다.
|
Data.ext은 BidRequest.user.data 메시지의 확장입니다. 이 확장 프로그램은 프로토콜의 공개 베타 버전에서 사용할 수 있습니다.
정의는 다음과 같습니다.
// Ad Exchange extensions for the Data object.
message DataExt {
// The ID for a taxonomy that is registered centrally. Used to define the
// namespace and semantic meaning of the segment IDs. See
// https://github.com/InteractiveAdvertisingBureau/openrtb/blob/master/extensions/community_extensions/segtax.md#enumeration-of-taxonomies
// for the enumeration of the taxonomies that this value can take. Currently
// only Chrome Topics API taxonomy (segtax=600) is supported.
optional int32 segtax = 1;
// The version of the classifier which produced the segment IDs within the
// taxonomy. For example, in the case of Chrome Topics API (segtax=600), this
// is the version of the classifier used by the browser to map hostnames to
// topics in the taxonomy.
optional string segclass = 2;
}
Google RTB 프로토콜 (지원 중단됨)
주제는 BidRequest 메시지의 topics 필드에 표시됩니다. 이 필드는 프로토콜의 공개 베타 버전에서 사용할 수 있습니다.
정의는 다음과 같습니다.
// Experimental field; subject to change.
// A coarse-grained topic that a website visitor might currently be interested
// in based on recent browsing activity. See
// https://developer.chrome.com/docs/privacy-sandbox/topics/ and/or
// https://privacysandbox.com/intl/en_us/proposals/topics/ for more
// information about the Topics API. Reach out to your account manager to
// participate in the Topics API experiment.
message Topic {
// The value of a topic ID. A numerical identifier corresponding to a
// coarse-grained advertising topic. See
// https://github.com/patcg-individual-drafts/topics/blob/main/taxonomy_v1.md
// for a list of topics in the initial taxonomy.
optional int32 id = 1;
// The version of the advertising taxonomy which defines the semantic
// meaning of each topic ID for the topics, for example "v1".
optional string taxonomy_version = 2;
// The version of the classifier used by the browser to map hostnames to
// topic IDs in the taxonomy.
optional string classifier_version = 3;
}
// The list of topics that a website visitor might currently be interested in
// inferred by the browser based on recent browsing activity. See
// https://developer.chrome.com/docs/privacy-sandbox/topics/ and/or
// https://privacysandbox.com/intl/en_us/proposals/topics/ for more
// information about Topics API.
repeated Topic topics = 74;
예
다음은 Google 공인 구매자 및 OpenRTB 프로토콜이 Chrome Topics API에서 반환된 주제를 나타내는 방법의 예입니다.
document.browsingTopics()에서 반환된 Chrome Topics API 응답:
[
{
"modelVersion": "classifier_v1",
"taxonomyVersion": "taxonomy_v1",
"topic": 3
},
{
"modelVersion": "classifier_v1",
"taxonomyVersion": "taxonomy_v1",
"topic": 44
},
{
"modelVersion": "classifier_v1",
"taxonomyVersion": "taxonomy_v1",
"topic": 59
}
]
OpenRTB BidRequest:
{
"user": {
"data": [
{
"ext": {
"segtax": 600,
"segclass": "classifier_v1"
},
"segment": [
{ "id": "3" },
{ "id": "44" },
{ "id": "59" }
]
}
]
}
}
Google RTB 프로토콜 (지원 중단됨) BidRequest:
topics {
id: 3
taxonomy_version: "taxonomy_v1"
classifier_version: "classifier_v1"
}
topics {
id: 44
taxonomy_version: "taxonomy_v1"
classifier_version: "classifier_v1"
}
topics {
id: 59
taxonomy_version: "taxonomy_v1"
classifier_version: "classifier_v1"
}
위의 Chrome Topics API 예시에서 taxonomy_version는 taxonomy_v1 매핑이 사용됨을 의미합니다. 분류에 따라 이러한 주제 ID는 다음 주제에 해당합니다.
| 주제 ID | Topic Value(주제 값) |
|---|---|
| 3 | /Arts & Entertainment/Comics |
| 44 | /Arts & Entertainment/Opera |
| 59 | /Autos & Vehicles/Classic Vehicles |
가용성
입찰 요청에 주제가 포함되는지 여부는 기존 개인 정보 보호 조치 및 관리 기능의 적용을 받습니다. 예를 들어 사용자가 개인 맞춤 광고를 선택 해제하거나 개인 맞춤이 아닌 광고 인벤토리를 선택한 경우 주제를 사용할 수 없습니다.