blob: 09fca8945f933a7dd9632d93fbeee15f2394fe16 [file] [log] [blame]
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package google.ads.googleads.v16.resources;
import "google/ads/googleads/v16/enums/sk_ad_network_coarse_conversion_value.proto";
import "google/api/field_behavior.proto";
import "google/api/resource.proto";
option csharp_namespace = "Google.Ads.GoogleAds.V16.Resources";
option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v16/resources;resources";
option java_multiple_files = true;
option java_outer_classname = "CustomerSkAdNetworkConversionValueSchemaProto";
option java_package = "com.google.ads.googleads.v16.resources";
option objc_class_prefix = "GAA";
option php_namespace = "Google\\Ads\\GoogleAds\\V16\\Resources";
option ruby_package = "Google::Ads::GoogleAds::V16::Resources";
// Proto file describing the SkAdNetworkConversionVauleSchema resource.
// A CustomerSkAdNetworkConversionValueSchema.
message CustomerSkAdNetworkConversionValueSchema {
option (google.api.resource) = {
type: "googleads.googleapis.com/CustomerSkAdNetworkConversionValueSchema"
pattern: "customers/{customer_id}/customerSkAdNetworkConversionValueSchemas/{account_link_id}"
};
// The CustomerLink specific SkAdNetworkConversionValueSchema.
message SkAdNetworkConversionValueSchema {
// Mappings for fine grained conversion value.
message FineGrainedConversionValueMappings {
// Output only. Fine grained conversion value. Valid values are in the
// inclusive range [0,63].
int32 fine_grained_conversion_value = 1
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Conversion events the fine grained conversion value maps
// to.
ConversionValueMapping conversion_value_mapping = 2
[(google.api.field_behavior) = OUTPUT_ONLY];
}
// Mappings for each postback in multiple conversion windows.
message PostbackMapping {
// Output only. 0-based index that indicates the order of postback. Valid
// values are in the inclusive range [0,2].
int32 postback_sequence_index = 1
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Conversion value mappings for all coarse grained
// conversion values.
CoarseGrainedConversionValueMappings
coarse_grained_conversion_value_mappings = 2
[(google.api.field_behavior) = OUTPUT_ONLY];
// Event or conversion value used for locking conversion window.
oneof lock_window_trigger {
// Output only. Coarse grained conversion value that triggers conversion
// window lock.
google.ads.googleads.v16.enums.SkAdNetworkCoarseConversionValueEnum
.SkAdNetworkCoarseConversionValue
lock_window_coarse_conversion_value = 3
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Fine grained conversion value that triggers conversion
// window lock.
int32 lock_window_fine_conversion_value = 4
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Event name that triggers conversion window lock.
string lock_window_event = 5
[(google.api.field_behavior) = OUTPUT_ONLY];
}
}
// Mappings for coarse grained conversion values.
message CoarseGrainedConversionValueMappings {
// Output only. Mapping for "low" coarse conversion value.
ConversionValueMapping low_conversion_value_mapping = 1
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Mapping for "medium" coarse conversion value.
ConversionValueMapping medium_conversion_value_mapping = 2
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Mapping for "high" coarse conversion value.
ConversionValueMapping high_conversion_value_mapping = 3
[(google.api.field_behavior) = OUTPUT_ONLY];
}
// Represents mapping from one conversion value to one or more conversion
// events.
message ConversionValueMapping {
// Output only. The minimum of the time range in which a user was last
// active during the measurement window.
int64 min_time_post_install_hours = 1
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The maximum of the time range in which a user was last
// active during the measurement window.
int64 max_time_post_install_hours = 2
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The conversion value may be mapped to multiple events with
// various attributes.
repeated Event mapped_events = 3
[(google.api.field_behavior) = OUTPUT_ONLY];
}
// Defines a Google conversion event that the conversion value is mapped to.
message Event {
// Defines a range for revenue values.
message RevenueRange {
// Output only. For revenue ranges, the minimum value in `currency_code`
// for which this conversion value would be updated. A value of 0 will
// be treated as unset.
double min_event_revenue = 3
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. For revenue ranges, the maximum value in `currency_code`
// for which this conversion value would be updated. A value of 0 will
// be treated as unset.
double max_event_revenue = 4
[(google.api.field_behavior) = OUTPUT_ONLY];
}
// Defines a range for event counter values.
message EventOccurrenceRange {
// Output only. For event counter ranges, the minimum of the defined
// range. A value of 0 will be treated as unset.
int64 min_event_count = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. For event counter ranges, the maximum of the defined
// range. A value of 0 will be treated as unset.
int64 max_event_count = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
}
// Output only. Google event name represented by this conversion value.
string mapped_event_name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The reported currency for the event_revenue. ISO 4217
// three-letter currency code, for example, "USD"
string currency_code = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
// Either a range or specific value for event revenue.
oneof revenue_rate {
// Output only. The event revenue range.
RevenueRange event_revenue_range = 3
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The specific event revenue value.
double event_revenue_value = 4
[(google.api.field_behavior) = OUTPUT_ONLY];
}
// Either a range or specific value for event counter.
oneof event_rate {
// Output only. The event counter range.
EventOccurrenceRange event_occurrence_range = 5
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. For specific event counter values.
int64 event_counter = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
}
}
// Required. Output only. Apple App Store app ID.
string app_id = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.field_behavior) = OUTPUT_ONLY
];
// Output only. A time window (measured in hours) post-install, after which
// the App Attribution Partner or advertiser stops calling
// [updateConversionValue]
// (https://developer.apple.com/documentation/storekit/skadnetwork/3566697-updateconversionvalue).
int32 measurement_window_hours = 2
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Fine grained conversion value mappings.
// For SkAdNetwork versions >= 4.0 that support multiple conversion
// windows, fine grained conversion value mappings are only applicable to
// the first postback.
repeated FineGrainedConversionValueMappings
fine_grained_conversion_value_mappings = 3
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Per-postback conversion value mappings for postbacks in
// multiple conversion windows. Only applicable for SkAdNetwork versions
// >= 4.0.
repeated PostbackMapping postback_mappings = 4
[(google.api.field_behavior) = OUTPUT_ONLY];
}
// Output only. The resource name of the schema.
// CustomerSkAdNetworkConversionValueSchema resource names have the form:
// customers/{customer_id}/customerSkAdNetworkConversionValueSchemas/{account_link_id}
string resource_name = 1 [
(google.api.field_behavior) = OUTPUT_ONLY,
(google.api.resource_reference) = {
type: "googleads.googleapis.com/CustomerSkAdNetworkConversionValueSchema"
}
];
// Output only. The schema for the specified resource.
SkAdNetworkConversionValueSchema schema = 2
[(google.api.field_behavior) = OUTPUT_ONLY];
}