google-ads-api-client
Version:
A friendly and exhaustive client to the google-ads-api, code generated directly from google's published protobuf schema.
187 lines (186 loc) • 7.7 kB
TypeScript
import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
import type { IBinaryWriter } from "@protobuf-ts/runtime";
import type { BinaryReadOptions } from "@protobuf-ts/runtime";
import type { IBinaryReader } from "@protobuf-ts/runtime";
import type { PartialMessage } from "@protobuf-ts/runtime";
import { MessageType } from "@protobuf-ts/runtime";
import { BudgetTypeEnum_BudgetType } from "../enums/budget_type";
import { BudgetPeriodEnum_BudgetPeriod } from "../enums/budget_period";
import { BudgetDeliveryMethodEnum_BudgetDeliveryMethod } from "../enums/budget_delivery_method";
import { BudgetStatusEnum_BudgetStatus } from "../enums/budget_status";
/**
* A campaign budget.
*
* @generated from protobuf message google.ads.googleads.v11.resources.CampaignBudget
*/
export interface CampaignBudget {
/**
* Immutable. The resource name of the campaign budget.
* Campaign budget resource names have the form:
*
* `customers/{customer_id}/campaignBudgets/{campaign_budget_id}`
*
* @generated from protobuf field: string resource_name = 1;
*/
resourceName: string;
/**
* Output only. The ID of the campaign budget.
*
* A campaign budget is created using the CampaignBudgetService create
* operation and is assigned a budget ID. A budget ID can be shared across
* different campaigns; the system will then allocate the campaign budget
* among different campaigns to get optimum results.
*
* @generated from protobuf field: optional int64 id = 19;
*/
id?: bigint;
/**
* The name of the campaign budget.
*
* When creating a campaign budget through CampaignBudgetService, every
* explicitly shared campaign budget must have a non-null, non-empty name.
* Campaign budgets that are not explicitly shared derive their name from the
* attached campaign's name.
*
* The length of this string must be between 1 and 255, inclusive,
* in UTF-8 bytes, (trimmed).
*
* @generated from protobuf field: optional string name = 20;
*/
name?: string;
/**
* The amount of the budget, in the local currency for the account.
* Amount is specified in micros, where one million is equivalent to one
* currency unit. Monthly spend is capped at 30.4 times this amount.
*
* @generated from protobuf field: optional int64 amount_micros = 21;
*/
amountMicros?: bigint;
/**
* The lifetime amount of the budget, in the local currency for the account.
* Amount is specified in micros, where one million is equivalent to one
* currency unit.
*
* @generated from protobuf field: optional int64 total_amount_micros = 22;
*/
totalAmountMicros?: bigint;
/**
* Output only. The status of this campaign budget. This field is read-only.
*
* @generated from protobuf field: google.ads.googleads.v11.enums.BudgetStatusEnum.BudgetStatus status = 6;
*/
status: BudgetStatusEnum_BudgetStatus;
/**
* The delivery method that determines the rate at which the campaign budget
* is spent.
*
* Defaults to STANDARD if unspecified in a create operation.
*
* @generated from protobuf field: google.ads.googleads.v11.enums.BudgetDeliveryMethodEnum.BudgetDeliveryMethod delivery_method = 7;
*/
deliveryMethod: BudgetDeliveryMethodEnum_BudgetDeliveryMethod;
/**
* Specifies whether the budget is explicitly shared. Defaults to true if
* unspecified in a create operation.
*
* If true, the budget was created with the purpose of sharing
* across one or more campaigns.
*
* If false, the budget was created with the intention of only being used
* with a single campaign. The budget's name and status will stay in sync
* with the campaign's name and status. Attempting to share the budget with a
* second campaign will result in an error.
*
* A non-shared budget can become an explicitly shared. The same operation
* must also assign the budget a name.
*
* A shared campaign budget can never become non-shared.
*
* @generated from protobuf field: optional bool explicitly_shared = 23;
*/
explicitlyShared?: boolean;
/**
* Output only. The number of campaigns actively using the budget.
*
* This field is read-only.
*
* @generated from protobuf field: optional int64 reference_count = 24;
*/
referenceCount?: bigint;
/**
* Output only. Indicates whether there is a recommended budget for this campaign budget.
*
* This field is read-only.
*
* @generated from protobuf field: optional bool has_recommended_budget = 25;
*/
hasRecommendedBudget?: boolean;
/**
* Output only. The recommended budget amount. If no recommendation is available, this will
* be set to the budget amount.
* Amount is specified in micros, where one million is equivalent to one
* currency unit.
*
* This field is read-only.
*
* @generated from protobuf field: optional int64 recommended_budget_amount_micros = 26;
*/
recommendedBudgetAmountMicros?: bigint;
/**
* Immutable. Period over which to spend the budget. Defaults to DAILY if not specified.
*
* @generated from protobuf field: google.ads.googleads.v11.enums.BudgetPeriodEnum.BudgetPeriod period = 13;
*/
period: BudgetPeriodEnum_BudgetPeriod;
/**
* Output only. The estimated change in weekly clicks if the recommended budget is applied.
*
* This field is read-only.
*
* @generated from protobuf field: optional int64 recommended_budget_estimated_change_weekly_clicks = 27;
*/
recommendedBudgetEstimatedChangeWeeklyClicks?: bigint;
/**
* Output only. The estimated change in weekly cost in micros if the recommended budget is
* applied. One million is equivalent to one currency unit.
*
* This field is read-only.
*
* @generated from protobuf field: optional int64 recommended_budget_estimated_change_weekly_cost_micros = 28;
*/
recommendedBudgetEstimatedChangeWeeklyCostMicros?: bigint;
/**
* Output only. The estimated change in weekly interactions if the recommended budget is
* applied.
*
* This field is read-only.
*
* @generated from protobuf field: optional int64 recommended_budget_estimated_change_weekly_interactions = 29;
*/
recommendedBudgetEstimatedChangeWeeklyInteractions?: bigint;
/**
* Output only. The estimated change in weekly views if the recommended budget is applied.
*
* This field is read-only.
*
* @generated from protobuf field: optional int64 recommended_budget_estimated_change_weekly_views = 30;
*/
recommendedBudgetEstimatedChangeWeeklyViews?: bigint;
/**
* Immutable. The type of the campaign budget.
*
* @generated from protobuf field: google.ads.googleads.v11.enums.BudgetTypeEnum.BudgetType type = 18;
*/
type: BudgetTypeEnum_BudgetType;
}
declare class CampaignBudget$Type extends MessageType<CampaignBudget> {
constructor();
create(value?: PartialMessage<CampaignBudget>): CampaignBudget;
internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CampaignBudget): CampaignBudget;
internalBinaryWrite(message: CampaignBudget, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
* @generated MessageType for protobuf message google.ads.googleads.v11.resources.CampaignBudget
*/
export declare const CampaignBudget: CampaignBudget$Type;
export {};