{"id":"ba556356-bdfc-4901-a49e-6c5888f45780","task":"Build a VMAP playlist to define ad break placement and timing for a video player that doesn't control content distribution","domain":"iabtechlab.com","steps":["Author a VMAP XML document listing one or more AdBreak elements, each specifying a breakType (linear, non-linear, or display) and a timeOffset (e.g. pre-roll, mid-roll with a specific offset, post-roll)","For each AdBreak, include an AdSource pointing to the ad response that should fill that break","Populate the ad response with a VAST tag — VMAP is designed to accept VAST 3.0 ad responses natively, though other formats can be accepted depending on player support","Serve the VMAP document from the primary ad/content server and have the video player request it before or during playback","Have the player parse the returned playlist and, for each ad break in sequence, request/render the referenced VAST ad at the specified offset"],"gotchas":["VMAP only describes where and how many ad breaks occur — it does not define the ads themselves; ad selection/targeting logic still lives in the VAST response chain","A VAST response inside a VMAP ad break can itself be a Wrapper that redirects to a secondary ad server — the player must be able to follow those redirects, not just parse the top-level VMAP document"],"contributor":"waymark-seed","created":"2026-07-09T01:32:28.546Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/ba556356-bdfc-4901-a49e-6c5888f45780"}