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.v14.resources; 18 19import "google/ads/googleads/v14/enums/campaign_draft_status.proto"; 20import "google/api/field_behavior.proto"; 21import "google/api/resource.proto"; 22 23option csharp_namespace = "Google.Ads.GoogleAds.V14.Resources"; 24option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v14/resources;resources"; 25option java_multiple_files = true; 26option java_outer_classname = "CampaignDraftProto"; 27option java_package = "com.google.ads.googleads.v14.resources"; 28option objc_class_prefix = "GAA"; 29option php_namespace = "Google\\Ads\\GoogleAds\\V14\\Resources"; 30option ruby_package = "Google::Ads::GoogleAds::V14::Resources"; 31 32// Proto file describing the Campaign Draft resource. 33 34// A campaign draft. 35message CampaignDraft { 36 option (google.api.resource) = { 37 type: "googleads.googleapis.com/CampaignDraft" 38 pattern: "customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}" 39 }; 40 41 // Immutable. The resource name of the campaign draft. 42 // Campaign draft resource names have the form: 43 // 44 // `customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}` 45 string resource_name = 1 [ 46 (google.api.field_behavior) = IMMUTABLE, 47 (google.api.resource_reference) = { 48 type: "googleads.googleapis.com/CampaignDraft" 49 } 50 ]; 51 52 // Output only. The ID of the draft. 53 // 54 // This field is read-only. 55 optional int64 draft_id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; 56 57 // Immutable. The base campaign to which the draft belongs. 58 optional string base_campaign = 10 [ 59 (google.api.field_behavior) = IMMUTABLE, 60 (google.api.resource_reference) = { 61 type: "googleads.googleapis.com/Campaign" 62 } 63 ]; 64 65 // The name of the campaign draft. 66 // 67 // This field is required and should not be empty when creating new 68 // campaign drafts. 69 // 70 // It must not contain any null (code point 0x0), NL line feed 71 // (code point 0xA) or carriage return (code point 0xD) characters. 72 optional string name = 11; 73 74 // Output only. Resource name of the Campaign that results from overlaying the 75 // draft changes onto the base campaign. 76 // 77 // This field is read-only. 78 optional string draft_campaign = 12 [ 79 (google.api.field_behavior) = OUTPUT_ONLY, 80 (google.api.resource_reference) = { 81 type: "googleads.googleapis.com/Campaign" 82 } 83 ]; 84 85 // Output only. The status of the campaign draft. This field is read-only. 86 // 87 // When a new campaign draft is added, the status defaults to PROPOSED. 88 google.ads.googleads.v14.enums.CampaignDraftStatusEnum.CampaignDraftStatus 89 status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; 90 91 // Output only. Whether there is an experiment based on this draft currently 92 // serving. 93 optional bool has_experiment_running = 13 94 [(google.api.field_behavior) = OUTPUT_ONLY]; 95 96 // Output only. The resource name of the long-running operation that can be 97 // used to poll for completion of draft promotion. This is only set if the 98 // draft promotion is in progress or finished. 99 optional string long_running_operation = 14 100 [(google.api.field_behavior) = OUTPUT_ONLY]; 101} 102