Impression object
AppLovin RTB bid request는 항상 단일 impression을 전달합니다 (이는 OpenRTB 스키마와 다릅니다).
각 request에는 하나의 impression 객체(imp)가 있습니다.
request의 impression 객체에 banner 객체가 포함되어 있으면 해당 impression은 HTML 및 MRAID 광고를 게재할 수 있습니다.
request에 video 객체가 포함되어 있으면 해당 impression은 VAST 광고를 게재할 수 있습니다.
impression 객체에는 banner 객체, video 하위 객체 또는 둘 다 포함될 수 있습니다.
| Attribute | Description | Always passed? |
|---|
banner | Banner 객체 (참조: Banner object). 이 impression이 banner 광고 기회인 경우 필수입니다. | only for banner impressions |
bidfloor | CPM 최소 입찰 금액. auction에 참여하려면 입찰 가격이 bid floor보다 커야 합니다. 기본 통화는 USD입니다. | no |
displaymanager | SDK가 있는 경우 “applovin”입니다. | no |
displaymanagerver | SDK에서 전달된 AppLovin SDK 버전 (그렇지 않은 경우 전달되지 않음). | no |
exp | auction과 실제 impression 사이에 경과할 수 있는 시간(초)에 대한 권장 사항. 고정값 14400 = 4시간 × 3600초/시간. | yes |
ext | OpenRTB에 대한 exchange 전용 확장 기능의 플레이스홀더. | no |
ext.ad_unit_name | 광고 request를 보낸 AppLovin ad unit. | yes |
ext.skadn | Apple의 SKAdNetwork 지원. 자세한 내용은 OpenRTB SKAdNetwork extension을 참조하십시오. | no, only sent to DSP bidders |
ext.skadn.skadnetids | 퍼블리셔 앱의 Info.plist에 있는 SKAdNetworkItem 항목 중 DSP와 관련된 하위 집합. | yes (if ext.skadn is passed) |
ext.skadn.skadnetlist.max | SKAdNetwork ID의 최대 항목 ID를 포함하는 IABTL 목록. | |
ext.skadn.skadnetlist.excl | IABTL 공유 목록에서 제외할 정수 IABTL 등록 ID의 쉼표로 구분된 목록. | |
ext.skadn.sourceapp | Apple App Store의 퍼블리셔 앱 ID. app.bundle과 일치합니다. | yes (if ext.skadn is passed) |
ext.skadn.version | 지원되는 SKAdNetwork 버전. 항상 "2.0" 이상입니다. OS 버전과 SDK 버전에 모두 의존합니다. 참고: SKAdNetwork 2.1 출시와 함께 이 필드는 버전 번호 배열을 지원하는 BidRequest.imp.ext.skadn.versions를 위해 지원 중단(deprecated)되었습니다. | yes (if ext.skadn is passed) |
ext.skadn.versions | 지원되는 SKAdNetwork 버전을 포함하는 문자열 배열. 항상 "2.0" 이상입니다. OS 버전과 SDK 버전에 모두 의존합니다. | yes (if ext.skadn is passed) |
ext.skadnetids | Advanced Bidders에만 관련된 ID. | no |
id | bid request 내 impression의 고유 식별자. 일반적으로 값은 1로 시작하여 «n»개의 impression에 대해 «n»까지 증가합니다. | yes |
instl | impression이 interstitial 기회인지 여부를 나타냅니다. 전체 화면(interstitial)의 경우 1로 설정되고, interstitial을 사용할 수 없는 경우 0으로 설정됩니다. | yes |
metric | Metric 객체의 배열 (참조: Metric object). | no, only sent to DSP bidders |
native | Native 객체 (참조: Native object)—이 impression이 native 광고 기회인 경우 필수입니다. | only for native impressions |
rwdd | 사용자가 광고를 시청한 후 보상을 받는지 여부를 나타냅니다 (여기서 0 = 아니요, 1 = 예). | yes |
secure | impression에 보안 HTTPS URL 크리에이티브 에셋 및 마크업이 필요한지 여부를 나타내는 플래그 (여기서 0 = 비보안, 1 = 보안). 생략된 경우 보안 상태를 알 수 없으나 비보안 HTTP 지원을 가정할 수 있습니다. iOS auction의 경우 이는 항상 1 = 보안이 됩니다. | yes |
tagid | auction을 시작하는 데 사용된 특정 광고 지면 또는 ad tag의 식별자. SDK 비더의 경우 이 impression에 대한 네트워크 지면 ID입니다. | yes |
video | Video 객체 (참조: Video object)—이 impression이 video 광고 기회인 경우 필수입니다. | only for video impressions |
Metric object
| Attribute | Type | Description |
|---|
type | string | exchange에서 큐레이션한 문자열 이름을 사용하여 표시되는 메트릭 유형. 세션 시간(session_duration)은 사용자가 특정 앱에서 보낸 총 시간(초)입니다. 세션 깊이(session_depth)는 사용자가 특정 앱 세션에서 본 총 광고 수입니다. 세션은 사용자가 앱을 종료하면 종료됩니다. 세션 깊이와 광고 포맷별 세션 깊이가 모두 bid request에 존재합니다. 다음은 앱 세션에서 사용자가 본 포맷별 총 광고 수를 나타냅니다:session_depth_bannersession_depth_fullsession_depth_medium_rectanglesession_depth_nativesession_depth_rewarded
|
value | float | 메트릭의 값을 나타내는 숫자. Viewability 유형에는 존재하지 않습니다. 세션 깊이: 사용자가 현재 앱 세션에서 아직 광고를 보지 않았거나 사용자가 30분 동안 비활성 상태였던 경우 0.0으로 설정됩니다. |
vendor | string | exchange에서 큐레이션한 문자열 이름을 사용하는 값의 소스. 제3자가 아닌 exchange 자체가 소스인 경우, 별도로 지정되지 않는 한 항상 EXCHANGE가 사용됩니다. Viewability: Integral Ad Science(IAS)의 경우 ias로 설정하고, Moat의 경우 moat로 설정합니다. 퍼블리셔가 지원하는 파트너에 따라 달라집니다. 하나만 지원되는 경우 하나만 전달됩니다. 둘 다 지원되는 경우 둘 다 전달됩니다. Open Measurement Viewability에는 적용되지 않습니다. |
Video object
| Attribute | Description | Always passed? |
|---|
api | 이 impression에 대해 지원되는 API 프레임워크 목록. 자세한 내용은 OpenRTB Spec 2.5 Table 5.6을 참조하십시오. API가 명시적으로 나열되지 않은 경우 지원되지 않는 것으로 간주됩니다. | no |
battr | 차단된 크리에이티브 속성. 자세한 내용은 OpenRTB Spec 2.5 Table 5.3을 참조하십시오. | yes |
companiontype | 지원되는 VAST 광고 컴패니언 유형. 자세한 내용은 OpenRTB Spec 2.5 Table 5.14를 참조하십시오. 일부 인벤토리는 모든 컴패니언 유형을 지원하고 다른 인벤토리는 정적 유형만 지원합니다. | yes, only sent to DSP bidders |
ext.videotype | rewarded request인 경우 "rewarded" | no |
h | 플레이어의 세로 길이 (픽셀 단위). | yes |
linearity | impression이 선형(linear)이어야 하는지 여부를 나타냅니다. 모든 request에 대해 1입니다. | yes |
maxbitrate | 최대 비트레이트 (Kbps 단위). | no |
maxduration | 최대 video 광고 재생 시간 (초 단위). | yes |
mimes | 지원되는 콘텐츠 MIME 유형. video/mp4가 지원됩니다. | yes |
minbitrate | 최소 비트레이트 (Kbps 단위). | no |
minduration | 최소 video 광고 재생 시간 (초 단위). | yes |
placement | impression의 placement 유형. 자세한 내용은 OpenRTB Spec 2.5 Table 5.9를 참조하십시오. | yes |
playbackmethod | 허용되는 재생 방법. 지정되지 않은 경우 모두 허용되는 것으로 간주합니다. 자세한 내용은 OpenRTB Spec 2.5 Table 5.10을 참조하십시오. | yes |
plcmt | impression의 video placement 하위 유형. AdCOM Specification 1.0의 List: Plcmt Subtypes—Video를 참조하십시오. | yes, only sent to DSP bidders |
pos | 화면상의 광고 위치. 자세한 내용은 OpenRTB Spec 2.5 Table 5.4를 참조하십시오. | no |
protocols | 지원되는 video bid response 프로토콜의 배열. VAST 2, VAST 3, VAST 4가 지원됩니다. 프로토콜은 특정 인벤토리 소스가 지원하는 바를 반영합니다 (일부 인벤토리는 2.0만 지원하고 다른 인벤토리는 2.0과 3.0을 모두 지원함). 자세한 내용은 OpenRTB Spec 2.5 Table 5.8을 참조하십시오. | yes, only sent to DSP bidders |
skipafter | 건너뛰기가 활성화되기 전에 video가 재생되어야 하는 시간(초). 이는 광고를 건너뛸 수 있는 경우에만 적용됩니다. | yes |
skipmin | 총 재생 시간이 이 시간(초)보다 긴 video는 건너뛸 수 있습니다. 이는 광고를 건너뛸 수 있는 경우에만 적용됩니다. | yes |
startdelay | 프리롤, 미드롤 또는 포스트롤 광고 지면의 시작 지연 시간(초)을 나타냅니다. 자세한 내용은 OpenRTB Spec 2.5 Table 5.12를 참조하십시오. | yes |
w | 플레이어의 가로 길이 (픽셀 단위). | yes |
Banner object
| Attribute | Description | Always passed? |
|---|
api | 이 impression에 대해 지원되는 API 프레임워크 목록. 자세한 내용은 OpenRTB Spec 2.5 Table 5.6을 참조하십시오. API가 명시적으로 나열되지 않은 경우 지원되지 않는 것으로 간주됩니다. | no |
battr | banner에 대해 차단된 크리에이티브 속성. 자세한 내용은 OpenRTB Spec 2.5 Table 5.3을 참조하십시오. | yes |
btype | 차단된 banner 유형을 나타내는 정수 배열. 자세한 내용은 OpenRTB Spec 2.5 Table 5.2를 참조하십시오. | yes |
ext.bannertype | rewarded request인 경우 "rewarded" | no |
format | 허용되는 banner 크기를 나타내는 format 객체의 배열. 세로 길이(h) 및 가로 길이(w)를 전달할 수 있습니다. 지정되지 않은 경우 AppLovin은 Bidrequest.imp.banner.h 및 Bidrequest.imp.banner.w 속성을 사용할 것을 권장합니다. | no |
h | impression의 세로 길이 (픽셀 단위). | yes |
id | 이 객체의 고유 식별자. 값은 일반적으로 1에서 시작하여 각 객체마다 증가하며, 하나의 impression 내에서 고유해야 합니다. | no |
pos | 화면상의 광고 위치. 자세한 내용은 OpenRTB Spec 2.5 Table 5.4를 참조하십시오. AppLovin RTB는 항상 1 = 스크롤 없이 볼 수 있는 영역(Above the Fold)을 전달합니다. | yes |
w | impression의 가로 길이 (픽셀 단위). | yes |
Native object
AppLovin native 광고는 OpenRTB Dynamic Native Ads API Specification Version 1.2를 사용합니다.
impression 객체에는 native 객체가 포함됩니다.
native 객체에는 native request의 JSON 문자열 표현이 포함된 request 필드가 있습니다.
AppLovin은 video 에셋을 지원하지 않습니다.
| Attribute | Description | Always passed? |
|---|
api | 이 impression에 대해 지원되는 API 프레임워크 목록. 자세한 내용은 OpenRTB Spec 2.5 Table 5.6을 참조하십시오. API가 명시적으로 나열되지 않은 경우 지원되지 않는 것으로 간주됩니다. | no |
battr | native 광고에 대해 차단된 크리에이티브 속성. 자세한 내용은 OpenRTB Spec 2.5 Table 5.3을 참조하십시오. | yes |
eventtrackers | request에서 선언된 지원되는 방법에 응답하여 광고와 함께 실행할 트래킹 객체의 배열. 지원 중단(deprecated)된 imptrackers 및 jstracker를 대체합니다. OpenRTB Spec 1.2 섹션 4.7: Event Trackers Request Object를 참조하십시오. | no |
request | Native Ad Specification을 준수하는 request 페이로드. 이는 문자열입니다. | yes |
request.assets | Asset 객체의 배열. 모든 bid는 Exchange에서 표현한 요소 배열을 준수해야 합니다. | yes |
request.assets[«n»].data | 평점, 가격 등을 위한 데이터 객체. | yes |
request.assets[«n»].id | exchange에서 할당한 고유 에셋 ID. | yes |
request.assets[«n»].img.hmin | 요청된 이미지의 최소 세로 길이 (픽셀 단위). 클라이언트가 이미지를 리사이징할 때 이 옵션을 사용합니다. h 또는 hmin 중 하나가 포함되어야 합니다. h만 포함된 경우 정확한 요구 사항으로 간주되어야 합니다. 아이콘 이미지의 경우 80으로 설정—1:1 가로세로 비율이 필요합니다. 메인 이미지의 경우 417로 설정—1.91:1 가로세로 비율이 필요합니다 (1200×627, 1200×628, 800×418 권장). | no |
request.assets[«n»].img.type | 퍼블리셔가 지원하는 이미지 요소의 유형 ID. 퍼블리셔는 이 정보를 적절한 포맷으로 표시할 수 있습니다. 자세한 내용은 OpenRTB Native spec 1.2 Table 7.4 및 7.5를 참조하십시오. | yes |
request.assets[«n»].img.wmin | 요청된 이미지의 최소 가로 길이 (픽셀 단위). 클라이언트가 이미지를 리사이징할 때 이 옵션을 사용합니다. w 또는 wmin 중 하나가 포함되어야 합니다. w만 포함된 경우 정확한 요구 사항으로 간주되어야 합니다. 아이콘 이미지의 경우 80으로 설정—1:1 가로세로 비율이 필요합니다. 메인 이미지의 경우 800으로 설정—1.91:1 가로세로 비율이 필요합니다 (1200×627, 1200×628, 800×418 권장). | no |
request.assets[«n»].required | 에셋이 필수인 경우 1로 설정됩니다 (exchange는 이 에셋이 없는 bid를 수락하지 않습니다). | yes |
request.context | 광고가 표시되는 문맥. 사용되지 않으며 항상 1501로 설정됩니다. | no |
request.privacy | native 광고가 바이어 전용 개인정보 보호 고지를 지원하는 경우 1로 설정됩니다. native 광고가 커스텀 개인정보 보호 링크를 지원하지 않거나 지원 여부를 알 수 없는 경우 이 필드는 표시되지 않습니다. | no |
request.seq | (레이아웃 유형 참조). 첫 번째 광고의 경우 0, 두 번째 광고의 경우 1 등입니다. 이는 스트림 내 콘텐츠의 시퀀스 번호가 아닙니다. | no |
ver | request가 준수하는 Native Ad Specification 버전으로, 1.2로 설정됩니다. | yes |
Example bid request
{
"app": {
"bundle": "com.example.game",
"cat": ["IAB9-30"],
"id": "188e1f4c72744d3da3134a25",
"name": "Example Game",
"publisher": {
"id": "41c8cd761e099946e85842c11debfb4d"
},
"storeurl": "https://play.google.com/store/apps/details?id=com.example.game"
},
"at": 1,
"bcat": ["IAB8-5","IAB8-18","IAB11-4","IAB25","IAB26"],
"device": {
"carrier": "telekomde",
"connectiontype": 3,
"devicetype": 4,
"dnt": 0,
"geo": {
"city": "Barrington",
"country": "USA",
"metro": "",
"type": 2,
"zip": ""
},
"h": 1280,
"hwv": "hllte",
"ifa": "e1020eb8-fc74-454d-b420-a9763d8bc556",
"ip": "203.0.113.12",
"js": 1,
"language": "de",
"lmt": 0,
"make": "samsung",
"model": "SM-N7505",
"os": "Android",
"osv": "5.1.1",
"ua": "Mozilla/5.0 (Linux; Android 4.3; SM-N7505 Build/JSS15J) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.89 Mobile Safari/537.36",
"w": 720
},
"id": "94dedeadbeefc4b8fcba406639bbf15912766bdc",
"imp": [
{
"banner": {
"api": [
3,
5
],
"battr": [
1,
2,
5,
8,
9,
14,
17
],
"btype": [
1,
4
],
"h": 480,
"pos": 1,
"w": 320
},
"displaymanager": "applovin",
"displaymanagerver": "6.1.4",
"id": "1",
"instl": 1,
"secure": 0,
"tagid": "0652dbc39a23edfd",
"video": {
"battr": [
1,
2,
3,
7,
8,
9,
14,
13
],
"companiontype": [
1,
2,
3
],
"h": 480,
"linearity": 1,
"mimes": [
"video/mp4"
],
"protocols": [
2,
3
],
"w": 320
}
}
]
}
Example native bid request
{
"app": {
"bundle": "com.example.game",
"cat": [
"IAB24"
],
"id": "81a292321de8ed119cb833e0a80c4231",
"name": "Example Game",
"publisher": {
"id": "41c8cd761e099946e85842c11debfb4d"
},
"storeurl": "https://play.google.com/store/apps/details?id=com.example.game"
},
"at": 1,
"badv": [
],
"device": {
"carrier": "verizon",
"connectiontype": 2,
"devicetype": 4,
"dnt": 0,
"geo": {
"city": "Redwood City",
"country": "USA",
"metro": "",
"type": 2
},
"h": 0,
"hwv": "",
"ifa": "12341234-1234-1234-1234-123412341234",
"ip": "255.255.255.255",
"ipv6": "2a00:79e1:abc:6b01:d516:20e2:582d:339a",
"js": 1,
"language": "en",
"lmt": 0,
"make": "",
"model": "",
"os": "Android",
"osv": "8.0.0",
"ua": "Mozilla/5.0 (Linux; Android 8.0.0; en_US; Moto Z (2) Build/ODXS27.000-00-00) AppleWebKit/000.00 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Mobile Safari/000.00",
"w": 0
},
"id": "d628d2709c061c14ea4a2e17a52da1778534d1f5",
"imp": [
{
"displaymanager": "applovin",
"displaymanagerver": "6.0.0",
"ext": { },
"id": "1",
"native": {
"api": [],
"battr": [
1,
2,
5,
8,
9,
14,
17,
3,
4,
13
],
"request": "{\"native\":{\"assets\":[{\"id\":1,\"required\":1,\"title\":{\"len\":140}},{\"id\":2,\"img\":{\"hmin\":800,\"type\":3,\"wmin\":417},\"required\":1},{\"id\":3,\"img\":{\"hmin\":50,\"type\":1,\"wmin\":50},\"required\":1},{\"data\":{\"len\":140,\"type\":2},\"id\":4,\"required\":0},{\"data\":{\"len\":15,\"type\":12},\"id\":5,\"required\":1},\"context\":1501,\"plcmtcnt\":1,\"plcmttype\":1,\"ver\":\"1.2\"}}",
"ver": "1.2"
},
"secure": 0,
"tagid": "5ba489fc7ec59a27:NOTIFYCLEAN"
}
]
}
Example CTV bid request
{
"id": "eb3ebe82eb5223c2525d46bd3bef213649466b0a",
"at": 1,
"bcat": [
"IAB11-4",
"IAB8-5",
"test1",
"IAB8-18",
"IAB25-7",
"IAB25-1",
"IAB25-5",
"IAB25-2",
"IAB25-3",
"IAB26-1",
"IAB25-4",
"IAB26-4",
"IAB26-2",
"IAB26-3",
"IAB25-6",
"test2"
],
"tmax": 500,
"badv": [
"test2",
"test1"
],
"app": {
"name": "APPINT",
"bundle": "com.applovin.appint",
"cat": [],
"id": "a9dad9c29f02533c9462db5555561e79",
"publisher": {
"id": "61310",
"ext": {}
},
"content": {
"contentrating": "TV-PG",
"genre": "Documentary,Science",
"episode": 2,
"season": "7",
"ext": {
"channel": "AppLovin Test"
}
},
"storeurl": "https://channelstore.roku.com/details/196460",
"ext": {}
},
"device": {
"ifa": "66dcd4a1-a0ed-b2b8-7e1a-3d2ea2ecc889",
"ip": "204.14.60.221",
"language": "en",
"devicetype": 3,
"js": 0,
"geo": {
"type": 2,
"ipservice": 3,
"city": "Sidney Center",
"country": "USA",
"region": "ny",
"dma": "502",
"metro": "502",
"zip": "13839",
"ext": {
"org": "DTC Cable",
"isp": "DTC Cable"
}
},
"ext": {},
"make": "Roku",
"model": "DVP",
"os": "Roku OS",
"dnt": 0,
"lmt": 0
},
"imp": [
{
"id": "1",
"displaymanager": "applovin",
"instl": 0,
"secure": 1,
"tagid": "2f850a687d1acfdb:",
"bidfloor": 22.58823529411765,
"bidfloorcur": "USD",
"exp": 14400,
"video": {
"w": 1920,
"h": 1080,
"battr": [
1,
2,
5,
8,
9,
14,
17,
3,
4,
13
],
"mimes": [
"video/mp4",
"video/ogg",
"video/webm"
],
"placement": 1,
"pos": 1,
"minduration": 5,
"maxduration": 60,
"startdelay": -1,
"minbitrate": 1,
"maxbitrate": 280000,
"linearity": 1,
"sequence": 1,
"protocols": [
1,
2,
3,
4,
5,
6
],
"podid": "pod_1",
"podseq": 0,
"slotinpod": 0,
"ext": {
"maxsequence": 1
}
},
"rwdd": 0,
"ext": {}
}
],
"user": {
"ext": {
"gdpr": 0
},
"id": "66dcd4a1-a0ed-b2b8-7e1a-3d2ea2ecc889"
},
"regs": {
"ext": {
"ccpa": 0,
"gdpr": 0
}
},
"source": {
"ext": {
"schain": {
"ver": "1.0",
"complete": 1,
"nodes": [
{
"asi": "applovin.com",
"sid": "61310",
"rid": "eb3ebe82eb5223c2525d46bd3bef213649466b0a",
"hp": 1
}
]
}
}
}
}