Link Search Menu Expand Document


Video Object

Demand Partners

BidRequest Object

The Video object provides details about a video ad request. Each Imp object can contain one Video object, which is required for video impressions. Alternatively, an Imp object can contain a Banner or a Native object.

See also, Video Examples.

Guidance on Video creatives

  • Suggested maximum file size: 10MB.
  • Preferred video file formats: MP4 (H.264) and JavaScript VPAID.
  • Accepted video file formats: HTML5, at least one media provided must be in MP4 format.
  • Dimensions: Video ads can be rendered in any size video player. For example, 480x360, 640x360, 1920x800.
  • Video bitrate: 240kbps - 4mbps, depending on device; at least one media at 1mbps or below is required.
  • Max frame rate: 30FPS.
  • Playback methods: All playback methods defined in OpenRTB are supported.
  • Video types:
    • In-stream (an ad that appears within video content, and can be pre, mid, or post-roll)
    • Out-stream
    • Interstitial: for mobile app video and opt-in video, video type is interstitial.

Flash support deprecation: July 3, 2017. Deprecation includes the VPAID 1.0 API Framework and the following MIME types: application/x-shockwave-flash and video/x-flv.

Field nameData typeDescriptionSent?
mimesarray (string)An array of supported MIME types for content video. Below are just a few examples for app, though MIME types are also sent for web ads.
   • video/3gpp
   • video/mp4

   • video/3gpp
   • video/mov
   • video/mp4
   • video/mpv
mindurationintegerMinimum video ad duration (in seconds).Sometimes
maxdurationintegerMaximum video ad duration (in seconds).Sometimes
protocolsarray (integer)A list of supported video bid response protocols. OpenX supports the following values:
   • 2 = VAST 2.0
   • 3 = VAST 3.0
   • 5 = VAST 2.0 Wrapper
   • 6 = VAST 3.0 Wrapper
wintegerWidth of the player (in pixels).Always
hintegerHeight of the player (in pixels).Always
startdelayintegerThe start delay (in seconds) for mid-roll ad placements, or an indication of the ad’s position within linear video content.
If the startdelay value is greater than 0, the position is mid-roll, and the value indicates the start delay. Possible values include:
   • > 0 = Mid-roll (value indicates start delay in seconds)
   • 0 = Pre-roll
   • -1 = Generic mid-roll
   • -2 = Generic post-roll
placementintegerPlacement type for the impression. Possible values include:
   • 1 = In-Stream
   • 2 = In-Banner. OpenX does not support and, therefore, does not monetize, low-value video ad units, including in-banner video.
   • 3 = In-Article (out-stream)
   • 4 = In-Feed
   • 5 = Interstitial/Slider/Floating

Note: You can distinguish a full-screen interstitial (for example, in mobile) from a floating/slider unit via the imp.instl field.
linearityintegerIndicates whether the ad impression is linear or non-linear. OpenX currently supports a value of 1 (linear).Always
skipintegerAlways sent for opt-in video (rewarded video). Indicates if the player allows the video to be skipped, where:
   • 0 = No
   • 1 = Yes
For opt-in video, OpenX always passes 0.
battrarray (integer)An array of blocked creative attributes. If no value is specified, all types are allowed.Sometimes
maxextendedintegerIndicates whether extended video ad duration is allowed beyond the value of maxduration:
   • -1 = Extension is allowed and there is no limit
   • 0 = Extension is not allowed
   • >0 = Extension is allowed and the value indicates the number of seconds of extended play
minbitrateintegerThe minimum bitrate (in Kbps).Sometimes
maxbitrateintegerThe maximum bitrate (in Kbps).Sometimes
boxingallowedintegerIndicates whether letterboxing of 4:3 video content in a 16:9 window is allowed (1) or not (0). The default value is 1.Sometimes
playbackmethodarray (integer)Playback methods that may be in use. Only one method is typically used in practice. If none are specified, any method may be used.Sometimes
deliveryarray (integer)A list of supported delivery methods. For example, 1 for streaming or 2 for progressive. If no values are specified, assume all delivery methods are supported.Always
apiarray (integer)One of the supported API standards or frameworks:
   • 2 = VPAID 2.0
   • 3 = MRAID 1.0
   • 4 = ORMMA
   • 5 = MRAID 2.0
For example: 2
extobjectAn object containing properties that describe custom fields for the Video object.Always

For additional details, see the IAB’s OpenRTB 2.5 specification.

For additional publisher enrichment fields, see Supplemental Data.

Extensions object

Provides additional details about the video ad. The Video object may include an Extensions object.

Field nameData typeDescriptionSent?
matching_ad_idarray (MatchingAdId object)A list of objects containing properties that describe ads for which Ad Exchange is soliciting bids from the bidder.Always
skipintegerPresent only when inventory is opt-in video (rewarded video). Always set to 0 to identify non-skippable opt-in video.Sometimes
videotypestringPresent only when inventory is opt-in video. Always set to rewarded to identify non-skippable opt-in video.Sometimes

Each MatchingAdId object provides details about a matching ad for which Ad Exchange is soliciting bids.

Field nameData typeDescriptionSent?
ad_heightintegerThe height of the ad unit in which the ad is displayed. For example, 250
This field duplicates the h field described in the Video object.
ad_widthintegerThe width of the ad unit in which the ad is displayed.
For example, 300
This field duplicates the w field described in the Video object.
campaign_idintegerThe ID for the business unit to which the matching ad belongs.Always
creative_idintegerThe ID for the matching ad.Always
placement_idintegerThe ID for the traffic set to which the matching ad belongs.Always