Skip to content

Campaigns Performance

POST
/api/public/campaigns-performance

Note: An organization-scoped API key includes only flights for that key’s advertiser and publisher. Attribution the publisher cannot see stays hidden.

Delivery status, impressions, conversions and costs for each campaign in the campaign tracking sheet.

For the most accurate YouTube Engaged Views and attribution numbers, set endDate to at least 3 days before today. Numbers in the last 3 days may include estimates and can change once YouTube reports actual data.

This endpoint utilizes a task system.

Please read the description of Get status of file processing to understand how it works.

Campaigns Performance
curl --request POST \
--url https://backend.podscribe.ai/api/public/campaigns-performance \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "name": "example", "startDate": "2023-10-10", "endDate": "2023-10-10", "externalIds": [ "example" ] }'
Media typeapplication/json
name

Optional display name for the generated report. Shown in the Reports UI. Ignored when an identical cached report is reused; pass a new request (or wait for cache expiry) to apply a new name.

string
Allowed length: (≤ 255 chars)
startDate

Start date timestamp, default is 3 months ago.

string
Example
2023-10-10
endDate

End date timestamp, default is one week forward.

string
Example
2023-10-10
externalIds

External IDs of the campaigns to report on, as in the Campaign Id column. When set, startDate and endDate are ignored.

Array<string>

OK

Media typeapplication/json
id

ID of the file processing task.

string<uuid>
status

Task status: pending, done or failed.

Allowed values: pending done failed
url

Link to download the result file. Returned once the file is ready.

string<uri>
Response example
{
"status": "pending"
}
Field Type Example Description
Advertiser string Coca-Cola Name of the advertising company
Publisher string Spotify Name of the publishing platform
Campaign string Summer Promo Name of the advertising campaign
Podcast string Tech Talk Name of the podcast
Tags string Tech, Sports Tags associated with the campaign
Geo string US, UK Geographical location targeted by the campaign
Start date string 4/8/2024 Start date of the campaign
End date string 4/15/2024 End date of the campaign
Expected string 4/8/2024 Expected air date of the campaign
Category string Baked-in Category of the campaign
Unit string Mid Type of advertising unit
Expected Impressions number 250000 Expected number of impressions
Spend number 5882 Amount spent on the campaign
CPM string 631 $ Cost per mille (thousand) impressions
Ads number 12 Number of ads found
Status string WRONG GEO, STALE READ Column indicating the status and error flags.
Impressions Source string Prefix Source used for impression counts
Impressions number 126301 Number of impressions
Podcast Downloads number 115752 Number of podcast impressions
YouTube Views number 10549 Number of YouTube views
Rumble Views number 9000 Rumble view impressions
7d Impressions number 10000 Impressions counted within 7 days
15d Impressions number 20000 Impressions counted within 15 days
30d Impressions number 30000 Impressions counted within 30 days
45d Impressions number 40000 Impressions counted within 45 days
60d Impressions number 50000 Impressions counted within 60 days
Reach number 112322 Reach of the campaign
Freq. number 1.0 Frequency of the campaign
Clicks number 321 Number of clicks
Clicks % number 0.003 Click rate
Cost Per Click number 18.32 Spend divided by clicks
Visitors number 112.94 Number of visitors reached
Visitor % number 0.083 % Percentage of visitors reached
Cost Per Visitor number 52.08 Spend divided by visitors
Visits number 588 Number of visits
Visit % number 0.000 % Percentage of visits
Cost Per Visit number 10.0 Spend divided by visits
Installs number 0.16 Number of app installs
Install % number 0.001 Install rate
Cost Per Install number 367.63 Spend divided by installs
Signups number 3.8 Number of signups
Signup % number 0.003 Signup rate
Cost Per Signup number 154.79 Spend divided by signups
Leads number 4.2 Number of leads generated
Lead % number 0.003 Lead rate
Cost Per Lead number 140.05 Spend divided by leads
Convs. number 2.3 Number of conversions
Conv. % number 0.002 % Conversion rate
Cost Per Conversion number 255.74 Spend divided by conversions
Revenue number 152 Revenue generated
ROAS number 0.02 Return on advertising spend
CPA number 3076 Cost per acquisition
Computed CPA number 1667 Computed cost per acquisition
Filtered Resolved Status string Flags reflecting the status of campaign issues, with user-defined filtering.
Resolved Status string Flags indicating the status of campaign issues.
Prefix placed bool true Prefix placed
DAI Impression Pixel string https://verifi.podscribe.com/… Link provided to the ad server for data callback configuration.
Comments string Some user comments Additional comments
Ad Server string megaphone Ad server used
SmartPromo Downloads string 123 Number of downloads
Cost Per SmartPromo Download number 47.82 Spend divided by downloads
New Converted Devices string 123 Number of new converted devices
New Converted Device % number 0.004 New converted device rate
Cost Per New Converted Device number 47.82 Spend divided by new converted devices
New Device SmartPromo Downloads string 123 Number of new device downloads
Cost Per New Device SmartPromo Download number 47.82 Spend divided by new device downloads
New Subscriber Downloads number 123 Number of new subscriber downloads
New Subscribers string 123 Number of new subscribers
New Subscribers % number 0.004 New subscriber rate
Cost Per New Subscriber number 47.82 Spend divided by new subscribers
% of impressions to listeners with frequency 15+ string 28.8 Percentage of impressions to listeners with frequency 15+
% of listeners with frequency 15+ string 28.5 Percentage of listeners with frequency 15+
Expected Impressions number 250000 Expected number of impressions
Campaign Id string some campaign id Identifier for the campaign
Synced At string 4/3/2024, 2:47 AM Date and time when data was synced
Air Date string 2024-04-08 04:08:04.799000+00:00 The date when the advertising campaign was first aired or broadcasted.
Initiative string Spring Campaign Campaign initiative
Product string Premium Plan Campaign product
Business Line string Direct Campaign business line
DAI Impression Pixel by Creative string https://verifi.podscribe.com/… DAI impression pixel URL for the first creative
Bill To string Agency Name Billing account name
Bill to Publisher string Publisher Name Publisher billing name
Media Type string podcast Media type from the campaign tracking sheet
Extra DAI Impression Pixel by Creative N string https://verifi.podscribe.com/… Additional creative pixel columns can be included when a campaign has more creatives
Promo string SUMMER20 Campaign promo code, if configured.
Vanity URL string https://example.com/promo Vanity URL configured for the campaign, if provided.
Expected landing URL string https://example.com/landing Expected landing URL after redirect, if provided.
UTM Source string spotify UTM source configured for campaign tracking, if provided.
UTM Medium string podcast UTM medium configured for campaign tracking, if provided.
Spotify Video Streams number 0 Spotify Video Streams count
Found Ads string
JSON
[
{
“adId”: “…”,
“audioFileUrl”: “…”
}
]
JSON array of found ads. Includes adId, episodeId, episodeTitle, showTitle, publishedAt, adDuration, startTs, endTs, platform, episodeDuration, episodeUrlInFeed, placementNum, placementPercent, publicLink, transcriptLink, episodeGuid, episodeLength, adTimestamp, adLength, unit, readBy, readScore, transcriptUrl, audioFileUrl (direct HTTPS link to the ad-clip audio file, not the full episode; download it with a plain GET such as curl -O, with no API key, Authorization header or Podscribe login; the API key is needed only to call this endpoint; null when no clip is stored), status (comma-separated placement flags such as BAD PROMO; COMPETITOR may include the competitor name, /-separated products, and where it was found, with ; between competitors and a pipe between where-found groups; DO NOT SAY may include semicolon-separated phrases), and promo (found promo/URL). publicLink is playback; transcriptLink/transcriptUrl open the ad in the transcript.
Radio Impressions number 5000 Number of radio impressions, if applicable.
SmartServe Ad Server string smartserve SmartServe ad server platform, if applicable.
SmartServe Creative string Creative A SmartServe creative name(s), comma-separated.
SmartServe Creative Source URL string https://example.com/creative.mp4 SmartServe creative source URL(s), comma-separated.
SmartServe Targeting Profile string Profile A SmartServe targeting profile name.
SmartServe Banner Name string banner.png SmartServe banner file name(s), comma-separated.
SmartServe Banner Source URL string https://example.com/banner.png SmartServe banner source URL(s), semicolon-separated.
SmartServe Clickthrough URL string https://example.com SmartServe campaign-level clickthrough URL.
SmartServe Campaign Settings (JSON) string
JSON
{
“clname”: “camp_a”
}
JSON object of SmartServe campaign settings.
SmartServe Targeting Profile Settings (JSON) string
JSON
{
“id”: “tp_a”
}
JSON object of SmartServe targeting profile settings.
SmartServe VAST URL string https://example.com/vast.xml SmartServe VAST URL.
YouTube Engaged Views number 123 Engaged YouTube views when Engaged Views is enabled.