Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions packages/google-ads-datamanager/.jsdoc.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2025 Google LLC
// Copyright 2026 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -40,7 +40,7 @@ module.exports = {
includePattern: '\\.js$'
},
templates: {
copyright: 'Copyright 2025 Google LLC',
copyright: 'Copyright 2026 Google LLC',
includeDate: false,
sourceFiles: false,
systemName: '@google-ads/datamanager',
Expand Down
2 changes: 1 addition & 1 deletion packages/google-ads-datamanager/.mocharc.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2025 Google LLC
// Copyright 2026 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
2 changes: 1 addition & 1 deletion packages/google-ads-datamanager/.prettierrc.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2025 Google LLC
// Copyright 2026 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ syntax = "proto3";

package google.ads.datamanager.v1;

import "google/ads/datamanager/v1/item_parameter.proto";
import "google/api/field_behavior.proto";

option csharp_namespace = "Google.Ads.DataManager.V1";
Expand Down Expand Up @@ -58,4 +59,14 @@ message Item {
// Optional. The unit price excluding tax, shipping, and any transaction level
// discounts.
double unit_price = 3 [(google.api.field_behavior) = OPTIONAL];

// Optional. A unique identifier to reference the item.
string item_id = 4 [(google.api.field_behavior) = OPTIONAL];

// Optional. A bucket of any [event parameters related to an
// item](https://developers.google.com/analytics/devguides/collection/protocol/ga4/reference/events)
// to be included within the event that were not already specified using other
// structured fields.
repeated ItemParameter additional_item_parameters = 5
[(google.api.field_behavior) = OPTIONAL];
}
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,9 @@ message ProductAccount {

// Data Partner.
DATA_PARTNER = 4;

// Google Analytics.
GOOGLE_ANALYTICS_PROPERTY = 5;
}

// Deprecated. Use
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@ message EncryptionInfo {
oneof wrapped_key {
// Google Cloud Platform wrapped key information.
GcpWrappedKeyInfo gcp_wrapped_key_info = 1;

// Amazon Web Services wrapped key information.
AwsWrappedKeyInfo aws_wrapped_key_info = 2;
}
}

Expand Down Expand Up @@ -65,3 +68,30 @@ message GcpWrappedKeyInfo {
// Required. The base64 encoded encrypted data encryption key.
string encrypted_dek = 4 [(google.api.field_behavior) = REQUIRED];
}

// A data encryption key wrapped by an AWS KMS key.
message AwsWrappedKeyInfo {
// The type of algorithm used to encrypt the data.
enum KeyType {
// Unspecified key type. Should never be used.
KEY_TYPE_UNSPECIFIED = 0;

// Algorithm XChaCha20-Poly1305
XCHACHA20_POLY1305 = 1;
}

// Required. The type of algorithm used to encrypt the data.
KeyType key_type = 1 [(google.api.field_behavior) = REQUIRED];

// Required. The Amazon Resource Name of the IAM Role to assume for KMS
// decryption access. Should be in the format of
// "arn:{partition}:iam::{account_id}:role/{role_name}"
string role_arn = 2 [(google.api.field_behavior) = REQUIRED];

// Required. The URI of the AWS KMS key used to decrypt the DEK. Should be in
// the format of "arn:{partition}:kms:{region}:{account_id}:key/{key_id}"
string kek_uri = 3 [(google.api.field_behavior) = REQUIRED];

// Required. The base64 encoded encrypted data encryption key.
string encrypted_dek = 4 [(google.api.field_behavior) = REQUIRED];
}
Original file line number Diff line number Diff line change
Expand Up @@ -140,11 +140,52 @@ enum ErrorReason {
// Two or more destinations in the request have the same reference.
DUPLICATE_DESTINATION_REFERENCE = 36;

// Unsupported operating account for data partner authorization.
UNSUPPORTED_OPERATING_ACCOUNT_FOR_DATA_PARTNER = 37;

// Unsupported linked account for data partner authorization.
UNSUPPORTED_LINKED_ACCOUNT_FOR_DATA_PARTNER = 38;

// Events data contains no user identifiers or ad identifiers.
NO_IDENTIFIERS_PROVIDED = 39;

// The property type is not supported.
INVALID_PROPERTY_TYPE = 40;

// The stream type is not supported.
INVALID_STREAM_TYPE = 41;

// Linked account is only supported when the login account is a `DATA_PARTNER`
// account.
LINKED_ACCOUNT_ONLY_ALLOWED_WITH_DATA_PARTNER_LOGIN_ACCOUNT = 42;

// The login account must be the same as the operating account for the given
// use case.
OPERATING_ACCOUNT_LOGIN_ACCOUNT_MISMATCH = 43;

// Event did not occur within the acceptable time window.
EVENT_TIME_INVALID = 44;

// Parameter uses a reserved name.
RESERVED_NAME_USED = 45;

// The event name is not supported.
INVALID_EVENT_NAME = 46;

// The account is not allowlisted for the given feature.
NOT_ALLOWLISTED = 47;

// The request ID used to retrieve the status of a request is not valid.
// Status can only be retrieved for requests that succeed and don't have
// `validate_only=true`.
INVALID_REQUEST_ID = 48;

// An event had 2 or more Google Analytics destinations.
MULTIPLE_DESTINATIONS_FOR_GOOGLE_ANALYTICS_EVENT = 49;

// The field value is too long.
FIELD_VALUE_TOO_LONG = 50;

// Too many elements in a list in the request.
TOO_MANY_ELEMENTS = 51;
}
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,23 @@ message Event {
// Optional. Advertiser-assessed information about the user at the time that
// the event happened.
UserProperties user_properties = 15 [(google.api.field_behavior) = OPTIONAL];

// Optional. The name of the event. Required for GA4 events.
string event_name = 16 [(google.api.field_behavior) = OPTIONAL];

// Optional. A unique identifier for the user instance of a web client for
// this GA4 web stream.
string client_id = 17 [(google.api.field_behavior) = OPTIONAL];

// Optional. A unique identifier for a user, as defined by the advertiser.
string user_id = 18 [(google.api.field_behavior) = OPTIONAL];

// Optional. A bucket of any [event
// parameters](https://developers.google.com/analytics/devguides/collection/protocol/ga4/reference/events)
// to be included within the event that were not already specified using other
// structured fields.
repeated EventParameter additional_event_parameters = 19
[(google.api.field_behavior) = OPTIONAL];
}

// Identifiers and other information used to match the conversion event with
Expand Down Expand Up @@ -141,6 +158,15 @@ message CustomVariable {
[(google.api.field_behavior) = OPTIONAL];
}

// Event parameter for GA4 events.
message EventParameter {
// Required. The name of the parameter to use.
string parameter_name = 1 [(google.api.field_behavior) = REQUIRED];

// Required. The string representation of the value of the parameter to set.
string value = 2 [(google.api.field_behavior) = REQUIRED];
}

// The source of the event.
enum EventSource {
// Unspecified EventSource. Should never be used.
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
// Copyright 2025 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.datamanager.v1;

import "google/api/field_behavior.proto";

option csharp_namespace = "Google.Ads.DataManager.V1";
option go_package = "google.golang.org/genproto/googleapis/ads/datamanager/v1;datamanager";
option java_multiple_files = true;
option java_outer_classname = "ItemParameterProto";
option java_package = "com.google.ads.datamanager.v1";
option php_namespace = "Google\\Ads\\DataManager\\V1";
option ruby_package = "Google::Ads::DataManager::V1";

// A bucket of any [event parameters related to an
// item](https://developers.google.com/analytics/devguides/collection/protocol/ga4/reference/events)
// to be included within the event that were not already specified using other
// structured fields.
message ItemParameter {
// Required. The name of the parameter to use.
string parameter_name = 1 [(google.api.field_behavior) = REQUIRED];

// Required. The string representation of the value of the parameter to set.
string value = 2 [(google.api.field_behavior) = REQUIRED];
}
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,9 @@ enum ProcessingErrorReason {
// The system did not have the permissions needed to access the KEK.
PROCESSING_ERROR_REASON_KEK_PERMISSION_DENIED = 24;

// The system failed to authenticate with AWS.
PROCESSING_ERROR_REASON_AWS_AUTH_FAILED = 27;

// Failed to decrypt the
// [UserIdentifier][google.ads.datamanager.v1.UserIdentifier] data using the
// DEK.
Expand Down Expand Up @@ -181,4 +184,7 @@ enum ProcessingWarningReason {

// Internal error.
PROCESSING_WARNING_REASON_INTERNAL_ERROR = 8;

// The system failed to authenticate with AWS.
PROCESSING_WARNING_REASON_AWS_AUTH_FAILED = 9;
}
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,24 @@ message UserProperties {
// Optional. The advertiser-assessed value of the customer.
CustomerValueBucket customer_value_bucket = 2
[(google.api.field_behavior) = OPTIONAL];

// Optional. A bucket of any additional [user
// properties](https://developers.google.com/analytics/devguides/collection/protocol/ga4/user-properties)
// for the user associated with this event.
repeated UserProperty additional_user_properties = 3
[(google.api.field_behavior) = OPTIONAL];
}

// A bucket of any additional [user
// properties](https://developers.google.com/analytics/devguides/collection/protocol/ga4/user-properties)
// for the user associated with this event.
message UserProperty {
// Required. The name of the user property to use.
string property_name = 1 [(google.api.field_behavior) = REQUIRED];

// Required. The string representation of the value of the user property to
// use.
string value = 2 [(google.api.field_behavior) = REQUIRED];
}

// Type of the customer associated with the event.
Expand Down
Loading