pub struct AdTreeCampaign {Show 27 fields
pub platform_campaign_id: Option<String>,
pub platform: Option<Platform>,
pub campaign_name: Option<String>,
pub status: Option<AdStatus>,
pub review_status: Option<Option<ReviewStatus>>,
pub platform_campaign_status: Option<Option<String>>,
pub campaign_issues_info: Option<Option<Vec<Value>>>,
pub ad_count: Option<i32>,
pub ad_set_count: Option<i32>,
pub budget: Option<Box<AdTreeCampaignBudget>>,
pub campaign_budget: Option<Box<AdTreeCampaignCampaignBudget>>,
pub budget_level: Option<Option<BudgetLevel>>,
pub is_budget_schedule_enabled: Option<bool>,
pub currency: Option<Option<String>>,
pub metrics: Option<Box<AdMetrics>>,
pub platform_ad_account_id: Option<String>,
pub platform_ad_account_name: Option<Option<String>>,
pub account_id: Option<String>,
pub profile_id: Option<String>,
pub advertising_channel_type: Option<Option<String>>,
pub platform_objective: Option<Option<String>>,
pub optimization_goal: Option<Option<String>>,
pub bid_strategy: Option<Option<BidStrategy>>,
pub bid_amount: Option<Option<f64>>,
pub roas_average_floor: Option<Option<f64>>,
pub promoted_object: Option<Box<AdTreeCampaignPromotedObject>>,
pub ad_sets: Option<Vec<AdTreeAdSet>>,
}Expand description
AdTreeCampaign : Campaign with nested ad sets and rolled-up metrics
Fields§
§platform_campaign_id: Option<String>§platform: Option<Platform>§campaign_name: Option<String>§status: Option<AdStatus>Delivery status derived from child ad statuses. Distinct from reviewStatus, which reflects the platform-side review state.
review_status: Option<Option<ReviewStatus>>Platform-side review state of the campaign. Independent of the children-derived delivery status: a campaign can have ads already active (status=active) while the campaign itself is still being reviewed by the platform (reviewStatus=in_review). For Meta, derived from effective_status + issues_info on the Campaign, plus ad-level PENDING_REVIEW rollup.
platform_campaign_status: Option<Option<String>>Raw platform-level campaign status (Meta effective_status: ACTIVE, PAUSED, DELETED, ARCHIVED, IN_PROCESS, WITH_ISSUES). Distinct from per-ad platformStatus.
campaign_issues_info: Option<Option<Vec<Value>>>Platform-reported campaign issues (Meta issues_info[]). Populated only when the platform has delivery issues to report; contains the specific error codes and messages.
ad_count: Option<i32>Total ads across all ad sets
ad_set_count: Option<i32>§budget: Option<Box<AdTreeCampaignBudget>>§campaign_budget: Option<Box<AdTreeCampaignCampaignBudget>>§budget_level: Option<Option<BudgetLevel>>Canonical CBO/ABO indicator. campaign = CBO (Advantage Campaign Budget, budget lives on the campaign). adset = ABO (budget lives on each ad set). Route budget updates to the matching Meta entity.
is_budget_schedule_enabled: Option<bool>Meta-only. Mirrors Campaign.is_budget_schedule_enabled — true when the campaign uses budget scheduling (time-based budget changes). Independent of CBO/ABO.
currency: Option<Option<String>>ISO 4217 currency code (e.g. USD, EUR, CLP, JPY) for all budget amounts in this campaign node. Budgets are NOT normalized to USD.
metrics: Option<Box<AdMetrics>>§platform_ad_account_id: Option<String>§platform_ad_account_name: Option<Option<String>>Human-readable advertiser/account name from the platform. Refreshed on every sync.
account_id: Option<String>§profile_id: Option<String>§advertising_channel_type: Option<Option<String>>Google-only. Raw campaign.advertising_channel_type (SEARCH, PERFORMANCE_MAX, VIDEO, DEMAND_GEN, DISPLAY, SHOPPING, …). Serving surface, distinct from platformObjective (advertiser intent). Null/absent for non-Google platforms.
platform_objective: Option<Option<String>>Raw Meta campaign objective (e.g. OUTCOME_SALES, OUTCOME_LEADS, OUTCOME_TRAFFIC)
optimization_goal: Option<Option<String>>Meta optimization goal shared across ad sets, or comma-separated values when ad sets differ (e.g. OFFSITE_CONVERSIONS, VALUE, LEAD_GENERATION)
bid_strategy: Option<Option<BidStrategy>>§bid_amount: Option<Option<f64>>Representative bid cap for the campaign — bubbled up from the top-spending ad set’s bid_amount (whole currency units). Populated when the ad-set bidStrategy is LOWEST_COST_WITH_BID_CAP or COST_CAP.
roas_average_floor: Option<Option<f64>>Representative ROAS floor for the campaign — bubbled up from the top-spending ad set. Decimal multiplier (2.0 = 2.0x).
promoted_object: Option<Box<AdTreeCampaignPromotedObject>>§ad_sets: Option<Vec<AdTreeAdSet>>Implementations§
Source§impl AdTreeCampaign
impl AdTreeCampaign
Sourcepub fn new() -> AdTreeCampaign
pub fn new() -> AdTreeCampaign
Campaign with nested ad sets and rolled-up metrics
Trait Implementations§
Source§impl Clone for AdTreeCampaign
impl Clone for AdTreeCampaign
Source§fn clone(&self) -> AdTreeCampaign
fn clone(&self) -> AdTreeCampaign
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AdTreeCampaign
impl Debug for AdTreeCampaign
Source§impl Default for AdTreeCampaign
impl Default for AdTreeCampaign
Source§fn default() -> AdTreeCampaign
fn default() -> AdTreeCampaign
Source§impl<'de> Deserialize<'de> for AdTreeCampaign
impl<'de> Deserialize<'de> for AdTreeCampaign
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for AdTreeCampaign
impl PartialEq for AdTreeCampaign
Source§fn eq(&self, other: &AdTreeCampaign) -> bool
fn eq(&self, other: &AdTreeCampaign) -> bool
self and other values to be equal, and is used by ==.