VMAPGet VMAP

Get VMAP

Request a VMAP ad-break schedule spanning one or more ad breaks in a single call.

curl -X GET "https://avails.5centscdn.com/v1/vmap?publisher_id=8f2a1c3e-4b5d-4a6e-9f1a-2b3c4d5e6f7a&content_id=1024&placement=preroll&tags=sports%2Clive&category=3&device=3&device_ua=example_string&language=en&user_key=example_string&device_ip=203.0.113.10&continent_geoname_id=6255149&country_geoname_id=6252001&subdivision_1_geoname_id=5332921&subdivision_2_geoname_id=5391959&city_geoname_id=5391811&country=US&region=NY&city=New%20York&transaction_id=8f2a1c3e-4b5d-4a6e-9f1a-2b3c4d5e6f7a&resolution=lazy&break=30%25%7Cmidroll%7C30%7Cbreak-1%7C4%7C5%7C30%7C35&content_duration_s=1800&skipoffset=5&skip_policy=example_string" \
  -H "Content-Type: application/json"
{}
GET
/v1/vmap
GET
Base URLstring

Target server for requests. Edit to use your own host.

query
publisher_idstring
Required

Ad Manager project UUID. Scopes the request to a project. Missing or invalid value returns 400.

Format: uuid
query
content_idstring

Content the break is attached to, matched against campaign content targeting allowlists.

query
placementstring

Ad placement identifier.

Options: preroll, midroll, postroll
query
tagsstring

Comma-separated content tags, matched against campaign content-tag targeting.

query
categoryinteger

IAB content-category ID, matched against campaign category targeting. Invalid value is ignored with a warning.

query
deviceinteger

IAB device-type ID (1-8), matched against campaign device targeting. Out-of-range value is ignored with a warning.

Min: 1 • Max: 8
query
device_uastring

User-Agent override, for SSAI proxies masking the player's real UA. Falls back to the request's User-Agent header.

query
languagestring

Content/ad language targeting.

query
user_keystring

Frequency-capping / user correlation key.

query
device_ipstring

Client IP override, used for GeoIP resolution and outbound forwarding. Falls back to X-Forwarded-For, then the connection's remote address.

query
continent_geoname_idinteger

Explicit geo-targeting override.

query
country_geoname_idinteger

Explicit geo-targeting override.

query
subdivision_1_geoname_idinteger

Explicit geo-targeting override.

query
subdivision_2_geoname_idinteger

Explicit geo-targeting override.

query
city_geoname_idinteger

Explicit geo-targeting override.

query
countrystring

Text geo-targeting fallback, used when the geoname-id overrides are not supplied.

query
regionstring

Text geo-targeting fallback.

query
citystring

Text geo-targeting fallback.

query
transaction_idstring

Correlator spanning the whole VMAP/pod chain. Auto-generated if absent and reused across every ad-break callback.

query
resolutionstring

lazy returns a callback URL per break (resolved later against GET /v1/vast); eager inlines the ad data for every break in this response. Any other value returns 400.

Options: lazy, eager
query
breakarray
Required

One ad break, pipe-delimited: offset|type|max_duration_s|break_id|max_ads|min_ad_length|max_ad_length|fill_ceiling_seconds. Only offset, type, and max_duration_s are required; trailing optional fields may be omitted. 1. offset - start / end / HH:MM:SS[.mmm] / SS[.mmm] / n% (required) 2. type - preroll / midroll / postroll (required) 3. max_duration_s - break fill target, seconds (required) 4. break_id - correlation id (optional; defaults to break-1, break-2, ... in order) 5. max_ads - per-break pod-size cap (optional; blank/0 = unspecified) 6. min_ad_length - per-ad minimum duration (optional; blank/0 = unspecified) 7. max_ad_length - per-ad maximum duration (optional; blank/0 = unspecified) 8. fill_ceiling_seconds - per-break overshoot ceiling (optional; blank/0 = unspecified) Repeat this parameter once per break. At least one is required, else 400.

query
content_duration_snumber

VoD asset duration, seconds. Used to resolve percentage-based offset values and to drop out-of-range breaks. Must be non-negative, else 400.

query
skipoffsetstring

Same uniform ad-skip override as GET /v1/vast, resolved once for the whole call.

query
skip_policystring

Same rule-based ad-skip override as GET /v1/vast, resolved once for the whole call.

Request Preview
Response

Response will appear here after sending the request

Query Parameters

publisher_idstring
Required

Ad Manager project UUID. Scopes the request to a project. Missing or invalid value returns 400.

Example:
8f2a1c3e-4b5d-4a6e-9f1a-2b3c4d5e6f7a
content_idstring

Content the break is attached to, matched against campaign content targeting allowlists.

Example:
1024
placementstring

Ad placement identifier.

Allowed values:prerollmidrollpostroll
tagsstring

Comma-separated content tags, matched against campaign content-tag targeting.

Example:
sports,live
categoryinteger

IAB content-category ID, matched against campaign category targeting. Invalid value is ignored with a warning.

Example:
3
deviceinteger

IAB device-type ID (1-8), matched against campaign device targeting. Out-of-range value is ignored with a warning.

Example:
3
device_uastring

User-Agent override, for SSAI proxies masking the player's real UA. Falls back to the request's User-Agent header.

languagestring

Content/ad language targeting.

Example:
en
user_keystring

Frequency-capping / user correlation key.

device_ipstring

Client IP override, used for GeoIP resolution and outbound forwarding. Falls back to X-Forwarded-For, then the connection's remote address.

Example:
203.0.113.10
continent_geoname_idinteger

Explicit geo-targeting override.

Example:
6255149
country_geoname_idinteger

Explicit geo-targeting override.

Example:
6252001
subdivision_1_geoname_idinteger

Explicit geo-targeting override.

Example:
5332921
subdivision_2_geoname_idinteger

Explicit geo-targeting override.

Example:
5391959
city_geoname_idinteger

Explicit geo-targeting override.

Example:
5391811
countrystring

Text geo-targeting fallback, used when the geoname-id overrides are not supplied.

Example:
US
regionstring

Text geo-targeting fallback.

Example:
NY
citystring

Text geo-targeting fallback.

Example:
New York
transaction_idstring

Correlator spanning the whole VMAP/pod chain. Auto-generated if absent and reused across every ad-break callback.

Example:
8f2a1c3e-4b5d-4a6e-9f1a-2b3c4d5e6f7a
resolutionstring

lazy returns a callback URL per break (resolved later against GET /v1/vast); eager inlines the ad data for every break in this response. Any other value returns 400.

Allowed values:lazyeager
breakarray
Required

One ad break, pipe-delimited: offset|type|max_duration_s|break_id|max_ads|min_ad_length|max_ad_length|fill_ceiling_seconds. Only offset, type, and max_duration_s are required; trailing optional fields may be omitted.

  1. offset - start / end / HH:MM:SS[.mmm] / SS[.mmm] / n% (required)
  2. type - preroll / midroll / postroll (required)
  3. max_duration_s - break fill target, seconds (required)
  4. break_id - correlation id (optional; defaults to break-1, break-2, ... in order)
  5. max_ads - per-break pod-size cap (optional; blank/0 = unspecified)
  6. min_ad_length - per-ad minimum duration (optional; blank/0 = unspecified)
  7. max_ad_length - per-ad maximum duration (optional; blank/0 = unspecified)
  8. fill_ceiling_seconds - per-break overshoot ceiling (optional; blank/0 = unspecified)

Repeat this parameter once per break. At least one is required, else 400.

Example:
30%|midroll|30|break-1|4|5|30|35
content_duration_snumber

VoD asset duration, seconds. Used to resolve percentage-based offset values and to drop out-of-range breaks. Must be non-negative, else 400.

Example:
1800
skipoffsetstring

Same uniform ad-skip override as GET /v1/vast, resolved once for the whole call.

Example:
5
skip_policystring

Same rule-based ad-skip override as GET /v1/vast, resolved once for the whole call.

Responses

VMAP XML ad-break schedule.