Campaign

A campaign is an advertising initiative on the internet, native, TV, billboard, or audio channels. It pulls together a budget, schedule, geo targeting, audience, delivery settings, and one or more ads - everything needed to put a brand in front of the right people. Campaigns start as drafts so you can shape budget, schedule, targeting, and creative before launching.

API operations

Relationships

Every campaign belongs to exactly one advertiser. The advertiser provides billing and default settings.
A campaign contains one or more ads. Internet campaigns accept display ads, native campaigns accept native ads, TV campaigns accept TV ads, and billboard campaigns accept billboard ads. At least one ad is required before launching.
Each campaign targets multiple locations within a single tier: states, cities, DMAs, or zip codes. Tiers cannot be mixed.
Audience configuration defines who sees the campaign's ads. Two types: demographic (geo + optional segments) and retargeting (users from other campaigns or the advertiser pixel). Billboard campaigns do not support audiences.
Campaign performance is tracked through reporting endpoints with daily time series, geographic breakdowns, and per-ad metrics.

Statuses

Saved For Later
Campaign created but not yet launched. Can be edited freely. Must add ads before launching.
Pending Ad Approval
Campaign submitted for launch but waiting for ad approval.
Pending Network Approval
Campaign submitted for launch but waiting for ad network approval.
Waiting For Custom Ads
Campaign is waiting for custom ads to be provided.
Waiting For TV Outro
TV campaign is waiting for an outro to be added.
No Approved Ads
Campaign has no approved ads. Ads need to be approved before delivery can begin.
Scheduled
Campaign is approved and scheduled to go live on its start date.
Live
Campaign is actively serving ads. Can be paused.
Payment Retrying
A payment attempt failed and is being retried. Campaign delivery may be interrupted.
Payment Failed
Payment has failed. Campaign delivery is stopped until payment is resolved.
Ending
Campaign is in the process of ending. Delivery is winding down.
Campaign Ended
Campaign reached its end date or budget was exhausted. Can be resumed if budget/dates allow.
Archived
Campaign has been archived. Not recoverable through the API.
Deleted
Campaign has been deleted.

Key concepts

Budget Frequency
How the budget amount is applied. 'monthly' spends up to the amount per month. 'total' is the entire budget for the campaign duration (requires end date, minimum 14-day flight). Daily frequency is not supported. Budget minimums vary by channel: internet and native $300/mo, TV and audio $840/mo, billboard $630/mo.
Geo
Geographic targeting uses a single-tier model. Provide one of: states (US state codes), cities ({ name, stateCode } objects), dmas (DMA IDs), or zips ({ code } objects). Cannot mix tiers.
Audience Type
The audience.type field determines the targeting approach: 'demographic' for geo + optional segments, 'retargeting' for users from other campaigns or the advertiser pixel. Audience type is immutable after creation.
Date Format
startDate and endDate are ISO 8601 datetime strings (e.g. '2026-05-01T00:00:00Z'). Plain YYYY-MM-DD date-only strings are rejected. UTC (Z suffix) is recommended.
Total Intervals
Number of monthly billing intervals (1-24). Set on launch for monthly-budget campaigns to fix the duration. Omit for indefinite monthly campaigns. Null for total-budget campaigns.

Constraints

Rules to follow
  • Budget and budgetFrequency travel together - setting budget without a resolvable frequency returns 400 VALIDATION:budgetFrequency.
  • Total budgets require startDate and endDate with at least a 14-day flight, otherwise the API returns 400 VALIDATION:endDate.
  • Budget minimums: internet and native $300/mo ($10/day), TV and audio $840/mo ($28/day), billboard $630/mo ($21/day).
  • Daily budget frequency is not supported - only 'monthly' and 'total'.
  • Geo targeting tiers cannot be mixed; provide only one of states, cities, dmas, or zips. If multiple are sent, precedence is states > cities > dmas > zips.
  • Audience type is chosen at creation via isRetargeting and cannot be changed afterward.
  • Billboard campaigns do not support audiences - neither demographic nor retargeting audience configuration is available for billboard campaigns.
  • At least one ad is required before launching a campaign.
  • startDate and endDate must be ISO 8601 datetimes; date-only strings are rejected.

When building apps

Two-Phase Setup
Campaign setup is a two-phase flow. Create the campaign with just a name and optional type/isRetargeting, then configure budget, schedule, channel settings, geo, audience, and delivery settings via update/patch and the dedicated sub-resources. Upload ads matching the campaign type (image for display, native, and billboard; video for TV; audio for audio) before launching.
Retargeting Flow
Retargeting campaigns reach users who have already interacted with the brand, either via other AdCritter internet or TV campaign audiences (audience.retargetingCampaignIds) or the advertiser pixel (audience.retargetingType). Set isRetargeting at creation - audience type is immutable afterward - and note that billboard campaigns do not support audiences at all.
Bid Strategy Presets
Surface each preset's performanceRecommendation in the UI so users can weigh the trade-offs between Premium, Quality, Reach, and Extended Network.
Performance Monitoring
For monitoring, GET /v1/advertisers/{advertiserId}/reports/snapshot returns dashboard-level pacing and interval metrics across an advertiser's campaigns, while GET /v1/advertisers/{advertiserId}/reports/campaigns/{campaignId} returns detailed per-campaign metrics.