Skip to main content

AdTreeCampaign

Struct AdTreeCampaign 

Source
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

Source

pub fn new() -> AdTreeCampaign

Campaign with nested ad sets and rolled-up metrics

Trait Implementations§

Source§

impl Clone for AdTreeCampaign

Source§

fn clone(&self) -> AdTreeCampaign

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for AdTreeCampaign

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for AdTreeCampaign

Source§

fn default() -> AdTreeCampaign

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for AdTreeCampaign

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl PartialEq for AdTreeCampaign

Source§

fn eq(&self, other: &AdTreeCampaign) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for AdTreeCampaign

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for AdTreeCampaign

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more