List Ad Pod Requests
List/search the ad-pod request and decision log for a date range, with optional filtering by content, advertiser, campaign, creative, targeting dimension, and IAB break fields.
curl -X POST "https://api.5centscdn.com/v2/ad-manager/101/requests" \
-H "Content-Type: application/json" \
-H "X-API-Key: YOUR_API_KEY" \
-d '{
"from": "2026-01-01",
"to": "2026-01-31",
"r": "2026-01-01 00:00:00 - 2026-01-31 23:59:59",
"page": 1,
"content_ids": [
"1024",
"__none__"
],
"advertiser_ids": [
"adv_8f2a"
],
"campaign_ids": [
"cmp_4c19"
],
"creative_ids": [
"crv_9a71"
],
"content_tags": [
"sports"
],
"placements": [
"preroll"
],
"categories": [
3
],
"devices": [
1,
3
],
"languages": [
"en"
],
"oses": [
"iOS"
],
"browsers": [
"Chrome"
],
"fill_statuses": [
"full"
],
"decision_statuses": [
"decided"
],
"ip": [
"203.0.113.10"
],
"user_agent": [
"example_string"
],
"max_duration": [
30
],
"min_ad_length": [
42
],
"max_ad_length": [
42
],
"max_ads": [
42
],
"fill_ceiling_seconds": [
42
],
"break_position": [
42
],
"break_ids": [
"example_string"
],
"transaction_ids": [
"example_string"
],
"continent_geoname_ids": [
123
],
"country_geoname_ids": [
123
],
"subdivision_1_geoname_ids": [
123
],
"subdivision_2_geoname_ids": [
123
],
"city_geoname_ids": [
123
]
}'
import requests
import json
url = "https://api.5centscdn.com/v2/ad-manager/101/requests"
headers = {
"Content-Type": "application/json",
"X-API-Key": "YOUR_API_KEY"
}
data = {
"from": "2026-01-01",
"to": "2026-01-31",
"r": "2026-01-01 00:00:00 - 2026-01-31 23:59:59",
"page": 1,
"content_ids": [
"1024",
"__none__"
],
"advertiser_ids": [
"adv_8f2a"
],
"campaign_ids": [
"cmp_4c19"
],
"creative_ids": [
"crv_9a71"
],
"content_tags": [
"sports"
],
"placements": [
"preroll"
],
"categories": [
3
],
"devices": [
1,
3
],
"languages": [
"en"
],
"oses": [
"iOS"
],
"browsers": [
"Chrome"
],
"fill_statuses": [
"full"
],
"decision_statuses": [
"decided"
],
"ip": [
"203.0.113.10"
],
"user_agent": [
"example_string"
],
"max_duration": [
30
],
"min_ad_length": [
42
],
"max_ad_length": [
42
],
"max_ads": [
42
],
"fill_ceiling_seconds": [
42
],
"break_position": [
42
],
"break_ids": [
"example_string"
],
"transaction_ids": [
"example_string"
],
"continent_geoname_ids": [
123
],
"country_geoname_ids": [
123
],
"subdivision_1_geoname_ids": [
123
],
"subdivision_2_geoname_ids": [
123
],
"city_geoname_ids": [
123
]
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
const response = await fetch("https://api.5centscdn.com/v2/ad-manager/101/requests", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-API-Key": "YOUR_API_KEY"
},
body: JSON.stringify({
"from": "2026-01-01",
"to": "2026-01-31",
"r": "2026-01-01 00:00:00 - 2026-01-31 23:59:59",
"page": 1,
"content_ids": [
"1024",
"__none__"
],
"advertiser_ids": [
"adv_8f2a"
],
"campaign_ids": [
"cmp_4c19"
],
"creative_ids": [
"crv_9a71"
],
"content_tags": [
"sports"
],
"placements": [
"preroll"
],
"categories": [
3
],
"devices": [
1,
3
],
"languages": [
"en"
],
"oses": [
"iOS"
],
"browsers": [
"Chrome"
],
"fill_statuses": [
"full"
],
"decision_statuses": [
"decided"
],
"ip": [
"203.0.113.10"
],
"user_agent": [
"example_string"
],
"max_duration": [
30
],
"min_ad_length": [
42
],
"max_ad_length": [
42
],
"max_ads": [
42
],
"fill_ceiling_seconds": [
42
],
"break_position": [
42
],
"break_ids": [
"example_string"
],
"transaction_ids": [
"example_string"
],
"continent_geoname_ids": [
123
],
"country_geoname_ids": [
123
],
"subdivision_1_geoname_ids": [
123
],
"subdivision_2_geoname_ids": [
123
],
"city_geoname_ids": [
123
]
})
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
"bytes"
"encoding/json"
)
func main() {
data := []byte(`{
"from": "2026-01-01",
"to": "2026-01-31",
"r": "2026-01-01 00:00:00 - 2026-01-31 23:59:59",
"page": 1,
"content_ids": [
"1024",
"__none__"
],
"advertiser_ids": [
"adv_8f2a"
],
"campaign_ids": [
"cmp_4c19"
],
"creative_ids": [
"crv_9a71"
],
"content_tags": [
"sports"
],
"placements": [
"preroll"
],
"categories": [
3
],
"devices": [
1,
3
],
"languages": [
"en"
],
"oses": [
"iOS"
],
"browsers": [
"Chrome"
],
"fill_statuses": [
"full"
],
"decision_statuses": [
"decided"
],
"ip": [
"203.0.113.10"
],
"user_agent": [
"example_string"
],
"max_duration": [
30
],
"min_ad_length": [
42
],
"max_ad_length": [
42
],
"max_ads": [
42
],
"fill_ceiling_seconds": [
42
],
"break_position": [
42
],
"break_ids": [
"example_string"
],
"transaction_ids": [
"example_string"
],
"continent_geoname_ids": [
123
],
"country_geoname_ids": [
123
],
"subdivision_1_geoname_ids": [
123
],
"subdivision_2_geoname_ids": [
123
],
"city_geoname_ids": [
123
]
}`)
req, err := http.NewRequest("POST", "https://api.5centscdn.com/v2/ad-manager/101/requests", bytes.NewBuffer(data))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("X-API-Key", "YOUR_API_KEY")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://api.5centscdn.com/v2/ad-manager/101/requests')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request['X-API-Key'] = 'YOUR_API_KEY'
request.body = '{
"from": "2026-01-01",
"to": "2026-01-31",
"r": "2026-01-01 00:00:00 - 2026-01-31 23:59:59",
"page": 1,
"content_ids": [
"1024",
"__none__"
],
"advertiser_ids": [
"adv_8f2a"
],
"campaign_ids": [
"cmp_4c19"
],
"creative_ids": [
"crv_9a71"
],
"content_tags": [
"sports"
],
"placements": [
"preroll"
],
"categories": [
3
],
"devices": [
1,
3
],
"languages": [
"en"
],
"oses": [
"iOS"
],
"browsers": [
"Chrome"
],
"fill_statuses": [
"full"
],
"decision_statuses": [
"decided"
],
"ip": [
"203.0.113.10"
],
"user_agent": [
"example_string"
],
"max_duration": [
30
],
"min_ad_length": [
42
],
"max_ad_length": [
42
],
"max_ads": [
42
],
"fill_ceiling_seconds": [
42
],
"break_position": [
42
],
"break_ids": [
"example_string"
],
"transaction_ids": [
"example_string"
],
"continent_geoname_ids": [
123
],
"country_geoname_ids": [
123
],
"subdivision_1_geoname_ids": [
123
],
"subdivision_2_geoname_ids": [
123
],
"city_geoname_ids": [
123
]
}'
response = http.request(request)
puts response.body
{
"result": "success",
"items": [
{
"id": "pod_7e21c9",
"publisher_id": "10042",
"request_time": "2026-01-15T10:30:00Z",
"content_id": "1024",
"placement": "preroll",
"content_tags": [
"sports"
],
"category": 3,
"continent_geoname_id": 6255149,
"country_geoname_id": 6252001,
"subdivision_1_geoname_id": 5332921,
"subdivision_2_geoname_id": 5391959,
"city_geoname_id": 5391811,
"device": 3,
"language": "en",
"user_key": "",
"ip": "203.0.113.10",
"user_agent": "Mozilla/5.0 (compatible; SSAI-Player/1.0)",
"os": "iOS",
"browser": "Chrome",
"max_duration": 30,
"min_ad_length": 5,
"max_ad_length": 30,
"decision_status": "decided",
"selected_duration_seconds": 30,
"fill_status": "full",
"created_at": "2026-01-15T10:30:00Z"
}
],
"limit": 100,
"page": 1,
"pages": 4,
"total": 963
}
/ad-manager/{pid}/requestsTarget server for requests. Edit to use your own host.
API key (sent in header)
ID of the Ad Manager project.
The media type of the request body
Combined date range, alternative to from/to.
Break fill target, seconds (IAB BREAKMAXDURATION).
Per-ad minimum duration (IAB BREAKMINADLENGTH).
Per-ad maximum duration (IAB BREAKMAXADLENGTH).
Pod-size cap (IAB BREAKMAXADS).
Request Preview
Response
Response will appear here after sending the request
Authentication
API Key for authentication. Provide your API key in the header.
Path Parameters
Body
2026-01-012026-01-31Combined date range, alternative to from/to.
2026-01-01 00:00:00 - 2026-01-31 23:59:591["1024","__none__"]["adv_8f2a"]["cmp_4c19"]["crv_9a71"][3][1,3]["en"]["iOS"]["Chrome"]["decided"]["203.0.113.10"]Per-ad minimum duration (IAB BREAKMINADLENGTH).
Per-ad maximum duration (IAB BREAKMAXADLENGTH).
Pod-size cap (IAB BREAKMAXADS).
Responses
Operation outcome.
successerrorMatching ad-pod requests.