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.v16.resources; 18 19import "google/ads/googleads/v16/common/simulation.proto"; 20import "google/ads/googleads/v16/enums/simulation_modification_method.proto"; 21import "google/ads/googleads/v16/enums/simulation_type.proto"; 22import "google/api/field_behavior.proto"; 23import "google/api/resource.proto"; 24 25option csharp_namespace = "Google.Ads.GoogleAds.V16.Resources"; 26option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v16/resources;resources"; 27option java_multiple_files = true; 28option java_outer_classname = "CampaignSimulationProto"; 29option java_package = "com.google.ads.googleads.v16.resources"; 30option objc_class_prefix = "GAA"; 31option php_namespace = "Google\\Ads\\GoogleAds\\V16\\Resources"; 32option ruby_package = "Google::Ads::GoogleAds::V16::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// * MULTI_CHANNEL - TARGET_ROAS - UNIFORM 51// * DISCOVERY - TARGET_CPA - DEFAULT 52// * DISPLAY - TARGET_CPA - UNIFORM 53// * PERFORMANCE_MAX - TARGET_CPA - UNIFORM 54// * PERFORMANCE_MAX - TARGET_ROAS - UNIFORM 55// * PERFORMANCE_MAX - BUDGET - UNIFORM 56message CampaignSimulation { 57 option (google.api.resource) = { 58 type: "googleads.googleapis.com/CampaignSimulation" 59 pattern: "customers/{customer_id}/campaignSimulations/{campaign_id}~{type}~{modification_method}~{start_date}~{end_date}" 60 }; 61 62 // Output only. The resource name of the campaign simulation. 63 // Campaign simulation resource names have the form: 64 // 65 // `customers/{customer_id}/campaignSimulations/{campaign_id}~{type}~{modification_method}~{start_date}~{end_date}` 66 string resource_name = 1 [ 67 (google.api.field_behavior) = OUTPUT_ONLY, 68 (google.api.resource_reference) = { 69 type: "googleads.googleapis.com/CampaignSimulation" 70 } 71 ]; 72 73 // Output only. Campaign id of the simulation. 74 int64 campaign_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 75 76 // Output only. The field that the simulation modifies. 77 google.ads.googleads.v16.enums.SimulationTypeEnum.SimulationType type = 3 78 [(google.api.field_behavior) = OUTPUT_ONLY]; 79 80 // Output only. How the simulation modifies the field. 81 google.ads.googleads.v16.enums.SimulationModificationMethodEnum 82 .SimulationModificationMethod modification_method = 4 83 [(google.api.field_behavior) = OUTPUT_ONLY]; 84 85 // Output only. First day on which the simulation is based, in YYYY-MM-DD 86 // format. 87 string start_date = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; 88 89 // Output only. Last day on which the simulation is based, in YYYY-MM-DD 90 // format 91 string end_date = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; 92 93 // List of simulation points. 94 oneof point_list { 95 // Output only. Simulation points if the simulation type is CPC_BID. 96 google.ads.googleads.v16.common.CpcBidSimulationPointList 97 cpc_bid_point_list = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; 98 99 // Output only. Simulation points if the simulation type is TARGET_CPA. 100 google.ads.googleads.v16.common.TargetCpaSimulationPointList 101 target_cpa_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; 102 103 // Output only. Simulation points if the simulation type is TARGET_ROAS. 104 google.ads.googleads.v16.common.TargetRoasSimulationPointList 105 target_roas_point_list = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; 106 107 // Output only. Simulation points if the simulation type is 108 // TARGET_IMPRESSION_SHARE. 109 google.ads.googleads.v16.common.TargetImpressionShareSimulationPointList 110 target_impression_share_point_list = 10 111 [(google.api.field_behavior) = OUTPUT_ONLY]; 112 113 // Output only. Simulation points if the simulation type is BUDGET. 114 google.ads.googleads.v16.common.BudgetSimulationPointList 115 budget_point_list = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; 116 } 117} 118