1// Copyright 2023 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15syntax = "proto3"; 16 17package google.ads.googleads.v15.resources; 18 19import "google/ads/googleads/v15/common/simulation.proto"; 20import "google/ads/googleads/v15/enums/simulation_modification_method.proto"; 21import "google/ads/googleads/v15/enums/simulation_type.proto"; 22import "google/api/field_behavior.proto"; 23import "google/api/resource.proto"; 24 25option csharp_namespace = "Google.Ads.GoogleAds.V15.Resources"; 26option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v15/resources;resources"; 27option java_multiple_files = true; 28option java_outer_classname = "CampaignSimulationProto"; 29option java_package = "com.google.ads.googleads.v15.resources"; 30option objc_class_prefix = "GAA"; 31option php_namespace = "Google\\Ads\\GoogleAds\\V15\\Resources"; 32option ruby_package = "Google::Ads::GoogleAds::V15::Resources"; 33 34// Proto file describing the campaign simulation resource. 35 36// A campaign simulation. Supported combinations of advertising 37// channel type, simulation type and simulation modification 38// method is detailed below respectively. 39// 40// * SEARCH - CPC_BID - UNIFORM 41// * SEARCH - CPC_BID - SCALING 42// * SEARCH - TARGET_CPA - UNIFORM 43// * SEARCH - TARGET_CPA - SCALING 44// * SEARCH - TARGET_ROAS - UNIFORM 45// * SEARCH - TARGET_IMPRESSION_SHARE - UNIFORM 46// * SEARCH - BUDGET - UNIFORM 47// * SHOPPING - BUDGET - UNIFORM 48// * SHOPPING - TARGET_ROAS - UNIFORM 49// * MULTI_CHANNEL - TARGET_CPA - UNIFORM 50// * DISCOVERY - TARGET_CPA - DEFAULT 51// * DISPLAY - TARGET_CPA - UNIFORM 52// * PERFORMANCE_MAX - TARGET_CPA - UNIFORM 53// * PERFORMANCE_MAX - TARGET_ROAS - UNIFORM 54// * PERFORMANCE_MAX - BUDGET - UNIFORM 55message CampaignSimulation { 56 option (google.api.resource) = { 57 type: "googleads.googleapis.com/CampaignSimulation" 58 pattern: "customers/{customer_id}/campaignSimulations/{campaign_id}~{type}~{modification_method}~{start_date}~{end_date}" 59 }; 60 61 // Output only. The resource name of the campaign simulation. 62 // Campaign simulation resource names have the form: 63 // 64 // `customers/{customer_id}/campaignSimulations/{campaign_id}~{type}~{modification_method}~{start_date}~{end_date}` 65 string resource_name = 1 [ 66 (google.api.field_behavior) = OUTPUT_ONLY, 67 (google.api.resource_reference) = { 68 type: "googleads.googleapis.com/CampaignSimulation" 69 } 70 ]; 71 72 // Output only. Campaign id of the simulation. 73 int64 campaign_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 74 75 // Output only. The field that the simulation modifies. 76 google.ads.googleads.v15.enums.SimulationTypeEnum.SimulationType type = 3 77 [(google.api.field_behavior) = OUTPUT_ONLY]; 78 79 // Output only. How the simulation modifies the field. 80 google.ads.googleads.v15.enums.SimulationModificationMethodEnum 81 .SimulationModificationMethod modification_method = 4 82 [(google.api.field_behavior) = OUTPUT_ONLY]; 83 84 // Output only. First day on which the simulation is based, in YYYY-MM-DD 85 // format. 86 string start_date = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; 87 88 // Output only. Last day on which the simulation is based, in YYYY-MM-DD 89 // format 90 string end_date = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; 91 92 // List of simulation points. 93 oneof point_list { 94 // Output only. Simulation points if the simulation type is CPC_BID. 95 google.ads.googleads.v15.common.CpcBidSimulationPointList 96 cpc_bid_point_list = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; 97 98 // Output only. Simulation points if the simulation type is TARGET_CPA. 99 google.ads.googleads.v15.common.TargetCpaSimulationPointList 100 target_cpa_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; 101 102 // Output only. Simulation points if the simulation type is TARGET_ROAS. 103 google.ads.googleads.v15.common.TargetRoasSimulationPointList 104 target_roas_point_list = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; 105 106 // Output only. Simulation points if the simulation type is 107 // TARGET_IMPRESSION_SHARE. 108 google.ads.googleads.v15.common.TargetImpressionShareSimulationPointList 109 target_impression_share_point_list = 10 110 [(google.api.field_behavior) = OUTPUT_ONLY]; 111 112 // Output only. Simulation points if the simulation type is BUDGET. 113 google.ads.googleads.v15.common.BudgetSimulationPointList 114 budget_point_list = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; 115 } 116} 117