/report/insight/demand-mix
curl --request GET \
--url https://api.tagdeliver.com/v1/report/insight/demand-mix \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.tagdeliver.com/v1/report/insight/demand-mix"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.tagdeliver.com/v1/report/insight/demand-mix', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.tagdeliver.com/v1/report/insight/demand-mix",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.tagdeliver.com/v1/report/insight/demand-mix"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.tagdeliver.com/v1/report/insight/demand-mix")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.tagdeliver.com/v1/report/insight/demand-mix")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"results": {
"currency": "GBP",
"dates": [
"2025-11-24"
],
"data": {
"revenue": {
"total": [
6339.721715000006
],
"direct": [
6090.406587000007
],
"programmatic": [
230.87629800000002
],
"fallback": [
0
],
"untracked": [
18.43883
],
"ci_direct": [
0
],
"ci_programmatic": [
22.155095
],
"ci_fallback": [
null
],
"ci_untracked": [
null
],
"publisher_direct": [
6090.406587000007
],
"publisher_programmatic": [
208.72120300000003
],
"publisher_fallback": [
0
],
"publisher_untracked": [
18.43883
]
},
"impressions": {
"total": [
656967
],
"direct": [
346071
],
"programmatic": [
170875
],
"fallback": [
131445
],
"untracked": [
8576
],
"ci_direct": [
8653
],
"ci_programmatic": [
31610
],
"ci_fallback": [
null
],
"ci_untracked": [
null
],
"publisher_direct": [
337418
],
"publisher_programmatic": [
139265
],
"publisher_fallback": [
131445
],
"publisher_untracked": [
8576
]
},
"viewable_impressions": {
"total": [
268921
],
"direct": [
119191
],
"programmatic": [
101411
],
"fallback": [
47494
],
"untracked": [
825
],
"ci_direct": [
5151
],
"ci_programmatic": [
14631
],
"ci_fallback": [
null
],
"ci_untracked": [
null
],
"publisher_direct": [
114040
],
"publisher_programmatic": [
86780
],
"publisher_fallback": [
47494
],
"publisher_untracked": [
825
]
},
"ad_requests": {
"total": [
1227014
]
}
},
"stats": {
"total": 6339.721715000006,
"publisher": 6317.566620000007,
"ci": 22.155095,
"publisher_direct": 6090.406587000007,
"publisher_programmatic": 208.72120300000003,
"publisher_fallback": 0,
"publisher_untracked": 18.43883,
"ci_direct": 0,
"ci_programmatic": 22.155095,
"ci_fallback": 0,
"ci_untracked": 0
}
},
"success": true
}Reporting/Insights Hub/Demand Mix
/report/insight/demand-mix
Returns data for all revenue source combinations, including (publisher, Content Ignite) and (direct, programmatic, fallback)
GET
/
v1
/
report
/
insight
/
demand-mix
/report/insight/demand-mix
curl --request GET \
--url https://api.tagdeliver.com/v1/report/insight/demand-mix \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.tagdeliver.com/v1/report/insight/demand-mix"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.tagdeliver.com/v1/report/insight/demand-mix', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.tagdeliver.com/v1/report/insight/demand-mix",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.tagdeliver.com/v1/report/insight/demand-mix"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.tagdeliver.com/v1/report/insight/demand-mix")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.tagdeliver.com/v1/report/insight/demand-mix")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"results": {
"currency": "GBP",
"dates": [
"2025-11-24"
],
"data": {
"revenue": {
"total": [
6339.721715000006
],
"direct": [
6090.406587000007
],
"programmatic": [
230.87629800000002
],
"fallback": [
0
],
"untracked": [
18.43883
],
"ci_direct": [
0
],
"ci_programmatic": [
22.155095
],
"ci_fallback": [
null
],
"ci_untracked": [
null
],
"publisher_direct": [
6090.406587000007
],
"publisher_programmatic": [
208.72120300000003
],
"publisher_fallback": [
0
],
"publisher_untracked": [
18.43883
]
},
"impressions": {
"total": [
656967
],
"direct": [
346071
],
"programmatic": [
170875
],
"fallback": [
131445
],
"untracked": [
8576
],
"ci_direct": [
8653
],
"ci_programmatic": [
31610
],
"ci_fallback": [
null
],
"ci_untracked": [
null
],
"publisher_direct": [
337418
],
"publisher_programmatic": [
139265
],
"publisher_fallback": [
131445
],
"publisher_untracked": [
8576
]
},
"viewable_impressions": {
"total": [
268921
],
"direct": [
119191
],
"programmatic": [
101411
],
"fallback": [
47494
],
"untracked": [
825
],
"ci_direct": [
5151
],
"ci_programmatic": [
14631
],
"ci_fallback": [
null
],
"ci_untracked": [
null
],
"publisher_direct": [
114040
],
"publisher_programmatic": [
86780
],
"publisher_fallback": [
47494
],
"publisher_untracked": [
825
]
},
"ad_requests": {
"total": [
1227014
]
}
},
"stats": {
"total": 6339.721715000006,
"publisher": 6317.566620000007,
"ci": 22.155095,
"publisher_direct": 6090.406587000007,
"publisher_programmatic": 208.72120300000003,
"publisher_fallback": 0,
"publisher_untracked": 18.43883,
"ci_direct": 0,
"ci_programmatic": 22.155095,
"ci_fallback": 0,
"ci_untracked": 0
}
},
"success": true
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Publisher ID
Date range. All ranges exclude today and run up to yesterday
Available options:
custom, all_time, seven_days, fourteen_days, thirty_days, three_months, six_months, week_to_date, month_to_date, quarter_to_date, year_to_date, last_week, last_month, last_quarter, last_year, month_on_month, quarter_on_quarter, yesterday Start date when range=custom
End date when range=custom
Date grouping when range=custom
Available options:
day, month, year Revenue type
Available options:
gross, net Revenue source, SaaS or Plug&Play (pap)
Available options:
all, pap, saas Environment or platform to report from
Available options:
all, app, web Was this page helpful?
⌘I