3. Bid Request Specification (입찰 요청 스펙)
RTB 트랜잭션은 exchange 또는 다른 공급 소스를 bidder에게 입찰 요청을 보낼 때 시작된다. 입찰 요청 최상위 입찰 요청 개체는 적어도 하나의 노출 오브젝트로 구성되며, 선택적으로 노출 context를 제공하는 개체를 추가로 포함 할 수 있다.
3.1 Object Model
그림은 입찰 요청에 대한 오브젝트 모델이다. 최상위 객체(i.e JSON 이름없는 외부 개체)는 모델의 입찰 요청으로 표시된다. 직접적인 하위 개체는, 오직 imp를 노출 묘사에 기초하고 그것의 노출의 타입을 배너, 비디오 및 네이티브 중 적어도 하나를 필요로 하기 때문에 그것 중 하나를 명시하고 기술적으로 요구한다. 노출이 선택적으로
비공개 시장으로 설정될 수 있다.
입찰 요청에 다른 하위 개체는 타켓팅 및 가격 결정을 내릴 입찰자에게 도움이 되는 정보를 다양한 형태로 제공합니다. 이것은 사용자가 사용하는 장치, 위치, 규제 제약, 그리고 콘텐츠와 미디어에 대한 세부 정보를 포함한다.
//후자에서 사이트의 차이(즉, 웹사이트) 및 응용프로그램(모바일, 비 브라우저)이 있다. DistributionChannel(유통채널)이라고 불리는 추상화 클래스는 입찰 요청이 사이트 또는 앱 하나에 관련되어 있음을 나타내기 위해 단지 모델링 개념이지만, 둘 다를 포함하지는 않는다(둘 중 하나만 관계되어있음). 사이트와 응용프로그램은 상기의 게시자, 컨텐츠 및 컨텐츠 제작자에 대한 데이터에 의해 설명될 수 있다.
위 모델에 없는 오브젝트는 확장 오브젝트입니다.
BidRequest - 최상위 오브젝트입니다.
Imp - 특정 노출의 설명 컨테이너, 최소한 1개의 요청이 있어야한다.
Banner - 배너 노출에 대한 세부사항, 또는 비디오 컴패니언 광고
Video - 동영상 노출 또는 네이티브 노출의 영상 데이터에 대한 세부 사항
Native - 네이티브 광고 규격에 부합하는 고유의 노출에 대한 컨테이너
Site - 노출을 요구하는 웹사이트의 세부 사항
App - 노출을 요구하는 앱의 세부 사항
Publisher - 컨텐츠를 제어하고 사이트 또는 앱에 배포하는 엔티티(기업)
Content - 광고가 표시되는 내에 게시된 콘텐츠 자체에 대한 세부 사항
Producer - 콘텐츠의 생산자 (e.g syndication)
Device - 내용 및 노출이 표시되는 Device 정보
Geo - 상위 개체에 따른 Device 또는 사용자의 홈베이스의 위치
User - Device를 사용하는 사용자, 광고 대상자
Data - 특정 데이터 소스에서 추가적인 사용자 타켓팅 데이터 컬렉션
Segment - 사용자에게서 온 특정 데이터 소스 중에 특정 데이터 포인트
Regs - 이 입찰 요청에 있는 모든 노출 효과에서 규정하는 조건
Pmp - 비공개 시장(Privacy Market Place)의 노출 컬렉션
Deal - 판매자와 구매자 사이의 노출에 관한 조건을 처리
3.2 Object Specifications
오브젝트의 규칙
1. "required" attribute를 생략할 경우 프로토콜이 기술적으로 break됩니다.
2. "recommened" 는 일부 선택적 속성 중 중요도가 높은 속성에 표시된다.
3. default값을 명시적으로 지정하지 않는 한, 생략된 속성은 'unknown'으로 표시
3.2.1 Object:BidRequest
최상위 입찰 요청 Object는 세계적으로 유일한 입찰 요청 또는 AuctionId가 포함되어있습니다. 이 id attribute는 최소한 하나의 객체를 노출하기 위해 필요합니다.(3.2.2)
다른 속성들은 모든 노출이 제공되는데 적용되는 규칙 및 제한 사항을 설정하는 객체입니다.
잠재적인 구매자에게 상세한 데이터를 제공하는 여러 하위 객체도 있다. 이 중 노출이 표시되는 publish 미디어의 유형을 설명하는 사이트 및 앱 객체도 있습니다. 이러한 객체는 추천되지만, 미디어의 브라우저 기반의 웹 콘텐츠 또는 비-브라우저 애플리케이션에 따라 bid request에 꼭 필요한 요소로 적용되기도 한다.
id(String, required) - exchange에 의해 제공되는 bid request의 유니크아이디.
imp(object array, required) - 제공되는 노출 수를 나타내는 Imp객체(3.2.2)의 배열 최소 하나의 Imp객체를 필요로 한다.
site(object, recommended) - publisher의 웹사이트에 대한 사이트 객체(3.2.6)의 세부 사항. 웹사이트에만 적용 및 추천가능
app(object, recommended) - publisher의 응용프로그램 객체(3.2.7)에 대한 세부 사항 앱에만 적용 및 추천 가능
device(object, recommended) - 노출이 전달 될 사용자의 장치에 대한 장치 객체(3.2.11)의 세부 사항
user(object, recommended) - 기기 사용자에 대한 사용자 객체(3.2.13)의 세부 사항, 광고 대상
test(integer, default 0) - 경매를 청구하지 않는 테스트 모드(0 = 라이브모드, 1 = 테스트모드)
at(integer, dafault 2) - 경매 유형, 1=우선 가격(우선 순위 경매), 2=두번째 가격(차선 순위 경매).
exchange별 입찰 유형은 500보다 큰 값을 사용하여 정의 할 수 있다.
tmax(integer) - (밀리초) 입찰에 참여하기 위한 밀리세컨드 단위 최대 지연시간. 값은 오프라인으로 전달.
wseat(string array) - 경매에 참여할 수 있는 바이어 입찰자격 코드 리스트. (Seat ID로 표현)
allimps(integer, default 0) - Exchange가 제공하는 동시에 같은 광고주 광고를 여러개 게제하는 기능(road-blocking)을 지원하는 상황에서 사용할 수 있는 노출을 모두 나타낸다는 것을 확인 할 수 있는 Flag를 나타냅니다. (예를 들어, 웹페이지의 모든 pre/mid/post 롤 등의 모든 영상 스팟)
0=없거나 unknown(확인 불가), 1=제공하는 노출이 사용할 수 있는 모든 것을 나타낸다.
cur(string array) - ISO-4217 알파 코드를 사용하여 입찰요청에 입찰에 대한 허용 통화(화폐)의 배열입니다.
통화를 하나만 사용할 경우에는 이 파라메터는 필요 없음.
bcat(string array) - IAB의 콘텐츠 카테고리를 사용하여 차단된 광고주 카테고리(5.1에서 상세 설명)
badv(string array) - 자신의 도메인으로 광고주의 차단 목록 (ex. ford.com)
regs(object) - 이 요청에 대한 효력, 산업, 법률 및 정부 규제를 지정하는 사무 처리 규정 객체(3.2.16)
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.2 Object: Imp
이 객체는 광고 게재 위치 또는 경매되는 노출을 설명합니다. 한 페이지에 있는 모든 광고 지면을 묶음으로 판매하는
Exchange에서는 하나의 Bid Request에 여러 개의 Imp obj를 포함할 수 있습니다. 각각의 Imp 객체는 bid가
개별적으로 참조할 있도록 유니크한 ID값을 필수로 요구하고 있습니다.
배너(3.2.3), 비디오(3.2.4), 네이티브(3.2.5)의 존재는 Imp 객체의 하위 객체가 제공하는 노출의 유형을
나타냅니다. publisher는 일반적인 경우는 하나만 선택 가능하지만, 재량껏 혼합 할 수도 있습니다. 그러나
노출에 대한 특정 입찰가가 제공하는 유형 중 하나를 꼭 따라야합니다.
id(string, required) - 입찰 요청의 컨텍스트 내에서 imp 객체에 대한 고유 식별자(일반적으로 1에서 시작해서 증가)
banner(object) - 광고 노출을 배너로 할 경우 필요한 객체
video(object) - 광고 노출을 비디오로 할 경우 필요한 객체
native(object) - 광고 노출을 네이티브로 할 경우 필요한 객체
displaymanager(string) - 광고 중개 파트너, SDK 기술, 또는 광고를 렌더링(전시) 하는 player의 이름(보통 비디오나 모바일). 일부 광고 서버에서는 파트너가 광고 코드를 커스텀하는 용도로 사용됩니다. 비디오나 앱 광고를 노출할 때 추천
displaymanagerver(string) - 광고 중개 파트너, SDK 기술, 또는 광고를 렌더링 하는 player의 버전(보통 비디오나 모바일). 일부 광고 서버에서 파트너가 광고 코드를 커스텀하는 용도로 사용됩니다. 비디오나 앱 광고를 노출할 때 추천
instl(integer, default 0) - 1=광고가 삽입광고(인터스티셜 광고)이거나 전체화면, 0=그렇지 않음.
tagid(string) - 특정 광고 게재 위치 또는 경매를 시작 하는 데 사용 된 광고 태그의 식별자
이슈의 디버깅을 위해서 사용되거나, 구매 최적화에 유용합니다.
bidfloor(float, default 0) - 노출의 최소 입찰가. CPM 단위로 표현.
bidfloorcur(string, default "USD") - 화폐 단위, 현재는 ISO-4217 알파 코드를 이용하여 지정.
exchange에 의해 허용되는 경우 입찰자에 의해 반환 된 화폐 단위가 다를 수 있습니다.
secure(integer) - 노출이 보안 HTTPS URL createive assets이나 마크업을 필요로 할 경우 나타내는 플래그
0=non-secure, 1=secure. 생략된 경우, 안전한 상태를 알 수 있지만, HTTP 지원인 경우도 염두에 두어야한다.
iframebuster(string array) - 지원되는 확장 iFrame파일 이름 리스트. Exchange 마다 다르다.
pmp(object) - impression 객체에 대한 PMP 내용을 담을 파라메터. PMP Object가 들어간다.
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.3 Object:Banner
Banner는 노출의 가장 일반적인 유형입니다. Imp 객체의 하위 객체. "Banner"는 여기서는 간단한 정적 이미지,
확장형 광고 단위를포함하는 것, 또는 배너-비디오 형태가 될 수 있다. (더 일반화 및 완전한 기능을 갖춘 동영상
광고 단위(3.2.4)에서 비디오 객체를 참조) Banner 객체의 배열 또한 VAST 사양에 정의 된 옵션 컴패니언 광고를
설명하는 Video 객체 또는 Audio 객체 내에서 나타날 수 있습니다.
w(integer, recommended) - 노출의 가로길이(DIPS). Format 객체가 지정되있지 않은 경우, required.
h(integer, recommended) - 노출의 세로길이(DIPS). Format 객체가 지정되있지 않은 경우, required.
format(object array) - 허용되는 배너의 크기를 나타내는 format 객체가 들어감. format 객체를 명시하지 않을 경우w, h가 필수로 요구됩니다.
wmax(integer, Deprecated) - 노출의 픽셀단위 최대 가로길이. w 값과 함께 포함된 경우, w는 권장되거나,
바람직한 폭 넓이로 해석
hmax(integer, Deprecated) - 노출의 픽셀단위 최대 세로 길이. h 값과 함께 포함된 경우, h는 권장되거나,
바람직한 세로 길이로 해석
wmin(integer) - 노출의 픽셀단위 최소 가로길이. w 값과 함께 포함된 경우, w는 권장되거나,
바람직한 폭 넓이로 해석
hmin(integer) - 노출의 픽셀단위 최소 세로 길이. h 값과 함께 포함된 경우, h는 권장되거나,
바람직한 세로 길이로 해석
id(string) - Banner 객체의 유일성을 띄는 값. 배너 객체가 컴패니언 광고의 배열을 표현하기 위해 비디오 객체에서 사용되는 경우 추천.
btype (integer array) - 차단된 배너 광고 유형(5.2). 빈 값일 경우 모두 허용으로 간주.
battr (integer array) - 차단된 광고물 속성(5.3). 빈 값일 경우 모두 허용으로 간주.
pos (integer) - 화면의 광고 스크린 포지션, 위치(5.4)
mimes (string array) - 컨텐츠 MIME 속성 지원. 가장 인기 있는 속성은 "application/x-shockwave-flash",
"image/jpg", "image/gif"다.
topframe (integer) - 배너가 최상위 프레임에 전송 되는지, 아니면 iFrame에 전송되는 지를 나타내는 플래그.
0 = 그렇지 않다. 1 = 최상위 프레임에 전송된다.
expdir (integer array) - 확장 광고 속성을 설정(5.5)
api (integer array) - 이 노출에 대해 지원되는 API 프레임 워크 목록(5.6 참조). API를 명시하지 않을 경우,
지원되지 않는 것으로 한다.
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.4 Object:Video
이 객체는 인스트림 동영상 노출을 나타냅니다. 필드의 대부분은 "required"는 아니지만, 최소한의 트랜잭션이
가능하게 하는 것이 포함되는 것이 바람직하고, 필요한 경우 미세 제어를 사용 할 수도 있습니다. OpenRTB 비디오는
일반적으로 VAST 표준 준수를 가정합니다. 컴패니언 광고의 개념은 선택으로 배너 객체의 배열을 포함하여 지원됩니다.
mimes (string array, required) - 컨텐츠의 MIME 타입을 지원. 가장 인기있는 속성은 윈도우 media를 사용하는 "video/x-ms-wmv", flash video를 사용하는 "video/x-flv"입니다.
minduration (integer, recommended) - 비디오의 최소 지속 시간(초)
maxduration (integer, recommended) - 비디오의 최대 지속 시간(초)
protocols (integer array, recommended) - video 입찰 응답을 지원하는 프로토콜 배열. 5.8에서 상세 설명.
최소한 하나 이상의 프로토콜이 protocols의 속성에서 정의되어야 한다.
w (integer, recommended) - 비디오 플레이어의 DIPS 단위 가로길이.
h (integer, recommended) - 비디오 플레이어의 DIPS 단위 세로길이.
startdelay (integer, recommended) - 프리 롤, 미드 롤 또는 포스트 롤 광고 게재 위치에 대한 초 시작
지연 시간을 나타냅니다. 5.10에서 일반적인 값을 제안.
linearity (integer) - 노출에 대해 순서가 있는 광고인지 아닌지 표현. 지정하지 않을 경우, 모두 허락되는 것으로 간주. 5.7에서 상세 설명
sequence (integer) - 여러 광고 노출이 같은 입찰 요청에 제공되는 경우. 이 필드(일련 번호)는 여러 광고 소재를
조율해서 복수개의 광고물을 순서대로 전송합니다.
battr (integer array) - 차단된 광고물 속성 (5.3)
maxextended (integer) - 최대 연장된 재생 시간. 값이 0이거나 비어있을 경우 시간 연장을 허용하지 않는다.
-1을 넣을 경우 제한이 없이 허용하고, 0보다 클 경우, 입력 값을 초(sec)로 보고, 플레이하는 동안 최대 확장으로
maxduration 값을 넘어선 시간 이상 재생.
minbitrate (integer) - 최소 bit rate(Kbps). exchange는 세팅을 통해 publisher 마다 동적 또는 보편적으로
설정할 수 있습니다.
maxbitrate (integer) - 최대 bit rate(Kbps). exchange는 세팅을 통해 publisher 마다 동적 또는 보편적으로
설정할 수 있습니다.
boxingallowed (integer, default 1) - 익스체인지 매체가 16×9 화면에서 플레이하기 위해 4×3 비율의 컨텐츠 레터박스를 금지하면 이 필드는 false 로 셋팅되어야 합니다. 기본값은 true 로 화면에 맞는 컨텐츠 레터 박스를 허락하도록 합니다. 레터박스를 허락할 경우 “1”, 그렇지 않을 경우 “0” 으로 설정합니다.
playbackmethod (integer array) - playback method를 설정하는 곳.auto sound, click-to-play, mouse-over
등이 있으며, 따로 지정하지 않을 경우 모두 허용하는 것으로 간주(5.9).
delivery (integer array) - delivery method를 지원.(streaming, progressive 중 선택(5.13)).
따로 지정하지 않을 경우 모두 지원하는 것으로 간주.
pos (integer) - 스크린의 광고 포지션, 위치(5.4)
companionad (object array) - 컴패니언 광고를 사용할 수 있는 경우 Banner 객체를 배열로 넣는다.
api (integer array) - 지원하는 API framework의 목록(5.6). 명시적으로 api 리스트를 지정하지 않을경우 아무것도 지원되지 않는다.
companiontype (integer array) - VAST 컴패니언 광고 타입을 지원(static resource, html resource, iframe resource).
(5.12). 컴패니언ad array에 컴패니언배너 객체가 포함되있을 경우 추천되는 파라메터.
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.5 Object : Audio
이 객체는 오디오 노출을 나타내는 것입니다. 필드의 대부분은 "required"는 아니지만, 최소한의 트랜잭션이 가능하게 하는 것이 포함되는 것이 바람직하고, 필요한 경우 미세 제어를 사용 할 수도 있습니다. OpenRTB의 Audio는 DAAST 표준을 채택하고 있습니다.
mimes (string array, required) - 컨텐츠 MIME Type 설정("audio/mp4"가 가장 인기가 많음)
minduration (integer, recommended) - 오디오 광고 최소 재생 시간.
maxduration (integer, recommended) - 오디오 광고 최대 재생 시간.
protocols (integer array, recommended) - 오디오를 지원할 프로토콜 배열
startdelay (integer, recommended) - 프리 롤/미드 롤/ 포스트 롤 중에 선택 (-1 = 중앙 미드롤, -2 = 오디오가 끝난 시점, 0> = 입력한 값만큼 딜레이)
sequence (integer) - 여러 광고 노출이 같은 입찰 요청에 제공되는 경우. 이 필드(일련 번호)는 여러 광고 소재를
조율해서 복수개의 광고물을 순서대로 전송합니다.
battr (integer array) - 차단한 광고물 속성
maxextended (integer) - 최대 연장된 재생 시간. 값이 0이거나 비어있을 경우 시간 연장을 허용하지 않는다.
-1을 넣을 경우 제한이 없이 허용하고, 0보다 클 경우, 입력 값을 초(sec)로 보고, 플레이하는 동안 최대 확장으로
maxduration 값을 넘어선 시간 이상 재생.
minbitrate (integer) - 최소 bit rate(Kbps). exchange는 세팅을 통해 publisher 마다 동적 또는 보편적으로
설정할 수 있습니다.
maxbitrate (integer) - 최대 bit rate(Kbps). exchange는 세팅을 통해 publisher 마다 동적 또는 보편적으로
설정할 수 있습니다.
delivery (integer array) - delivery method를 지원.(streaming, progressive 중 선택(5.13)).
따로 지정하지 않을 경우 모두 지원하는 것으로 간주.
companionad (object array) - 컴패니언 광고를 사용할 수 있는 경우 Banner 객체를 배열로 넣는다.
api (integer array) - 지원하는 API framework의 목록(5.6). 명시적으로 api 리스트를 지정하지 않을경우 아무것도 지원되지 않는다.
companiontype (integer array) - DAAST 컴패니언 광고 타입을 지원(static resource, html resource, iframe resource).
(5.12). 컴패니언ad array에 컴패니언배너 객체가 포함되있을 경우 추천되는 파라메터.
maxseq (integer) - 광고 창(pod)에 재생할 수 있는 광고의 최대 수
feed (integer) - 광고의 feed type (1= Single Feed, 2= Multiple Feed, 3= FM/AM Broadcast, 4= podCast)
stitched (integer) - 오디오가 stitch를 표시하는가? 0 = no, 1 = yes
nvol (integer) - 볼륨 표준화 모드(5.15)
dl (integer) - 오디오 파일을 다운 받을 수 있게 만들 것인가? 0= no, 1= yes
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.6 Object Native
이 객체는 네이티브 타입 노출에 대한 것입니다. 네이티브 광고 단위는 주위의 컨텐츠와 완벽하게 혼합되기
위한 것입니다.(트위터나 페이스북 게시물). 응답(response)은 퍼블리셔가 세밀하게 조정할 수 있게 여유있게
구조화 해야합니다.
네이티브를 개발하는 소규모 그룹에서는 네이티브 광고 스펙을 OpenRTB의 기본 컴패니언 스펙이라고 말합니다.
네이티브 광고 단위는 요청 파라메터와 응답 마크업 구조로 정의합니다.이 객체의 특정 파라메터는 네이티브 광고
스펙의 후원하에 개별적으로 발전할 수 있도록 불투명한 문자열로 요청 파라메터를 수송하는 수단을 제공합니다.
마찬가지로, 서비스되는 광고 마크업은 스펙에 따라 구성됩니다.
request (string, required) - 네이티브 광고 스펙을 준수하는 요청 payload.
ver (string, recommended) - 네이티브 광고 스펙 요청 컴파일의 버전. 효율적인 파싱을 위해 매우 추천.
api (integer array) - 노출을 지원하는 API framework의 목록(5.6). 명시적으로 api 리스트를 지정하지 않을경우
아무것도 지원되지 않는다.
battr (integer array) - 차단된 크리에이티브 속성(creative attritubes). (5.3)
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
- 3.2.7 Object:Format
배너 객체의 Size 허용치를 설정하는 객체. 일반적으로 객체를 배열로 넣어서 여러가지 크기를 지원.
w (integer, recommended) - 디바이스 가로 길이 (DIPS)
h (integer, recommended) - 디바이스 세로 길이 (DIPS)
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.8 Object:Site
이 객체는 비브라우저 어플리케이션과 반대인 웹사이트에서 광고를 지원하면 포함되어야한다.
입찰 요청에는 Site 객체와 App객체가 함께 포함되면 절대 안된다. 최소한, 그 사이트 ID 또는 페이지의 URL을 제공하는 것이 좋겠지만, 반드시 필수는 아니다.
id (string, recommended) - exchange에 명시되있는 site ID
name (string) - 사이트이름(퍼블리셔의 요청에 따라 마스킹되어있을 수도 있음)
domain (string) - 사이트 도메인(www.foo.com)
cat (string array) - 사이트의 IAB 컨텐츠 카테고리 배열. (5.1 참조)
sectioncat (string array) - 사이트의 현재 섹션을 묘사하는 IAB 컨텐츠 카테고리 배열(5.1)
pagecat (string array) - 사이트의 현재 페이지나 뷰를 묘사하는 IAB 컨텐츠 카테고리 배열(5.1)
page (string) - 광고가 보여질(impression) 페이지의 URL
ref (string) - 현재 페이지로 안내(navigation)된 referer URL
search (string) - 현재 페이지로 안내(navigation)된 검색어(search string)
mobile (integer) - 모바일에 최적화된 신호인가? 0=no, 1=yes
privacypolicy (integer) - 사이트가 개인정보보호를 표시하는가? 0=no, 1=yes
publisher (object) - 사이트의 퍼블리셔의 상세 정보를 담은 객체(3.2.8)
content (object) - 사이트의 컨텐츠의 상세 정보를 담은 객체(3.2.9)
keywords (string) - 콤마로 분리한 사이트에 대한 키워드 목록
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.9 Object:App
이 오브젝트는 광고가 웹사이트와 반대인 비브라우저 어플리케이션(일반적으로 모바일)에서 지원하면 포함되어야한다. 입찰 요청은 app과 site오브젝트를 둘 다 포함 하면 안된다. 최소한, App Id나 번들을 제공할 순 있지만, 필수사항은 아니다.
id (string, recommended) - Exchange의 명시된 App Id
name (string) - 앱 이름(퍼블리셔의 요청에 들어있을)
bundle (string) - 안드로이드는 어플리케이션 번들이나 패키지명(com.foo.mygame). iOS는 번호 ID.
여러 exchange에 걸쳐 unique한 Id가 되야함.
domain (string) - 앱의 도메인(mygame.foo.com)
storeurl (string) - 앱이 올라가있는 스토어 url
cat (string array) - 앱에 대한 IAB 컨텐츠 카테고리 배열(5.1)
sectioncat (string array) - 앱의 현재 섹션에 대한 IAB 컨텐츠 카테고리 배열(5.1)
pagecat (string array) - 앱의 현재 페이지나 뷰의 묘사에 대한 IAB 컨텐츠 카테고리 배열(5.1)
ver (string) - 앱 버전
privacypolicy (integer) - 앱이 개인 정보 보호 정책을 표시하는가? 0=no, 1=yes
paid (integer) - 0=공짜 앱, 1=유료 앱 버전
publisher (object) - 퍼블리셔에 대한 상세정보를 담고 있는 오브젝트(3.2.8)
content (object) - 앱에 들어있는 컨텐츠에 대한 상세 정보 오브젝트(3.2.9)
keywords (string) - 앱을 설명할 수 있는 키워드 목록을 콤마로 나눠서 전송
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.10 Object:Publisher
이 오브젝트는 광고 미디어가 보여질 퍼블리셔에 대한 설명을 담는다. 퍼블리셔는 일반적으로 OpenRTB의 트랜잭션에서 seller로 명시된다.
id (string) - exchange에 명시되어있는 퍼블리셔 아이디
name (string) - 퍼블리셔 이름(퍼블리셔 요청에 들어있을)
cat (string array) - 퍼블리셔를 설명하는 IAB 컨텐츠 카테고리(5.1)
domain (string) - 퍼블리셔의 최상위 레벨 도메인(publisher.com)
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.11 Object:Content
이 객체는 신디케이트 또는 비 신디케이트 콘텐츠의 노출을 표현하는 것입니다. 이 객체는 신디케이트 컨텐츠에 포함된 노출이 퍼블리셔의 일반적인 컨텐츠와 일치하지 않을 경우 유용합니다.
exchange에 혹시 신디케이션 메소드의 결과로, 콘텐츠가 실행되는 페이지에 대한 정보가 없을 수도 있습니다. 예를 들어 비디오 노출이 될 곳이 iframe인지 웹인지 디바이스인지 모를 수도 있습니다.
id (string) - 컨텐츠를 구분할 수 있는 유니크한 ID
episode (integer) - 에피소드 번호(일반적으로 비디오 컨텐츠에 적용)
title (string) - 컨텐츠 제목.
series (string) - 컨텐츠 시리즈.
season (string) - 컨텐츠 시즌. 일반적으로 비디오 컨텐츠에 사용(e.q. season 3)
artist (string) - 컨텐츠에 적립된 아티스트(credited)
genre (string) - 컨텐츠를 설명할 수 있는 최선의 장르(e.q rock, pop)
album (string) - 컨텐츠가 포함되어있는 앨범명(일반적으로 audio일 경우 사용)
isrc (string) - 국제 표준 레코딩 코드는 ISO-3901에서 선택.
producer (object) - 컨텐츠 프로듀서(3.2.10)에 대한 상세 정보
url (string) - 바이 사이드의 문맥 분석이나 검토를 위한 컨텐츠의 원본 URL
cat (string array) - 컨텐츠 프로듀서를 설명하는 IAB 컨텐츠 카테고리 배열(5.1)
prodq (integer) - 생산 품질(5.11)
videoquality (integer, deprecated) - IAB 분류에 따른 비디오 품질(5.11), 추후 prodq만 제공할 예정.
context (integer) - 컨텐츠의 타입(게임, 비디오, 텍스트 등). (5.14)
contentrating (string) - 컨텐츠 등급(MPAA)
userrating (string) - 컨텐츠의 유저 등급(별 또는 좋아요 등등)
qagmediaratin (integer) - QAG 가이드 라인에 따른 미디어 평가.
keywords (string) - 콤마로 나뉘어진 컨텐츠 설명의 키워드 목록
livestream (integer) - 0=라이브아님, 1=라이브 컨텐츠(live video stream, 라이브 블로그)
sourcerelationship (integer) - 0=indirect, 1=direct
len (integer) - 컨텐츠 초의 길이. 비디오나 오디오에 적당함.
language (string) - 컨텐츠 언어를 ISO-639-1-alpha-2를 사용하여 표현
embeddable (integer) - QAG Video를 근거로 임베드가능한(내장 가능한) 콘텐츠인지 확인(0=no, 1=yes)
data (object array) - 추가적인 컨텐츠 데이터. 각각의 데이터 객체(3.2.16)은
다른 데이터 소스를 대표한다.
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.12 Object:Producer
이 객체는 광고에 보여지는 콘텐츠의 제작자를 명시한다. 콘텐츠가 신디케이트하고 제작자 및 게시자가 반드시 동일한 엔티티가 없을 때와 다른 퍼블리셔와 분산될 수 있을 때 특히 유용하다.
id (string) - 컨텐츠 프로듀서 또는 원작자 ID. 컨텐츠가 신디케이트하거나 embed 태그를
사용하여 사이트에 게시 할 경우 유용
name (string) - 컨텐츠 프로듀서나 원작자 이름(e.g. "워너 브라더스").
cat (string array) - 컨텐츠 프로듀서를 표현하는 IAB 컨텐츠 카테고리 배열. (5.1)
domain (string) - 컨텐츠 프로듀서의 최상단 도메인(e.g. producer.com)
ext (object) - OpenRTB의 exchange에 고유 확장에 대한 placeholder
3.2.13 Object:Device
이 객체는 사용자와 상호 작용되는 디바이스에 대한 정보를 제공한다. 디바이스 정보는 하드웨어, 플랫폼,
위치 및 내장 데이터를 포함한다. 디바이스는 모바일 핸드셋, 데스크탑 컴퓨터, 또는 다른 디지털 장치를 말한다.
보통 가장 중요하게 여기는 필드는 IP 주소나 Geo 객체에 들어가는 위치 기반 정보입니다.
ua (string, recommended) - 브라우저 유저 agent 정보
geo (object, recommended) - Geo 객체(3.2.12)로 정의된 유저 디바이스의 현재 위치
dnt (integer, recommended) - 브라우저에서 헤더에 설정된 표준 플래그 "Do not track(추적하지 않음)"가
false 이면 '0 = 무제한 추적', true로 되있으면 '1= 추적하지 않음'
imt (integer, recommended) - "광고 추적 제한" 상업적으로 승인된 만큼 추적(e.g iOS, Android)
0=추적에 제한이 없다. 1=추적은 상업 가이드 라인에 따라 제한되어야한다.
ip (string, recommended) - 디바이스의 IPv4 주소
ipv6 (string) - 디바이스의 IPv6 주소
devicetype (integer) - 디바이스의 표준 타입(5.17에 정의)
make (string) - 디바이스 제작사(e.g Apple)
model (string) - 디바이스 모델(e.g iPhone)
os (string) - 디바이스 OS (e.g iOS)
osv (string) - 디바이스 OS 버전(e.g 3.1.2)
hwv (string) - 디바이스 하드웨어 버전(e.g iPhon 5S일 경우 "5S")
h (integer) - 픽셀단위의 물리적인 스크린 높이
w (integer) - 픽셀단위의 물리적인 스크린 가로 길이
ppi (integer) - 스크린의 인치 당 픽셀 수
pxratio (float) - 디바이스 독립적 픽셀과 실제 픽셀 비율
js (integer) - javascript를 지원할 것인가? 0=no, 1=yes
geofetch(integer) - 배너에서 javascript의 geolocation Api를 사용가능하게 할것인가
0=no, 1=yes
flashver (string) - 브라우저에서 지원되는 Flash의 버전
language (string) - ISO-639-1-alpha-2를 사용한 브라우저 언어
carrier (string) - carrier 또는 ISP. "WIFI"는 높은 대역폭을 나타내도록 모바일에서 사용됨
connectiontype (integer) - 네트워크 커넥션 타입(5.18)
ifa (string) - 광고주가 사용할 수 있도록 허가된 깔끔한 ID(해시 생략)
didshal (string) - 하드웨어 디바이스 ID(e.g IMEI). SHA1로 해쉬(암호화)
didmd5 (string) - 하드웨어 디바이스 ID(e.g IMEI). MD5로 해쉬
dpidsha1 (string) - 플랫폼 디바이스 ID (e.g android Id). SHA1로 해쉬
dpidmd5 (string) - 플랫폼 디바이스 ID (e.g android Id). MD5로 해쉬
macsha1 (string) - 디바이스의 맥주소. SHA1로 해쉬
macmd5 (string) - 디바이스 맥주소. MD5로 해쉬
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.14 Object:Geo
이 객체는 지리적 위치를 지정하기 위한 다양한 방법을 캡슐화 합니다. Device객체에 종속된 경우, 사용자의 현재 위치로 해석 될 수 있는 장치의 위치를 나타낸다. User 객체에 종속된 경우, 사용자의 홈베이스의 위치를 나타낸다(즉, 반드시 현재 위치인 것은 아니다).
type 속성에 묘사 된 정확성을 준수하는 경우 lat/lon 속성이 전달됩니다. 예를 들면, 우편 번호나 지역 번호는 통과될 수 없습니다.
lat (float) - 음수가 남쪽인 -90.0부터 +90.0 위도
lon (float) - 음수가 서쪽인 -180.0 부터 +180.0 경도
type (integer) - 위치 데이터 소스. lat/lon을 지정 안했을 경우 추천(5.18)
accuracy(integer) - meter의 예상 위치 정확도; 위도/경도가 디바이스의 위치 서비스에서 지정 및 도출 됬을 때 권장. 장치에서 보낸 정보가 확실한지 유의할 것. OS에서 주는 정보가 정확한 것인가 특정 문서를 통해 참조할 것 (android, iOS).
lastfix(integer) - 입력 값(sec) 이후에 위치 정보를 수정한다. 장치가 여러 곳에서 위치 데이터를 읽어와서 복사 할 수 있으니 유의할 것.
ipservice(integer) - 서비스 또는 제공자는 해당하는 경우 IP 주소에서 위치 정보를 결정하는데 사용(5.21에 값 지정)
country (string) - ISO-3166-1-alpha-3을 사용한 국가 코드
region (string) - ISO-3166-2를 사용한 지역 코드. 2자리 코드
regionfips104 (string) - FIPS 10-4 표기법을 사용한 나라의 지역코드. OpenRTB에서는 지원하지만,
2008년 이후로 NIST에 의해 철회됨.
metro (string) - 구글 지하철 코드. 닐슨의 DMAs와 비슷하지만 완벽히 같진 않음.코드에 대한 링크 부록 A를 참고.
city (string) - 교환과 전송 위치를 UN코드를 사용하여 도시를 나타냄. 코드에 대한 링크 부록 A를 참고
zip (string) - 우편 번호 코드
utcoffset (integer) - UTC에서 시간 (분)+/-로 현재 시간을 나타냄
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.15 Object:User
이 객체는 알려진 정보 또는 디바이스를 사용하는 사람의 정보를 포함하고 있습니다.(광고 관객).
이 유저 id는 exchange할 경우 사용될 아이디이며, 개인정보 보호 정책을 적용 받을 수 있습니다. 그러나, ID는
빈도와 리타겟팅으로 사용되기 위한 역할을 하기 떄문에 합리적으로 저장되어져야합니다.
id (string, recommended) - exchange에서 사용될 유저의 ID. id나 buyerid 중 최소 하나는 추천되어져야한다.
buyerid (string, recommended) - buyer를 위해 Exchange에서 매핑시킨 buyer user ID.
yob (integer) - 4자리 정수 출생년도
gender (string) - 성별. "M"=male, "F"=female, "O"=known
keywords (string) - 콤마로 분리된 키워드, 관심, 또는 의도 목록
customdata (string) - 익스체인지에서 지원할 경우 비더가 익스체인지의 쿠키에 저장한 커스텀 데이터입니다.
쿠키에 안전한 base85 인코딩되어 있을 수 있으며 포맷은 상관없습니다. 이 필드는 사용자 정보를 저장하는 데 유용합니다. 주의: JSON 인코딩은 반드시 이스케이프된 인용부호를 이용해야 합니다.
geo (object) - geo 객체에 의해 정의된 유저의 홈베이스 기반 위치 정보.
data (object array) - 추가적인 유저 정보. 각각의 data 객체(3.2.14)는 다른 데이터 소스를 나타낸다.
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.16 Object:Data
이 데이터와 세그먼트 객체는 사용자에 대한 추가 데이터를 지정할 수 있습니다. id 필드에 지정된 대로 이 데이터는 exchange 자체 또는 제 3자의 제공 업체 등 여러가지를 추가 할 수 있다. 입찰 요청은 여러 data 객체를 혼합하여 제공 할 수 있다.
id (string) - exchange에서 명시하는 데이터 제공자 ID
name (string) - exchange에서 명시하는 데이터 제공자 이름
segment (object array) - (3.2.15)실제 데이터 값을 포함하는 segment 객체 배열
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.17 Object:Segment
이 객체는 기본적으로 사용자에 대한 데이터의 특정 단위를 전달하는 '키-값' 쌍으로 구성되어있습니다. 부모 data 객체는 주어진 데이터 공급자에서 같은 값의 모음입니다. 세그먼트 이름과 값 옵션은 입찰자에게 exchange에서 먼저 제공 되어야합니다.
id (string) - data segment에 명시된 데이터 제공자 ID
name (string) - data segment에 명시된 데이터 제공자 이름
value (string) - data segment 값의 문자열 표현입니다. 이 데이터를 전달하는 방법은 사전에 오프라인으로 데이터
제공자와 협의되어 있어야 합니다.(예를 들면 성별은 "male" 또는 "female" 나이는 "30-40")
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.18 Object: Regs
이 객체는 요청에 적용되는 법률, 정부 또는 산업 규정이 포함되어 있습니다. COPPA 플래그 신호는 요청이 미국 아동 온라인 개인 정보 보호법("COPPA")에 대한 미국 연방 통상위원회(Federal Trade Commission)의 규정에 해당하는 지 여부를 파악한다. 더욱 자세한 내용은 7.1에서 설명될 것이다.
coppa (integer) - 이 요청은 미국 FTC에 의해 설립된 COPPA 규정을 준수하는지 여부를 판별(0=no, 1=yes)
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.19 Object:Pmp
이 객체는 구매자와 판매자 사이의 직접 거래에 대한 개인 시장 컨테이너의 노출에 해당한다. 실제 거래는 거래 개체의 컬렉션으로 표현된다. 자세한 내용은 7.2에서 설명할 예정
private_auction (integer, default 0) - Deal 객체에 명시된 wseat의 이름으로 된 직접 거래 상품의 입찰 자격
표시를 설정. 0=모든 입찰 허용, 1=입찰가를 그 지정 상품과 조건에 제한한다.
deals (object array) - (3.2.18)이 노출에 적용되는 특정 거래를 deal 객체를 통해 전달
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
3.2.20 Object:Deal
이 객체는 구매자와 판매자 사이에 사전에 체결한 특정 계약을 구성한다. Deal 객체는 PMP 컬렉션과 함께 그 계약의 조건에 따라 사용할 수 있음을 나타낸다.자세한 내용은 7.2에서 다룰 예정입니다.
id (string, required) - 직접거래(direct deal)의 유니크 식별자
bidfloor (float, default 0) - 이 노출의 최소 입찰가를 CPM으로 표현
bidfloorcur (string, default "USD") - ISO-4217 alpha 코드를 사용하여 화폐 단위 표현. exchange에 의해
허용되는 경우 입찰자에 의해 반환된 입찰 화폐와 다를 수 있습니다.
at (integer) - 입찰 요청의 총 입찰 유형 선택에 따라서 선택된다.
1=우선 가격, 2=두번 째 가격(second price plus), 3= bidfloor에 전달된 합의된 거래가격을 의미한다.
wseat (string array) - 구매자 seat 중 화이트리스트는 이 거래에 입찰 할 수 있습니다.
Seat Id는 입찰자 및 Exchange 사이에 우선적으로 전달해야 합니다. 생략은 seat를
제한하지 않는다는 것으로 판단.
wadomain (string array) - 이 거래에 입찰 할 수 있는 광고주 도메인(ex. advertiser.com)의 배열. 생략은 광고주의
제한을 의미하지 않습니다.
ext(object) - OpenRTB의 고유 Exchange 확장 오브젝트에 대한 표시.
'모바일 마케팅용어' 카테고리의 다른 글
모바일 광고 마케팅 용어정리 (0) | 2016.11.29 |
---|---|
OpenRTB 구현 시 참고사항 (0) | 2016.10.07 |
OpenRTB 입찰 응답 파트 (0) | 2016.10.07 |
OpenRTB 기초 (0) | 2016.10.07 |
OpenRTB 개요 (0) | 2016.10.07 |