Zero Omission Integration

VAST 전 버전 통합 마스터 명세서

IAB Tech Lab 공식 PDF (v3.0 - v4.2)의 모든 기술 명세와 자료형을 단 하나의 생략 없이 100% 통합했습니다.

0 공식 참조 문서 링크
1 최상위 구조 및 광고 정의 (Root & Ad)
항목 (Element/Attribute)도입 버전자료형상세 설명
<VAST>공통Root ElementVAST 응답의 최상위 노드.
├ version공통Attribute (Decimal)VAST 버전 (3.0, 4.0, 4.1, 4.2 필수 명시).
└ xmlns:xs / xmlns:vast4.0Attribute (URI)XML 네임스페이스 및 스키마 정의.
<Ad>공통Element개별 광고 정의 노드. InLine 또는 Wrapper를 포함함.
├ id공통Attribute (String)광고 서버에서 부여한 광고 식별자.
├ sequence3.0Attribute (Integer)Ad Pod 내에서 광고가 재생될 순서 (정수).
├ conditionalAd4.0Attribute (Boolean)광고주가 노출 여부를 동적으로 결정하는지 여부.
├ adType4.1Attribute (String)광고 종류 (video, audio). v4.1 이상 권장/필수.
├ breakId4.1Attribute (String)광고가 포함된 브레이크(Break)의 식별자.
├ breakIndex4.1Attribute (Integer)브레이크 내에서의 광고 위치 인덱스.
└ breakType4.1Attribute (String)브레이크 유형 (linear, nonlinear, both).
<InLine>공통Element실제 광고 실행 데이터를 직접 포함하는 노드.
<Wrapper>공통Element타사 광고 서버(Third-party) 리다이렉션 정보 노드.
├ followAdditionalWrappers3.0Attribute (Boolean)하위 래퍼를 계속 추적할지 여부 (기본값 true).
├ allowSkip3.0Attribute (Boolean)래퍼 레벨에서 스킵 허용 여부 제어.
└ fallbackOnNoAd3.0Attribute (Boolean)광고 응답 없을 시 다음 후보(Fallback) 사용 여부.
<VASTAdTagURI>공통URL (CDATA)Wrapper 사용 시 다음 VAST 응답을 요청할 URI 주소.
2 Metadata (공통 메타데이터 및 설정)
항목 (Element/Attribute)도입 버전자료형상세 설명
<AdServingId>4.0Stringv4.0+ InLine 필수. 광고 세션 식별 고유 ID.
<AdSystem>공통String시스템 명칭. 속성: version (String).
<AdTitle>공통String광고 캠페인 제목 (InLine 필수).
<Description>공통String광고에 대한 상세 설명.
<Advertiser>3.0String광고주 명칭.
<Pricing>3.0Decimal가격 정보. 속성: model (CPM/CPC 등), currency (ISO 4217).
<Survey>공통URL외부 설문 조사 URL. v4.1부터 type 속성 지원.
<Category>4.0String업종 카테고리. authority 속성 필수.
<UniversalAdId>4.0String전역 고유 식별자. v4.2부터 멀티 노드 지원. idRegistry 필수.
<BlockedAdCategories>4.2Element노출 제한 카테고리 목록. InLine/Wrapper 공통.
<Expires>4.1IntegerVAST 응답 캐시 유효 시간 (초 단위).
<Extensions>공통Element표준 외 데이터를 위한 <Extension> 컨테이너.
3 Creatives & Assets (전수 세부 속성)
3.1 Creatives / Creative (속성 전수)
항목 / 속성자료형상세 명세
<Creatives>Element광고의 모든 소재(Creative)를 담는 컨테이너. InLine/Wrapper 공통.
<Creative>Element단일 광고 소재 단위. 하나의 <InLine> 내에 다수 허용.
└ idString광고 서버가 부여하는 소재 식별자.
└ sequenceInteger다중 소재 재생 순서. 1부터 시작.
└ adIdString광고 시스템의 크리에이티브 레코드 ID. 소재 공유 시 활용.
└ apiFrameworkString인터랙션 프레임워크 명칭 (예: VPAID, SIMID).
└ universalAdId (v4.0)StringCreative 레벨 전역 고유 ID. idRegistry 속성 필수.
3.2 Linear Ads (선형 광고)
항목 / 속성자료형상세 명세
<Duration>TimeHH:MM:SS.mmm 형식 재생 시간. 필수.
<AdParameters>String/XML실행 데이터. 속성: xmlEncoded (Boolean).
<MediaFiles>Element미디어 파일 컨테이너.
└ idString미디어 파일 고유 식별자.
└ deliveryStringprogressive 또는 streaming.
└ typeStringMIME Type (예: video/mp4). 필수.
└ bitrate / minBitrateInteger비트레이트 (kbps). ABR 지원용.
└ width / heightInteger가로 세로 픽셀 해상도. 필수.
└ scalable / maintainAspectRatioBoolean화면 확대 조절 및 비율 유지 여부.
└ codec (v4.1)StringRFC 4281 코덱 명세.
└ fileSize (v4.1)Integer전체 파일 크기 (Bytes 단위).
<Mezzanine>URL (CDATA)v4.0 SSAI용 원본 고화질 리소스. MediaFile과 동일 속성 지원.
<InteractiveCreativeFile>URL (CDATA)v4.2 SIMID 대응 파일. variableDuration(Boolean) 속성 지원.
<ClosedCaptionFiles>Elementv4.1 자막 컨테이너. 자식: <ClosedCaptionFile>.
<SkipOffset>Time / %v3.0 스킵 가능 광고의 스킵 버튼 노출 시점. HH:MM:SS 또는 xx%.
<VideoClicks>ElementLinear 광고의 클릭 관련 URL 컨테이너.
└ <ClickThrough>URL (CDATA)광고 클릭 시 이동할 랜딩 페이지 URL. 선택 속성: id.
└ <ClickTracking>URL (CDATA)클릭 이벤트 추적 픽셀 URL. 다수 허용. 속성: id.
└ <CustomClick>URL (CDATA)VPAID 등 특정 영역 커스텀 클릭 트래킹. 속성: id.
3.3 Non-Linear & Companion 상세
항목 / 속성자료형설명
<NonLinearAds>ElementNonLinear 광고 컨테이너. 자식: <NonLinear> (다수 허용), <TrackingEvents>.
<NonLinear>-속성: id, width, height, expandedWidth, expandedHeight, scalable, maintainAspectRatio, minSuggestedDuration, apiFramework.
└ <NonLinearClickThrough>URL (CDATA)NonLinear 소재 클릭 랜딩 URL.
└ <NonLinearClickTracking>URL (CDATA)NonLinear 클릭 추적 픽셀. 속성: id.
└ <AdParameters>String/XMLNonLinear 실행 데이터. 속성: xmlEncoded (Boolean).
<CompanionAds>ElementCompanion 광고 컨테이너. 속성: required (all | any | none).
<Companion>-속성: id, width, height, assetWidth, assetHeight, expandedWidth, expandedHeight, apiFramework, adSlotId, pxratio(v4.1), renderingMode(v4.1).
└ <CompanionClickThrough>URL (CDATA)Companion 클릭 랜딩 URL.
└ <CompanionClickTracking>URL (CDATA)Companion 클릭 추적 픽셀. 속성: id.
리소스 타입 (공통)URL/HTMLStaticResource(creativeType 속성 필수), IFrameResource, HTMLResource(CDATA).
4 Icons 정밀 명세 (v3.0 - v4.2)
속성 / 노드자료형설명
programString아이콘 식별자 (예: AdChoices). 필수.
width / heightInteger아이콘 해상도 픽셀.
xPosition / yPositionString/Int위치 설정 (left, right, top, bottom 또는 숫자).
offset / durationTime아이콘 시작 시각 및 지속 시간 (HH:MM:SS).
pxratioDecimalv4.1 고해상도 대응 픽셀 밀도 비율.
<IconViewTracking>URL아이콘 리소스 노출 추적 (CDATA URL).
<IconClicks>Element클릭 컨테이너 (IconClickThrough, IconClickTracking 포함).
<IconClickFallbackImages>Elementv3.0 규격. 클릭 실패 시 노출할 이미지 리소스.
5 Tracking & Verification (검증 및 가시성)
5.1 Impression / Error / ViewableImpression
항목 / 속성도입 버전자료형설명
<Impression>공통URL (CDATA)필수. 광고 노출 시 발사하는 트래킹 픽셀 URL. 다수 허용. 속성: id.
<Error>공통URL (CDATA)오류 발생 시 호출되는 URL. [ERRORCODE] 매크로 삽입 필수. 다수 허용.
<ViewableImpression>4.0Element가시성(Viewability) 트래킹 컨테이너. 속성: id. 자식 요소 ↓
└ <Viewable>4.0URL (CDATA)광고가 가시 범위 내 재생 시 호출 (MRC 기준 50% 이상 2초 이상).
└ <NotViewable>4.0URL (CDATA)광고가 가시 범위 밖에서 재생 시 호출.
└ <ViewUndetermined>4.0URL (CDATA)가시성 판별 불가 시 호출.
5.2 TrackingEvents 전수 리스트 (공식 조항)
start / complete
firstQuartile (25%)
midpoint (50%)
thirdQuartile (75%)
mute / unmute
pause / resume
rewind / skip
progress (offset 필수)
fullscreen / exitFullscreen
loaded (v4.0)
viewable / notViewable
verificationNotExecuted
5.3 AdVerifications (v4.0+)
항목 / 속성자료형설명
vendorString검증 업체 식별자 (필수).
JavaScriptResourceURL (CDATA)OMID 등 JS 측정 파일. 속성: apiFramework, browserOptional(v4.1).
ExecutableResourceURL (CDATA)v4.1 네이티브 실행 파일. type 속성 지원.
VerificationParametersString (CDATA)스크립트에 전달할 파라미터.
6 Error Codes (100 ~ 901 전수)
100-102XML / 스키마 및 버전 오류
200-203Traffic / 광고 없음 및 순서 오류
300-303Wrapper 호출 및 타임아웃
304-305InLine 불일치 및 4.1 미지원
400-405미디어 파일 로드 및 재생 오류
406-409Mezzanine 누락 및 상호작용 실패
410Mezzanine 트랜스코딩 중 (v4.1)
500-604Non-Linear / Companion 로드 실패
900정의되지 않은 치명적 오류
901VPAID / SIMID 실행 오류
7 VAST Macros (v4.2 부록 A 전수 28종)
Time[TIMESTAMP]
Int[ERRORCODE]
String[CACHEBUSTING]
URL[ASSETURI]
Time[CONTENTPLAYHEAD]
Int[ADCOUNT]
String[IFA]
String[IFATYPE]
Bool[LIMITADTRACKING]
String[GDPRCONSENT]
String[DEVICEUA]
Bool[SERVERSIDE]
String[REASON]
String[CLICKPOS]
Int[PODSEQUENCE]
Int[PODCOUNT]
String[TRANSACTIONID]
String[UNIVERSALADID]
String[ADCID]
String[ADCAID]
String[INVENTORYSTATE]
String[USPRIVACY]
String[LATLONG]
String[APPBUNDLE]
String[PLAYERSTATE]
String[ADSERVINGID]
Time[MEDIALENGTH]
String[ADTYPE]
8 Ad Pod & SIMID (v3.0 - v4.2)
8.1 Ad Pod (광고 연속 재생)
항목 / 속성도입 버전자료형설명
<Ad sequence>3.0Attribute (Integer)Ad Pod 내 재생 순서. 동일 요청의 여러 <Ad>에 sequence를 부여하여 순서대로 재생.
breakId4.1Attribute (String)광고 브레이크(슬롯) 식별자. <Ad> 속성.
breakIndex4.1Attribute (Integer)브레이크 내 광고 인덱스 (1-based).
breakType4.1Attribute (String)linear, nonlinear, both 중 하나.
[PODSEQUENCE]4.1Macro (Integer)Pod 내 현재 광고 순번 매크로.
[PODCOUNT]4.1Macro (Integer)Pod 내 전체 광고 수 매크로.
8.2 SIMID / InteractiveCreativeFile (v4.0+)
항목 / 속성도입 버전자료형설명
<InteractiveCreativeFile>4.0URL (CDATA)SIMID(Secure Interactive Media Interface Definition) 대응 파일 URL. <MediaFiles> 자식.
└ type4.0StringMIME 타입 (예: text/html).
└ apiFramework4.0String사용하는 인터랙션 프레임워크 (예: SIMID).
└ variableDuration (v4.2)4.2Booleantrue 시 SIMID가 광고 재생 시간을 동적으로 변경 가능.
SIMID 통신 방식4.1postMessage플레이어 ↔ SIMID 컨테이너 간 window.postMessage로 통신. 이전 VPAID(JS API) 방식 대체.
VPAID 호환성4.0Deprecatedv4.0부터 VPAID는 apiFramework="VPAID"로 표시. v4.1부터 SIMID 전환 권장.