Create Campaign
const url = 'https://backend.podscribe.ai/api/public/campaign';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"name":"example","publisher":"example","advertiser":"example","type":"Baked-in","flights":[{"startDate":"2026-04-15T12:00:00Z","endDate":"2026-04-15T12:00:00Z","expectedDate":"2026-04-15T12:00:00Z","totalCost":1,"cpm":1,"currency":"USD","expectedImpressions":1}],"externalId":"example","itunesOrYtId":"example","geo":"GLOBAL","expectedUnits":[{"position":"pre","length":1}],"promo":"example","expectedLandingUrl":"example","product":"example","initiative":"example","expectedTalkingPoints":["example"],"disallowedTalkingPoints":["example"],"mediaType":"podcast","tags":["example"],"scriptUrl":"example","teamMembers":["example"],"creativeIds":["example"],"billToPublisher":true}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://backend.podscribe.ai/api/public/campaign \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "name": "example", "publisher": "example", "advertiser": "example", "type": "Baked-in", "flights": [ { "startDate": "2026-04-15T12:00:00Z", "endDate": "2026-04-15T12:00:00Z", "expectedDate": "2026-04-15T12:00:00Z", "totalCost": 1, "cpm": 1, "currency": "USD", "expectedImpressions": 1 } ], "externalId": "example", "itunesOrYtId": "example", "geo": "GLOBAL", "expectedUnits": [ { "position": "pre", "length": 1 } ], "promo": "example", "expectedLandingUrl": "example", "product": "example", "initiative": "example", "expectedTalkingPoints": [ "example" ], "disallowedTalkingPoints": [ "example" ], "mediaType": "podcast", "tags": [ "example" ], "scriptUrl": "example", "teamMembers": [ "example" ], "creativeIds": [ "example" ], "billToPublisher": true }'Authorizations
Section titled “Authorizations”Request Bodyrequired
Section titled “Request Bodyrequired”object
Campaign name
Publisher name (lookup). Optional when itunesOrYtId is provided; then the publisher is inferred from the show.
Advertiser name
Campaign type
The start date of the campaign eg 2024-01-20
object
Start of the campaign in ISO format for DAI campaigns
End of the campaign in ISO format for DAI campaigns
Expected date in ISO format for Baked-in campaings
Rate of the campaign
Cpm rate of the campaign
Currency code (USD, EUR, GBP). Exchange rate is calculated automatically on the backend.
Expected impressions of the campaign
External ID of the campaign
ITunes ID / YouTube Channel ID / YouTube Playlist ID
Country
Expected units of the campaign
object
Ad position
Ad length in seconds
The discount code
Expected landing URL of the campaign
Product metadata
Initiative metadata
Expected talking points
Disallowed talking points
Media type of the campaign
Tags
Script URL of the campaign
Team members metadata
Creative IDs metadata
Whether to bill publisher
Responses
Section titled “Responses”OK
object
ID of the campaign
External ID of the campaign
Examplegenerated
{ "id": "example", "externalId": "example"}Unexpected error.
object
Nodejs Error
object
Examplegenerated
{ "message": {}}