From c0077dd54f8b2f039844919a99f948ef812baa62 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:10:50 -0700 Subject: [PATCH 01/61] feat: Generate Google.Apis.AccessContextManager.v1 version 1.68.0.3574 --- DiscoveryJson/accesscontextmanager.v1.json | 6 +++--- .../Google.Apis.AccessContextManager.v1.cs | 18 ++++++++++-------- .../Google.Apis.AccessContextManager.v1.csproj | 2 +- 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/DiscoveryJson/accesscontextmanager.v1.json b/DiscoveryJson/accesscontextmanager.v1.json index 471e2b1bc6a..d86e20e796c 100644 --- a/DiscoveryJson/accesscontextmanager.v1.json +++ b/DiscoveryJson/accesscontextmanager.v1.json @@ -1205,8 +1205,8 @@ "name" ], "parameters": { - "appendScopedAccessSettings": { - "description": "Optional. This field will be used to control whether or not scoped access settings are appended to the existing list of scoped access settings. If true, the scoped access settings in the request will be appended to the existing list of scoped access settings. If false, the scoped access settings in the request replace the existing list of scoped access settings.", + "append": { + "description": "Optional. This field controls whether or not certain repeated settings in the update request overwrite or append to existing settings on the binding. If true, then append. Otherwise overwrite. So far, only scoped_access_settings supports appending. Global access_levels, dry_run_access_levels, and reauth_settings are not compatible with append functionality, and the request will return an error if append=true when these settings are in the update_mask. The request will also return an error if append=true when \"scoped_access_settings\" is not set in the update_mask.", "location": "query", "type": "boolean" }, @@ -1295,7 +1295,7 @@ } } }, - "revision": "20240923", + "revision": "20241014", "rootUrl": "https://accesscontextmanager.googleapis.com/", "schemas": { "AccessContextManagerOperationMetadata": { diff --git a/Src/Generated/Google.Apis.AccessContextManager.v1/Google.Apis.AccessContextManager.v1.cs b/Src/Generated/Google.Apis.AccessContextManager.v1/Google.Apis.AccessContextManager.v1.cs index dd4c9f352b4..4ba7bb5a8c9 100644 --- a/Src/Generated/Google.Apis.AccessContextManager.v1/Google.Apis.AccessContextManager.v1.cs +++ b/Src/Generated/Google.Apis.AccessContextManager.v1/Google.Apis.AccessContextManager.v1.cs @@ -2868,13 +2868,15 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Acc public virtual string Name { get; private set; } /// - /// Optional. This field will be used to control whether or not scoped access settings are appended to - /// the existing list of scoped access settings. If true, the scoped access settings in the request will - /// be appended to the existing list of scoped access settings. If false, the scoped access settings in - /// the request replace the existing list of scoped access settings. + /// Optional. This field controls whether or not certain repeated settings in the update request + /// overwrite or append to existing settings on the binding. If true, then append. Otherwise overwrite. + /// So far, only scoped_access_settings supports appending. Global access_levels, dry_run_access_levels, + /// and reauth_settings are not compatible with append functionality, and the request will return an + /// error if append=true when these settings are in the update_mask. The request will also return an + /// error if append=true when "scoped_access_settings" is not set in the update_mask. /// - [Google.Apis.Util.RequestParameterAttribute("appendScopedAccessSettings", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable AppendScopedAccessSettings { get; set; } + [Google.Apis.Util.RequestParameterAttribute("append", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Append { get; set; } /// /// Required. Only the fields specified in this mask are updated. Because name and group_key cannot be @@ -2912,9 +2914,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"^organizations/[^/]+/gcpUserAccessBindings/[^/]+$", }); - RequestParameters.Add("appendScopedAccessSettings", new Google.Apis.Discovery.Parameter + RequestParameters.Add("append", new Google.Apis.Discovery.Parameter { - Name = "appendScopedAccessSettings", + Name = "append", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.AccessContextManager.v1/Google.Apis.AccessContextManager.v1.csproj b/Src/Generated/Google.Apis.AccessContextManager.v1/Google.Apis.AccessContextManager.v1.csproj index 6a952a11bb1..25bf81722bd 100644 --- a/Src/Generated/Google.Apis.AccessContextManager.v1/Google.Apis.AccessContextManager.v1.csproj +++ b/Src/Generated/Google.Apis.AccessContextManager.v1/Google.Apis.AccessContextManager.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.AccessContextManager.v1 Client Library - 1.68.0.3553 + 1.68.0.3574 Google LLC Copyright 2024 Google LLC Google From 211c401cd711e974329d68dc65640427adf17d3f Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:10:54 -0700 Subject: [PATCH 02/61] feat: Generate Google.Apis.AndroidPublisher.v3 version 1.68.0.3576 --- DiscoveryJson/androidpublisher.v3.json | 24 ++++++++++++++++- .../Google.Apis.AndroidPublisher.v3.cs | 27 +++++++++++++++++++ .../Google.Apis.AndroidPublisher.v3.csproj | 2 +- 3 files changed, 51 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/androidpublisher.v3.json b/DiscoveryJson/androidpublisher.v3.json index d788c864ac6..63d0fbf62f8 100644 --- a/DiscoveryJson/androidpublisher.v3.json +++ b/DiscoveryJson/androidpublisher.v3.json @@ -4732,7 +4732,7 @@ } } }, - "revision": "20241003", + "revision": "20241016", "rootUrl": "https://androidpublisher.googleapis.com/", "schemas": { "Abi": { @@ -6086,6 +6086,13 @@ "$ref": "SystemFeature" }, "type": "array" + }, + "systemOnChips": { + "description": "Optional. The SoCs included by this selector. Only works for Android S+ devices.", + "items": { + "$ref": "SystemOnChip" + }, + "type": "array" } }, "type": "object" @@ -9131,6 +9138,21 @@ "properties": {}, "type": "object" }, + "SystemOnChip": { + "description": "Representation of a System-on-Chip (SoC) of an Android device. Can be used to target S+ devices.", + "id": "SystemOnChip", + "properties": { + "manufacturer": { + "description": "Required. The designer of the SoC, eg. \"Google\" Value of build property \"ro.soc.manufacturer\" https://developer.android.com/reference/android/os/Build#SOC_MANUFACTURER Required.", + "type": "string" + }, + "model": { + "description": "Required. The model of the SoC, eg. \"Tensor\" Value of build property \"ro.soc.model\" https://developer.android.com/reference/android/os/Build#SOC_MODEL Required.", + "type": "string" + } + }, + "type": "object" + }, "Targeting": { "description": "Targeting details for a recovery action such as regions, android sdk levels, app versions etc.", "id": "Targeting", diff --git a/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.cs b/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.cs index 32317337664..158b7d2b371 100644 --- a/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.cs +++ b/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.cs @@ -13097,6 +13097,10 @@ public class DeviceSelector : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("requiredSystemFeatures")] public virtual System.Collections.Generic.IList RequiredSystemFeatures { get; set; } + /// Optional. The SoCs included by this selector. Only works for Android S+ devices. + [Newtonsoft.Json.JsonPropertyAttribute("systemOnChips")] + public virtual System.Collections.Generic.IList SystemOnChips { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } @@ -16485,6 +16489,29 @@ public class SystemInitiatedCancellation : Google.Apis.Requests.IDirectResponseS public virtual string ETag { get; set; } } + /// + /// Representation of a System-on-Chip (SoC) of an Android device. Can be used to target S+ devices. + /// + public class SystemOnChip : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Required. The designer of the SoC, eg. "Google" Value of build property "ro.soc.manufacturer" + /// https://developer.android.com/reference/android/os/Build#SOC_MANUFACTURER Required. + /// + [Newtonsoft.Json.JsonPropertyAttribute("manufacturer")] + public virtual string Manufacturer { get; set; } + + /// + /// Required. The model of the SoC, eg. "Tensor" Value of build property "ro.soc.model" + /// https://developer.android.com/reference/android/os/Build#SOC_MODEL Required. + /// + [Newtonsoft.Json.JsonPropertyAttribute("model")] + public virtual string Model { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// /// Targeting details for a recovery action such as regions, android sdk levels, app versions etc. /// diff --git a/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.csproj b/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.csproj index 230fcf12b17..4d7471dfc34 100644 --- a/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.csproj +++ b/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.csproj @@ -3,7 +3,7 @@ Google.Apis.AndroidPublisher.v3 Client Library - 1.68.0.3563 + 1.68.0.3576 Google LLC Copyright 2024 Google LLC Google From 765d65687ccc277be260b0e991442ac9f566321a Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:10:57 -0700 Subject: [PATCH 03/61] feat: Generate Google.Apis.ApiKeysService.v2 version 1.68.0.3576 --- DiscoveryJson/apikeys.v2.json | 6 +++++- .../Google.Apis.ApiKeysService.v2.cs | 7 +++++++ .../Google.Apis.ApiKeysService.v2.csproj | 2 +- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/apikeys.v2.json b/DiscoveryJson/apikeys.v2.json index 5de86b47d30..d57bb7a96ab 100644 --- a/DiscoveryJson/apikeys.v2.json +++ b/DiscoveryJson/apikeys.v2.json @@ -396,7 +396,7 @@ } } }, - "revision": "20240811", + "revision": "20241016", "rootUrl": "https://apikeys.googleapis.com/", "schemas": { "Operation": { @@ -593,6 +593,10 @@ "$ref": "V2Restrictions", "description": "Key restrictions." }, + "serviceAccountEmail": { + "description": "Optional. The email address of [the service account](https://cloud.google.com/iam/docs/service-accounts) the key is bound to.", + "type": "string" + }, "uid": { "description": "Output only. Unique id in UUID4 format.", "readOnly": true, diff --git a/Src/Generated/Google.Apis.ApiKeysService.v2/Google.Apis.ApiKeysService.v2.cs b/Src/Generated/Google.Apis.ApiKeysService.v2/Google.Apis.ApiKeysService.v2.cs index e55bf081a8f..bbe66bb571b 100644 --- a/Src/Generated/Google.Apis.ApiKeysService.v2/Google.Apis.ApiKeysService.v2.cs +++ b/Src/Generated/Google.Apis.ApiKeysService.v2/Google.Apis.ApiKeysService.v2.cs @@ -1233,6 +1233,13 @@ public virtual System.DateTimeOffset? DeleteTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("restrictions")] public virtual V2Restrictions Restrictions { get; set; } + /// + /// Optional. The email address of [the service account](https://cloud.google.com/iam/docs/service-accounts) the + /// key is bound to. + /// + [Newtonsoft.Json.JsonPropertyAttribute("serviceAccountEmail")] + public virtual string ServiceAccountEmail { get; set; } + /// Output only. Unique id in UUID4 format. [Newtonsoft.Json.JsonPropertyAttribute("uid")] public virtual string Uid { get; set; } diff --git a/Src/Generated/Google.Apis.ApiKeysService.v2/Google.Apis.ApiKeysService.v2.csproj b/Src/Generated/Google.Apis.ApiKeysService.v2/Google.Apis.ApiKeysService.v2.csproj index 0106823a19d..3fbad70ed3f 100644 --- a/Src/Generated/Google.Apis.ApiKeysService.v2/Google.Apis.ApiKeysService.v2.csproj +++ b/Src/Generated/Google.Apis.ApiKeysService.v2/Google.Apis.ApiKeysService.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.ApiKeysService.v2 Client Library - 1.68.0.3510 + 1.68.0.3576 Google LLC Copyright 2024 Google LLC Google From b2d466d8032c98ff09917b09ff804ec1cc7f2056 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:00 -0700 Subject: [PATCH 04/61] feat: Generate Google.Apis.ArtifactRegistry.v1 version 1.68.0.3571 --- DiscoveryJson/artifactregistry.v1.json | 67 +++++++++++++-- .../Google.Apis.ArtifactRegistry.v1.cs | 86 +++++++++++++++++-- .../Google.Apis.ArtifactRegistry.v1.csproj | 2 +- 3 files changed, 139 insertions(+), 16 deletions(-) diff --git a/DiscoveryJson/artifactregistry.v1.json b/DiscoveryJson/artifactregistry.v1.json index c5cc2456ed4..ee32cd9b45f 100644 --- a/DiscoveryJson/artifactregistry.v1.json +++ b/DiscoveryJson/artifactregistry.v1.json @@ -2334,7 +2334,7 @@ ], "parameters": { "name": { - "description": "The name of the rule, for example: \"projects/p1/locations/us-central1/repositories/repo1/rules/rule1\".", + "description": "The name of the rule, for example: `projects/p1/locations/us-central1/repositories/repo1/rules/rule1`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/repositories/[^/]+/rules/[^/]+$", "required": true, @@ -2439,7 +2439,7 @@ } } }, - "revision": "20241010", + "revision": "20241011", "rootUrl": "https://artifactregistry.googleapis.com/", "schemas": { "AptArtifact": { @@ -3101,11 +3101,11 @@ "type": "object" }, "GoogleDevtoolsArtifactregistryV1Rule": { - "description": "A Rule applies to repository or package level. It defines the deny or allow action of the operation when the conditions in the rule are met.", + "description": "A rule defines the deny or allow action of the operation it applies to and the conditions required for the rule to apply. You can set one rule for an entire repository and one rule for each package within.", "id": "GoogleDevtoolsArtifactregistryV1Rule", "properties": { "action": { - "description": "The action this rule makes.", + "description": "The action this rule takes.", "enum": [ "ACTION_UNSPECIFIED", "ALLOW", @@ -3120,10 +3120,10 @@ }, "condition": { "$ref": "Expr", - "description": "Optional. The condition of the rule in CEL expression. If not provided, the rule matches all the objects." + "description": "Optional. A CEL expression for conditions that must be met in order for the rule to apply. If not provided, the rule matches all objects." }, "name": { - "description": "The name of the rule, for example: \"projects/p1/locations/us-central1/repositories/repo1/rules/rule1\".", + "description": "The name of the rule, for example: `projects/p1/locations/us-central1/repositories/repo1/rules/rule1`.", "type": "string" }, "operation": { @@ -3138,7 +3138,7 @@ "type": "string" }, "packageId": { - "description": "The package ID the rule applies to. If empty, this rule applies to all the packages inside the repository.", + "description": "The package ID the rule applies to. If empty, this rule applies to all packages inside the repository.", "type": "string" } }, @@ -4174,6 +4174,10 @@ "virtualRepositoryConfig": { "$ref": "VirtualRepositoryConfig", "description": "Configuration specific for a Virtual Repository." + }, + "vulnerabilityScanningConfig": { + "$ref": "VulnerabilityScanningConfig", + "description": "Optional. Config and state for vulnerability scanning of resources within this Repository." } }, "type": "object" @@ -4619,6 +4623,55 @@ }, "type": "object" }, + "VulnerabilityScanningConfig": { + "description": "Config on whether to perform vulnerability scanning for resources in this repository, as well as output fields describing current state.", + "id": "VulnerabilityScanningConfig", + "properties": { + "enablementConfig": { + "description": "Optional. Config for whether this repository has vulnerability scanning disabled.", + "enum": [ + "ENABLEMENT_CONFIG_UNSPECIFIED", + "INHERITED", + "DISABLED" + ], + "enumDescriptions": [ + "Not set. This will be treated as INHERITED.", + "Scanning is Enabled, but dependent on API enablement.", + "No automatic vulnerability scanning will be performed for this repository." + ], + "type": "string" + }, + "enablementState": { + "description": "Output only. State of feature enablement, combining repository enablement config and API enablement state.", + "enum": [ + "ENABLEMENT_STATE_UNSPECIFIED", + "SCANNING_UNSUPPORTED", + "SCANNING_DISABLED", + "SCANNING_ACTIVE" + ], + "enumDescriptions": [ + "Enablement state is unclear.", + "Repository does not support vulnerability scanning.", + "Vulnerability scanning is disabled for this repository.", + "Vulnerability scanning is active for this repository." + ], + "readOnly": true, + "type": "string" + }, + "enablementStateReason": { + "description": "Output only. Reason for the repository state.", + "readOnly": true, + "type": "string" + }, + "lastEnableTime": { + "description": "Output only. The last time this repository config was enabled.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "YumArtifact": { "description": "A detailed representation of a Yum artifact.", "id": "YumArtifact", diff --git a/Src/Generated/Google.Apis.ArtifactRegistry.v1/Google.Apis.ArtifactRegistry.v1.cs b/Src/Generated/Google.Apis.ArtifactRegistry.v1/Google.Apis.ArtifactRegistry.v1.cs index 6f7918c63e8..dae34de3603 100644 --- a/Src/Generated/Google.Apis.ArtifactRegistry.v1/Google.Apis.ArtifactRegistry.v1.cs +++ b/Src/Generated/Google.Apis.ArtifactRegistry.v1/Google.Apis.ArtifactRegistry.v1.cs @@ -4573,7 +4573,7 @@ protected override void InitParameters() /// The body of the request. /// /// The name of the rule, for example: - /// "projects/p1/locations/us-central1/repositories/repo1/rules/rule1". + /// `projects/p1/locations/us-central1/repositories/repo1/rules/rule1`. /// public virtual PatchRequest Patch(Google.Apis.ArtifactRegistry.v1.Data.GoogleDevtoolsArtifactregistryV1Rule body, string name) { @@ -4593,7 +4593,7 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Art /// /// The name of the rule, for example: - /// "projects/p1/locations/us-central1/repositories/repo1/rules/rule1". + /// `projects/p1/locations/us-central1/repositories/repo1/rules/rule1`. /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } @@ -6945,23 +6945,24 @@ public class GoogleDevtoolsArtifactregistryV1RemoteRepositoryConfigYumRepository } /// - /// A Rule applies to repository or package level. It defines the deny or allow action of the operation when the - /// conditions in the rule are met. + /// A rule defines the deny or allow action of the operation it applies to and the conditions required for the rule + /// to apply. You can set one rule for an entire repository and one rule for each package within. /// public class GoogleDevtoolsArtifactregistryV1Rule : Google.Apis.Requests.IDirectResponseSchema { - /// The action this rule makes. + /// The action this rule takes. [Newtonsoft.Json.JsonPropertyAttribute("action")] public virtual string Action { get; set; } /// - /// Optional. The condition of the rule in CEL expression. If not provided, the rule matches all the objects. + /// Optional. A CEL expression for conditions that must be met in order for the rule to apply. If not provided, + /// the rule matches all objects. /// [Newtonsoft.Json.JsonPropertyAttribute("condition")] public virtual Expr Condition { get; set; } /// - /// The name of the rule, for example: "projects/p1/locations/us-central1/repositories/repo1/rules/rule1". + /// The name of the rule, for example: `projects/p1/locations/us-central1/repositories/repo1/rules/rule1`. /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } @@ -6970,7 +6971,7 @@ public class GoogleDevtoolsArtifactregistryV1Rule : Google.Apis.Requests.IDirect public virtual string Operation { get; set; } /// - /// The package ID the rule applies to. If empty, this rule applies to all the packages inside the repository. + /// The package ID the rule applies to. If empty, this rule applies to all packages inside the repository. /// [Newtonsoft.Json.JsonPropertyAttribute("packageId")] public virtual string PackageId { get; set; } @@ -8279,6 +8280,12 @@ public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("virtualRepositoryConfig")] public virtual VirtualRepositoryConfig VirtualRepositoryConfig { get; set; } + /// + /// Optional. Config and state for vulnerability scanning of resources within this Repository. + /// + [Newtonsoft.Json.JsonPropertyAttribute("vulnerabilityScanningConfig")] + public virtual VulnerabilityScanningConfig VulnerabilityScanningConfig { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } @@ -8829,6 +8836,69 @@ public class VirtualRepositoryConfig : Google.Apis.Requests.IDirectResponseSchem public virtual string ETag { get; set; } } + /// + /// Config on whether to perform vulnerability scanning for resources in this repository, as well as output fields + /// describing current state. + /// + public class VulnerabilityScanningConfig : Google.Apis.Requests.IDirectResponseSchema + { + /// Optional. Config for whether this repository has vulnerability scanning disabled. + [Newtonsoft.Json.JsonPropertyAttribute("enablementConfig")] + public virtual string EnablementConfig { get; set; } + + /// + /// Output only. State of feature enablement, combining repository enablement config and API enablement state. + /// + [Newtonsoft.Json.JsonPropertyAttribute("enablementState")] + public virtual string EnablementState { get; set; } + + /// Output only. Reason for the repository state. + [Newtonsoft.Json.JsonPropertyAttribute("enablementStateReason")] + public virtual string EnablementStateReason { get; set; } + + private string _lastEnableTimeRaw; + + private object _lastEnableTime; + + /// Output only. The last time this repository config was enabled. + [Newtonsoft.Json.JsonPropertyAttribute("lastEnableTime")] + public virtual string LastEnableTimeRaw + { + get => _lastEnableTimeRaw; + set + { + _lastEnableTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _lastEnableTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use LastEnableTimeDateTimeOffset instead.")] + public virtual object LastEnableTime + { + get => _lastEnableTime; + set + { + _lastEnableTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _lastEnableTime = value; + } + } + + /// + /// representation of . + /// + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? LastEnableTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(LastEnableTimeRaw); + set => LastEnableTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// A detailed representation of a Yum artifact. public class YumArtifact : Google.Apis.Requests.IDirectResponseSchema { diff --git a/Src/Generated/Google.Apis.ArtifactRegistry.v1/Google.Apis.ArtifactRegistry.v1.csproj b/Src/Generated/Google.Apis.ArtifactRegistry.v1/Google.Apis.ArtifactRegistry.v1.csproj index cfbcc059468..245ba70eda5 100644 --- a/Src/Generated/Google.Apis.ArtifactRegistry.v1/Google.Apis.ArtifactRegistry.v1.csproj +++ b/Src/Generated/Google.Apis.ArtifactRegistry.v1/Google.Apis.ArtifactRegistry.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.ArtifactRegistry.v1 Client Library - 1.68.0.3570 + 1.68.0.3571 Google LLC Copyright 2024 Google LLC Google From fb56c21923ead090ab8ad2f6b2d2fba97a433545 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:03 -0700 Subject: [PATCH 05/61] feat: Generate Google.Apis.Backupdr.v1 version 1.68.0.3569 --- DiscoveryJson/backupdr.v1.json | 13 ++++++++++--- .../Google.Apis.Backupdr.v1.cs | 15 +++++++++++++++ .../Google.Apis.Backupdr.v1.csproj | 2 +- 3 files changed, 26 insertions(+), 4 deletions(-) diff --git a/DiscoveryJson/backupdr.v1.json b/DiscoveryJson/backupdr.v1.json index 84c4c4ff220..8c2ea8640f1 100644 --- a/DiscoveryJson/backupdr.v1.json +++ b/DiscoveryJson/backupdr.v1.json @@ -555,6 +555,11 @@ "location": "query", "type": "boolean" }, + "ignoreBackupPlanReferences": { + "description": "Optional. If set to true, backupvault deletion will proceed even if there are backup plans referencing the backupvault. The default is 'false'.", + "location": "query", + "type": "boolean" + }, "name": { "description": "Required. Name of the resource.", "location": "path", @@ -1658,7 +1663,7 @@ } } }, - "revision": "20241002", + "revision": "20241009", "rootUrl": "https://backupdr.googleapis.com/", "schemas": { "AbandonBackupRequest": { @@ -2462,14 +2467,16 @@ "CREATING", "ACTIVE", "DELETING", - "INACTIVE" + "INACTIVE", + "UPDATING" ], "enumDescriptions": [ "State not set.", "The resource is being created.", "The resource has been created and is fully usable.", "The resource is being deleted.", - "The resource has been created but is not usable." + "The resource has been created but is not usable.", + "The resource is being updated." ], "readOnly": true, "type": "string" diff --git a/Src/Generated/Google.Apis.Backupdr.v1/Google.Apis.Backupdr.v1.cs b/Src/Generated/Google.Apis.Backupdr.v1/Google.Apis.Backupdr.v1.cs index dfb01617bec..96473a91a16 100644 --- a/Src/Generated/Google.Apis.Backupdr.v1/Google.Apis.Backupdr.v1.cs +++ b/Src/Generated/Google.Apis.Backupdr.v1/Google.Apis.Backupdr.v1.cs @@ -2329,6 +2329,13 @@ public DeleteRequest(Google.Apis.Services.IClientService service, string name) : [Google.Apis.Util.RequestParameterAttribute("force", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable Force { get; set; } + /// + /// Optional. If set to true, backupvault deletion will proceed even if there are backup plans + /// referencing the backupvault. The default is 'false'. + /// + [Google.Apis.Util.RequestParameterAttribute("ignoreBackupPlanReferences", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable IgnoreBackupPlanReferences { get; set; } + /// /// Optional. An optional request ID to identify requests. Specify a unique request ID so that if /// you must retry your request, the server will know to ignore the request if it has already been @@ -2393,6 +2400,14 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add("ignoreBackupPlanReferences", new Google.Apis.Discovery.Parameter + { + Name = "ignoreBackupPlanReferences", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); RequestParameters.Add("requestId", new Google.Apis.Discovery.Parameter { Name = "requestId", diff --git a/Src/Generated/Google.Apis.Backupdr.v1/Google.Apis.Backupdr.v1.csproj b/Src/Generated/Google.Apis.Backupdr.v1/Google.Apis.Backupdr.v1.csproj index ecf55c49306..f25a6b8af7c 100644 --- a/Src/Generated/Google.Apis.Backupdr.v1/Google.Apis.Backupdr.v1.csproj +++ b/Src/Generated/Google.Apis.Backupdr.v1/Google.Apis.Backupdr.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Backupdr.v1 Client Library - 1.68.0.3562 + 1.68.0.3569 Google LLC Copyright 2024 Google LLC Google From 4018516d69a943b35054d2d472fde0043dcf24f8 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:06 -0700 Subject: [PATCH 06/61] feat: Generate Google.Apis.BeyondCorp.v1 version 1.68.0.3571 --- DiscoveryJson/beyondcorp.v1.json | 194 ++++++- .../Google.Apis.BeyondCorp.v1.cs | 517 +++++++++++++++++- .../Google.Apis.BeyondCorp.v1.csproj | 2 +- 3 files changed, 708 insertions(+), 5 deletions(-) diff --git a/DiscoveryJson/beyondcorp.v1.json b/DiscoveryJson/beyondcorp.v1.json index db5ca5d8bbd..f4b59d7d093 100644 --- a/DiscoveryJson/beyondcorp.v1.json +++ b/DiscoveryJson/beyondcorp.v1.json @@ -1795,6 +1795,34 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + "flatPath": "v1/projects/{projectsId}/locations/global/securityGateways/{securityGatewaysId}/applications/{applicationsId}:testIamPermissions", + "httpMethod": "POST", + "id": "beyondcorp.projects.locations.global.securityGateways.applications.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/global/securityGateways/[^/]+/applications/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "GoogleIamV1TestIamPermissionsRequest" + }, + "response": { + "$ref": "GoogleIamV1TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } } @@ -2025,6 +2053,37 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityGateways/{securityGatewaysId}:getIamPolicy", + "httpMethod": "GET", + "id": "beyondcorp.projects.locations.securityGateways.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "options.requestedPolicyVersion": { + "description": "Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityGateways/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "list": { "description": "Lists SecurityGateways in a given project and location.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityGateways", @@ -2137,6 +2196,34 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityGateways/{securityGatewaysId}:testIamPermissions", + "httpMethod": "POST", + "id": "beyondcorp.projects.locations.securityGateways.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityGateways/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "GoogleIamV1TestIamPermissionsRequest" + }, + "response": { + "$ref": "GoogleIamV1TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { @@ -2202,6 +2289,37 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityGateways/{securityGatewaysId}/applications/{applicationsId}:getIamPolicy", + "httpMethod": "GET", + "id": "beyondcorp.projects.locations.securityGateways.applications.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "options.requestedPolicyVersion": { + "description": "Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityGateways/[^/]+/applications/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:getIamPolicy", + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "list": { "description": "Lists Applications in a given project and location.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityGateways/{securityGatewaysId}/applications", @@ -2247,6 +2365,78 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/securityGateways/{securityGatewaysId}/applications/{applicationsId}:setIamPolicy", + "httpMethod": "POST", + "id": "beyondcorp.projects.locations.securityGateways.applications.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityGateways/[^/]+/applications/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "GoogleIamV1SetIamPolicyRequest" + }, + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + } + }, + "v": { + "resources": { + "projects": { + "resources": { + "locations": { + "resources": { + "securityGateways": { + "methods": { + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.", + "flatPath": "v/projects/{projectsId}/locations/{locationsId}/securityGateways/{securityGatewaysId}:setIamPolicy", + "httpMethod": "POST", + "id": "beyondcorp.v.projects.locations.securityGateways.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/securityGateways/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v/{+resource}:setIamPolicy", + "request": { + "$ref": "GoogleIamV1SetIamPolicyRequest" + }, + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } } @@ -2257,7 +2447,7 @@ } } }, - "revision": "20241004", + "revision": "20241011", "rootUrl": "https://beyondcorp.googleapis.com/", "schemas": { "AllocatedConnection": { @@ -3628,7 +3818,7 @@ }, "type": "array" }, - "targetVpcNetwork": { + "targetNetwork": { "description": "Required. The name of the Target VPC network name in the format: `projects/{project}/global/networks/{network}", "type": "string" } diff --git a/Src/Generated/Google.Apis.BeyondCorp.v1/Google.Apis.BeyondCorp.v1.cs b/Src/Generated/Google.Apis.BeyondCorp.v1/Google.Apis.BeyondCorp.v1.cs index 038abf57eac..fbea672d853 100644 --- a/Src/Generated/Google.Apis.BeyondCorp.v1/Google.Apis.BeyondCorp.v1.cs +++ b/Src/Generated/Google.Apis.BeyondCorp.v1/Google.Apis.BeyondCorp.v1.cs @@ -36,6 +36,7 @@ public BeyondCorpService(Google.Apis.Services.BaseClientService.Initializer init { Organizations = new OrganizationsResource(this); Projects = new ProjectsResource(this); + V = new VResource(this); BaseUri = GetEffectiveUri(BaseUriOverride, "https://beyondcorp.googleapis.com/"); BatchUri = GetEffectiveUri(null, "https://beyondcorp.googleapis.com/batch"); } @@ -83,6 +84,9 @@ public static class ScopeConstants /// Gets the Projects resource. public virtual ProjectsResource Projects { get; } + + /// Gets the V resource. + public virtual VResource V { get; } } /// A base abstract class for BeyondCorp requests. @@ -4358,6 +4362,77 @@ protected override void InitParameters() }); } } + + /// + /// Returns permissions that a caller has on the specified resource. If the resource does not + /// exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This + /// operation is designed to be used for building permission-aware UIs and command-line tools, + /// not for authorization checking. This operation may "fail open" without warning. + /// + /// The body of the request. + /// + /// REQUIRED: The resource for which the policy detail is being requested. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for + /// this field. + /// + public virtual TestIamPermissionsRequest TestIamPermissions(Google.Apis.BeyondCorp.v1.Data.GoogleIamV1TestIamPermissionsRequest body, string resource) + { + return new TestIamPermissionsRequest(this.service, body, resource); + } + + /// + /// Returns permissions that a caller has on the specified resource. If the resource does not + /// exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This + /// operation is designed to be used for building permission-aware UIs and command-line tools, + /// not for authorization checking. This operation may "fail open" without warning. + /// + public class TestIamPermissionsRequest : BeyondCorpBaseServiceRequest + { + /// Constructs a new TestIamPermissions request. + public TestIamPermissionsRequest(Google.Apis.Services.IClientService service, Google.Apis.BeyondCorp.v1.Data.GoogleIamV1TestIamPermissionsRequest body, string resource) : base(service) + { + Resource = resource; + Body = body; + InitParameters(); + } + + /// + /// REQUIRED: The resource for which the policy detail is being requested. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value + /// for this field. + /// + [Google.Apis.Util.RequestParameterAttribute("resource", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Resource { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.BeyondCorp.v1.Data.GoogleIamV1TestIamPermissionsRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "testIamPermissions"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+resource}:testIamPermissions"; + + /// Initializes TestIamPermissions parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter + { + Name = "resource", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/global/securityGateways/[^/]+/applications/[^/]+$", + }); + } + } } } } @@ -4806,6 +4881,87 @@ protected override void InitParameters() } } + /// + /// Gets the access control policy for a resource. Returns an empty policy if the resource exists + /// and does not have a policy set. + /// + /// + /// REQUIRED: The resource for which the policy is being requested. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this + /// field. + /// + public virtual GetIamPolicyRequest GetIamPolicy(string resource) + { + return new GetIamPolicyRequest(this.service, resource); + } + + /// + /// Gets the access control policy for a resource. Returns an empty policy if the resource exists + /// and does not have a policy set. + /// + public class GetIamPolicyRequest : BeyondCorpBaseServiceRequest + { + /// Constructs a new GetIamPolicy request. + public GetIamPolicyRequest(Google.Apis.Services.IClientService service, string resource) : base(service) + { + Resource = resource; + InitParameters(); + } + + /// + /// REQUIRED: The resource for which the policy is being requested. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for + /// this field. + /// + [Google.Apis.Util.RequestParameterAttribute("resource", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Resource { get; private set; } + + /// + /// Optional. The maximum policy version that will be used to format the policy. Valid values + /// are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for + /// policies with any conditional role bindings must specify version 3. Policies with no + /// conditional role bindings may specify any valid value or leave the field unset. The policy + /// in the response might use the policy version that you specified, or it might use a lower + /// policy version. For example, if you specify version 3, but the policy has no conditional + /// role bindings, the response uses version 1. To learn which resources support conditions in + /// their IAM policies, see the [IAM + /// documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + /// + [Google.Apis.Util.RequestParameterAttribute("options.requestedPolicyVersion", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable OptionsRequestedPolicyVersion { get; set; } + + /// Gets the method name. + public override string MethodName => "getIamPolicy"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+resource}:getIamPolicy"; + + /// Initializes GetIamPolicy parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter + { + Name = "resource", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/securityGateways/[^/]+/applications/[^/]+$", + }); + RequestParameters.Add("options.requestedPolicyVersion", new Google.Apis.Discovery.Parameter + { + Name = "options.requestedPolicyVersion", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + /// Lists Applications in a given project and location. /// /// Required. The parent location to which the resources belong. @@ -4921,6 +5077,73 @@ protected override void InitParameters() }); } } + + /// + /// Sets the access control policy on the specified resource. Replaces any existing policy. Can + /// return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + /// + /// The body of the request. + /// + /// REQUIRED: The resource for which the policy is being specified. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this + /// field. + /// + public virtual SetIamPolicyRequest SetIamPolicy(Google.Apis.BeyondCorp.v1.Data.GoogleIamV1SetIamPolicyRequest body, string resource) + { + return new SetIamPolicyRequest(this.service, body, resource); + } + + /// + /// Sets the access control policy on the specified resource. Replaces any existing policy. Can + /// return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + /// + public class SetIamPolicyRequest : BeyondCorpBaseServiceRequest + { + /// Constructs a new SetIamPolicy request. + public SetIamPolicyRequest(Google.Apis.Services.IClientService service, Google.Apis.BeyondCorp.v1.Data.GoogleIamV1SetIamPolicyRequest body, string resource) : base(service) + { + Resource = resource; + Body = body; + InitParameters(); + } + + /// + /// REQUIRED: The resource for which the policy is being specified. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for + /// this field. + /// + [Google.Apis.Util.RequestParameterAttribute("resource", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Resource { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.BeyondCorp.v1.Data.GoogleIamV1SetIamPolicyRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "setIamPolicy"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+resource}:setIamPolicy"; + + /// Initializes SetIamPolicy parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter + { + Name = "resource", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/securityGateways/[^/]+/applications/[^/]+$", + }); + } + } } /// Creates a new SecurityGateway in a given project and location. @@ -5151,6 +5374,86 @@ protected override void InitParameters() } } + /// + /// Gets the access control policy for a resource. Returns an empty policy if the resource exists and + /// does not have a policy set. + /// + /// + /// REQUIRED: The resource for which the policy is being requested. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this + /// field. + /// + public virtual GetIamPolicyRequest GetIamPolicy(string resource) + { + return new GetIamPolicyRequest(this.service, resource); + } + + /// + /// Gets the access control policy for a resource. Returns an empty policy if the resource exists and + /// does not have a policy set. + /// + public class GetIamPolicyRequest : BeyondCorpBaseServiceRequest + { + /// Constructs a new GetIamPolicy request. + public GetIamPolicyRequest(Google.Apis.Services.IClientService service, string resource) : base(service) + { + Resource = resource; + InitParameters(); + } + + /// + /// REQUIRED: The resource for which the policy is being requested. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this + /// field. + /// + [Google.Apis.Util.RequestParameterAttribute("resource", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Resource { get; private set; } + + /// + /// Optional. The maximum policy version that will be used to format the policy. Valid values are 0, + /// 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any + /// conditional role bindings must specify version 3. Policies with no conditional role bindings may + /// specify any valid value or leave the field unset. The policy in the response might use the + /// policy version that you specified, or it might use a lower policy version. For example, if you + /// specify version 3, but the policy has no conditional role bindings, the response uses version 1. + /// To learn which resources support conditions in their IAM policies, see the [IAM + /// documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + /// + [Google.Apis.Util.RequestParameterAttribute("options.requestedPolicyVersion", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable OptionsRequestedPolicyVersion { get; set; } + + /// Gets the method name. + public override string MethodName => "getIamPolicy"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+resource}:getIamPolicy"; + + /// Initializes GetIamPolicy parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter + { + Name = "resource", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/securityGateways/[^/]+$", + }); + RequestParameters.Add("options.requestedPolicyVersion", new Google.Apis.Discovery.Parameter + { + Name = "options.requestedPolicyVersion", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + /// Lists SecurityGateways in a given project and location. /// /// Required. The parent location to which the resources belong. @@ -5415,6 +5718,77 @@ protected override void InitParameters() }); } } + + /// + /// Returns permissions that a caller has on the specified resource. If the resource does not exist, + /// this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is + /// designed to be used for building permission-aware UIs and command-line tools, not for authorization + /// checking. This operation may "fail open" without warning. + /// + /// The body of the request. + /// + /// REQUIRED: The resource for which the policy detail is being requested. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this + /// field. + /// + public virtual TestIamPermissionsRequest TestIamPermissions(Google.Apis.BeyondCorp.v1.Data.GoogleIamV1TestIamPermissionsRequest body, string resource) + { + return new TestIamPermissionsRequest(this.service, body, resource); + } + + /// + /// Returns permissions that a caller has on the specified resource. If the resource does not exist, + /// this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is + /// designed to be used for building permission-aware UIs and command-line tools, not for authorization + /// checking. This operation may "fail open" without warning. + /// + public class TestIamPermissionsRequest : BeyondCorpBaseServiceRequest + { + /// Constructs a new TestIamPermissions request. + public TestIamPermissionsRequest(Google.Apis.Services.IClientService service, Google.Apis.BeyondCorp.v1.Data.GoogleIamV1TestIamPermissionsRequest body, string resource) : base(service) + { + Resource = resource; + Body = body; + InitParameters(); + } + + /// + /// REQUIRED: The resource for which the policy detail is being requested. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this + /// field. + /// + [Google.Apis.Util.RequestParameterAttribute("resource", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Resource { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.BeyondCorp.v1.Data.GoogleIamV1TestIamPermissionsRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "testIamPermissions"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+resource}:testIamPermissions"; + + /// Initializes TestIamPermissions parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter + { + Name = "resource", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/securityGateways/[^/]+$", + }); + } + } } /// Gets information about a location. @@ -5552,6 +5926,145 @@ protected override void InitParameters() } } } + + /// The "v" collection of methods. + public class VResource + { + private const string Resource = "v"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public VResource(Google.Apis.Services.IClientService service) + { + this.service = service; + Projects = new ProjectsResource(service); + } + + /// Gets the Projects resource. + public virtual ProjectsResource Projects { get; } + + /// The "projects" collection of methods. + public class ProjectsResource + { + private const string Resource = "projects"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public ProjectsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + Locations = new LocationsResource(service); + } + + /// Gets the Locations resource. + public virtual LocationsResource Locations { get; } + + /// The "locations" collection of methods. + public class LocationsResource + { + private const string Resource = "locations"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public LocationsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + SecurityGateways = new SecurityGatewaysResource(service); + } + + /// Gets the SecurityGateways resource. + public virtual SecurityGatewaysResource SecurityGateways { get; } + + /// The "securityGateways" collection of methods. + public class SecurityGatewaysResource + { + private const string Resource = "securityGateways"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public SecurityGatewaysResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// + /// Sets the access control policy on the specified resource. Replaces any existing policy. Can + /// return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + /// + /// The body of the request. + /// + /// REQUIRED: The resource for which the policy is being specified. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this + /// field. + /// + public virtual SetIamPolicyRequest SetIamPolicy(Google.Apis.BeyondCorp.v1.Data.GoogleIamV1SetIamPolicyRequest body, string resource) + { + return new SetIamPolicyRequest(this.service, body, resource); + } + + /// + /// Sets the access control policy on the specified resource. Replaces any existing policy. Can + /// return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + /// + public class SetIamPolicyRequest : BeyondCorpBaseServiceRequest + { + /// Constructs a new SetIamPolicy request. + public SetIamPolicyRequest(Google.Apis.Services.IClientService service, Google.Apis.BeyondCorp.v1.Data.GoogleIamV1SetIamPolicyRequest body, string resource) : base(service) + { + Resource = resource; + Body = body; + InitParameters(); + } + + /// + /// REQUIRED: The resource for which the policy is being specified. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for + /// this field. + /// + [Google.Apis.Util.RequestParameterAttribute("resource", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Resource { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.BeyondCorp.v1.Data.GoogleIamV1SetIamPolicyRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "setIamPolicy"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v/{+resource}:setIamPolicy"; + + /// Initializes SetIamPolicy parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter + { + Name = "resource", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/securityGateways/[^/]+$", + }); + } + } + } + } + } + } } namespace Google.Apis.BeyondCorp.v1.Data { @@ -7736,8 +8249,8 @@ public class GoogleCloudBeyondcorpSecuritygatewaysV1Peering : Google.Apis.Reques /// Required. The name of the Target VPC network name in the format: /// `projects/{project}/global/networks/{network} /// - [Newtonsoft.Json.JsonPropertyAttribute("targetVpcNetwork")] - public virtual string TargetVpcNetwork { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("targetNetwork")] + public virtual string TargetNetwork { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } diff --git a/Src/Generated/Google.Apis.BeyondCorp.v1/Google.Apis.BeyondCorp.v1.csproj b/Src/Generated/Google.Apis.BeyondCorp.v1/Google.Apis.BeyondCorp.v1.csproj index bb1f4764f12..d1a4e3c9c80 100644 --- a/Src/Generated/Google.Apis.BeyondCorp.v1/Google.Apis.BeyondCorp.v1.csproj +++ b/Src/Generated/Google.Apis.BeyondCorp.v1/Google.Apis.BeyondCorp.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.BeyondCorp.v1 Client Library - 1.68.0.3564 + 1.68.0.3571 Google LLC Copyright 2024 Google LLC Google From e920a0b6f3a12c2adc11d2df07eb075bcaafabe6 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:09 -0700 Subject: [PATCH 07/61] feat: Generate Google.Apis.BeyondCorp.v1alpha version 1.68.0.3571 --- DiscoveryJson/beyondcorp.v1alpha.json | 4 ++-- .../Google.Apis.BeyondCorp.v1alpha.cs | 4 ++-- .../Google.Apis.BeyondCorp.v1alpha.csproj | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/DiscoveryJson/beyondcorp.v1alpha.json b/DiscoveryJson/beyondcorp.v1alpha.json index 1cccbfd4702..8ed6a57c81d 100644 --- a/DiscoveryJson/beyondcorp.v1alpha.json +++ b/DiscoveryJson/beyondcorp.v1alpha.json @@ -4408,7 +4408,7 @@ } } }, - "revision": "20241004", + "revision": "20241011", "rootUrl": "https://beyondcorp.googleapis.com/", "schemas": { "AllocatedConnection": { @@ -6766,7 +6766,7 @@ }, "type": "array" }, - "targetVpcNetwork": { + "targetNetwork": { "description": "Required. The name of the Target VPC network name in the format: `projects/{project}/global/networks/{network}", "type": "string" } diff --git a/Src/Generated/Google.Apis.BeyondCorp.v1alpha/Google.Apis.BeyondCorp.v1alpha.cs b/Src/Generated/Google.Apis.BeyondCorp.v1alpha/Google.Apis.BeyondCorp.v1alpha.cs index d35df4e9400..628eee4975b 100644 --- a/Src/Generated/Google.Apis.BeyondCorp.v1alpha/Google.Apis.BeyondCorp.v1alpha.cs +++ b/Src/Generated/Google.Apis.BeyondCorp.v1alpha/Google.Apis.BeyondCorp.v1alpha.cs @@ -14656,8 +14656,8 @@ public class GoogleCloudBeyondcorpSecuritygatewaysV1alphaPeering : Google.Apis.R /// Required. The name of the Target VPC network name in the format: /// `projects/{project}/global/networks/{network} /// - [Newtonsoft.Json.JsonPropertyAttribute("targetVpcNetwork")] - public virtual string TargetVpcNetwork { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("targetNetwork")] + public virtual string TargetNetwork { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } diff --git a/Src/Generated/Google.Apis.BeyondCorp.v1alpha/Google.Apis.BeyondCorp.v1alpha.csproj b/Src/Generated/Google.Apis.BeyondCorp.v1alpha/Google.Apis.BeyondCorp.v1alpha.csproj index 2f568a37fc5..c1fd95123f3 100644 --- a/Src/Generated/Google.Apis.BeyondCorp.v1alpha/Google.Apis.BeyondCorp.v1alpha.csproj +++ b/Src/Generated/Google.Apis.BeyondCorp.v1alpha/Google.Apis.BeyondCorp.v1alpha.csproj @@ -3,7 +3,7 @@ Google.Apis.BeyondCorp.v1alpha Client Library - 1.68.0.3564 + 1.68.0.3571 Google LLC Copyright 2024 Google LLC Google From f27a85e23f4d0905bcce90aa06dcf3167f77ec4d Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:12 -0700 Subject: [PATCH 08/61] feat: Generate Google.Apis.BigtableAdmin.v2 version 1.68.0.3568 --- DiscoveryJson/bigtableadmin.v2.json | 30 +++++----- .../Google.Apis.BigtableAdmin.v2.cs | 57 ++++++++++--------- .../Google.Apis.BigtableAdmin.v2.csproj | 2 +- 3 files changed, 46 insertions(+), 43 deletions(-) diff --git a/DiscoveryJson/bigtableadmin.v2.json b/DiscoveryJson/bigtableadmin.v2.json index 1907f6ab8da..c58899eea73 100644 --- a/DiscoveryJson/bigtableadmin.v2.json +++ b/DiscoveryJson/bigtableadmin.v2.json @@ -2194,7 +2194,7 @@ } } }, - "revision": "20240918", + "revision": "20241008", "rootUrl": "https://bigtableadmin.googleapis.com/", "schemas": { "AppProfile": { @@ -2325,7 +2325,7 @@ "id": "AutomatedBackupPolicy", "properties": { "frequency": { - "description": "Required. How frequently automated backups should occur. The only supported value at this time is 24 hours.", + "description": "How frequently automated backups should occur. The only supported value at this time is 24 hours. An undefined frequency is treated as 24 hours.", "format": "google-duration", "type": "string" }, @@ -3174,7 +3174,7 @@ "type": "object" }, "GoogleBigtableAdminV2TypeAggregate": { - "description": "A value that combines incremental updates into a summarized value. Data is never directly written or read using type `Aggregate`. Writes will provide either the `input_type` or `state_type`, and reads will always return the `state_type` .", + "description": "A value that combines incremental updates into a summarized value. Data is never directly written or read using type `Aggregate`. Writes provide either the `input_type` or `state_type`, and reads always return the `state_type` .", "id": "GoogleBigtableAdminV2TypeAggregate", "properties": { "hllppUniqueCount": { @@ -3183,7 +3183,7 @@ }, "inputType": { "$ref": "Type", - "description": "Type of the inputs that are accumulated by this `Aggregate`, which must specify a full encoding. Use `AddInput` mutations to accumulate new inputs." + "description": "Type of the inputs that are accumulated by this `Aggregate`. Use `AddInput` mutations to accumulate new inputs." }, "max": { "$ref": "GoogleBigtableAdminV2TypeAggregateMax", @@ -3195,7 +3195,7 @@ }, "stateType": { "$ref": "Type", - "description": "Output only. Type that holds the internal accumulator state for the `Aggregate`. This is a function of the `input_type` and `aggregator` chosen, and will always specify a full encoding.", + "description": "Output only. Type that holds the internal accumulator state for the `Aggregate`. This is a function of the `input_type` and `aggregator` chosen.", "readOnly": true }, "sum": { @@ -3252,13 +3252,13 @@ "properties": { "encoding": { "$ref": "GoogleBigtableAdminV2TypeBytesEncoding", - "description": "The encoding to use when converting to/from lower level types." + "description": "The encoding to use when converting to or from lower level types." } }, "type": "object" }, "GoogleBigtableAdminV2TypeBytesEncoding": { - "description": "Rules used to convert to/from lower level types.", + "description": "Rules used to convert to or from lower level types.", "id": "GoogleBigtableAdminV2TypeBytesEncoding", "properties": { "raw": { @@ -3269,7 +3269,7 @@ "type": "object" }, "GoogleBigtableAdminV2TypeBytesEncodingRaw": { - "description": "Leaves the value \"as-is\" * Order-preserving? Yes * Self-delimiting? No * Compatibility? N/A", + "description": "Leaves the value as-is. Sorted mode: all values are supported. Distinct mode: all values are supported.", "id": "GoogleBigtableAdminV2TypeBytesEncodingRaw", "properties": {}, "type": "object" @@ -3298,13 +3298,13 @@ "properties": { "encoding": { "$ref": "GoogleBigtableAdminV2TypeInt64Encoding", - "description": "The encoding to use when converting to/from lower level types." + "description": "The encoding to use when converting to or from lower level types." } }, "type": "object" }, "GoogleBigtableAdminV2TypeInt64Encoding": { - "description": "Rules used to convert to/from lower level types.", + "description": "Rules used to convert to or from lower level types.", "id": "GoogleBigtableAdminV2TypeInt64Encoding", "properties": { "bigEndianBytes": { @@ -3315,7 +3315,7 @@ "type": "object" }, "GoogleBigtableAdminV2TypeInt64EncodingBigEndianBytes": { - "description": "Encodes the value as an 8-byte big endian twos complement `Bytes` value. * Order-preserving? No (positive values only) * Self-delimiting? Yes * Compatibility? - BigQuery Federation `BINARY` encoding - HBase `Bytes.toBytes` - Java `ByteBuffer.putLong()` with `ByteOrder.BIG_ENDIAN`", + "description": "Encodes the value as an 8-byte big-endian two's complement value. Sorted mode: non-negative values are supported. Distinct mode: all values are supported. Compatible with: - BigQuery `BINARY` encoding - HBase `Bytes.toBytes` - Java `ByteBuffer.putLong()` with `ByteOrder.BIG_ENDIAN`", "id": "GoogleBigtableAdminV2TypeInt64EncodingBigEndianBytes", "properties": { "bytesType": { @@ -3347,13 +3347,13 @@ "properties": { "encoding": { "$ref": "GoogleBigtableAdminV2TypeStringEncoding", - "description": "The encoding to use when converting to/from lower level types." + "description": "The encoding to use when converting to or from lower level types." } }, "type": "object" }, "GoogleBigtableAdminV2TypeStringEncoding": { - "description": "Rules used to convert to/from lower level types.", + "description": "Rules used to convert to or from lower level types.", "id": "GoogleBigtableAdminV2TypeStringEncoding", "properties": { "utf8Bytes": { @@ -3369,7 +3369,7 @@ "type": "object" }, "GoogleBigtableAdminV2TypeStringEncodingUtf8Bytes": { - "description": "UTF-8 encoding * Order-preserving? Yes (code point order) * Self-delimiting? No * Compatibility? - BigQuery Federation `TEXT` encoding - HBase `Bytes.toBytes` - Java `String#getBytes(StandardCharsets.UTF_8)`", + "description": "UTF-8 encoding. Sorted mode: - All values are supported. - Code point order is preserved. Distinct mode: all values are supported. Compatible with: - BigQuery `TEXT` encoding - HBase `Bytes.toBytes` - Java `String#getBytes(StandardCharsets.UTF_8)`", "id": "GoogleBigtableAdminV2TypeStringEncodingUtf8Bytes", "properties": {}, "type": "object" @@ -4302,7 +4302,7 @@ "type": "object" }, "Type": { - "description": "`Type` represents the type of data that is written to, read from, or stored in Bigtable. It is heavily based on the GoogleSQL standard to help maintain familiarity and consistency across products and features. For compatibility with Bigtable's existing untyped APIs, each `Type` includes an `Encoding` which describes how to convert to/from the underlying data. Each encoding also defines the following properties: * Order-preserving: Does the encoded value sort consistently with the original typed value? Note that Bigtable will always sort data based on the raw encoded value, *not* the decoded type. - Example: BYTES values sort in the same order as their raw encodings. - Counterexample: Encoding INT64 as a fixed-width decimal string does *not* preserve sort order when dealing with negative numbers. `INT64(1) > INT64(-1)`, but `STRING(\"-00001\") > STRING(\"00001)`. * Self-delimiting: If we concatenate two encoded values, can we always tell where the first one ends and the second one begins? - Example: If we encode INT64s to fixed-width STRINGs, the first value will always contain exactly N digits, possibly preceded by a sign. - Counterexample: If we concatenate two UTF-8 encoded STRINGs, we have no way to tell where the first one ends. * Compatibility: Which other systems have matching encoding schemes? For example, does this encoding have a GoogleSQL equivalent? HBase? Java?", + "description": "`Type` represents the type of data that is written to, read from, or stored in Bigtable. It is heavily based on the GoogleSQL standard to help maintain familiarity and consistency across products and features. For compatibility with Bigtable's existing untyped APIs, each `Type` includes an `Encoding` which describes how to convert to or from the underlying data. Each encoding can operate in one of two modes: - Sorted: In this mode, Bigtable guarantees that `Encode(X) <= Encode(Y)` if and only if `X <= Y`. This is useful anywhere sort order is important, for example when encoding keys. - Distinct: In this mode, Bigtable guarantees that if `X != Y` then `Encode(X) != Encode(Y)`. However, the converse is not guaranteed. For example, both \"{'foo': '1', 'bar': '2'}\" and \"{'bar': '2', 'foo': '1'}\" are valid encodings of the same JSON value. The API clearly documents which mode is used wherever an encoding can be configured. Each encoding also documents which values are supported in which modes. For example, when encoding INT64 as a numeric STRING, negative numbers cannot be encoded in sorted mode. This is because `INT64(1) > INT64(-1)`, but `STRING(\"-00001\") > STRING(\"00001\")`.", "id": "Type", "properties": { "aggregateType": { diff --git a/Src/Generated/Google.Apis.BigtableAdmin.v2/Google.Apis.BigtableAdmin.v2.cs b/Src/Generated/Google.Apis.BigtableAdmin.v2/Google.Apis.BigtableAdmin.v2.cs index a9fc8f2850e..93305bcc674 100644 --- a/Src/Generated/Google.Apis.BigtableAdmin.v2/Google.Apis.BigtableAdmin.v2.cs +++ b/Src/Generated/Google.Apis.BigtableAdmin.v2/Google.Apis.BigtableAdmin.v2.cs @@ -4735,7 +4735,8 @@ public class AuthorizedView : Google.Apis.Requests.IDirectResponseSchema public class AutomatedBackupPolicy : Google.Apis.Requests.IDirectResponseSchema { /// - /// Required. How frequently automated backups should occur. The only supported value at this time is 24 hours. + /// How frequently automated backups should occur. The only supported value at this time is 24 hours. An + /// undefined frequency is treated as 24 hours. /// [Newtonsoft.Json.JsonPropertyAttribute("frequency")] public virtual object Frequency { get; set; } @@ -6209,7 +6210,7 @@ public class GoogleBigtableAdminV2AuthorizedViewSubsetView : Google.Apis.Request /// /// A value that combines incremental updates into a summarized value. Data is never directly written or read using - /// type `Aggregate`. Writes will provide either the `input_type` or `state_type`, and reads will always return the + /// type `Aggregate`. Writes provide either the `input_type` or `state_type`, and reads always return the /// `state_type` . /// public class GoogleBigtableAdminV2TypeAggregate : Google.Apis.Requests.IDirectResponseSchema @@ -6219,8 +6220,8 @@ public class GoogleBigtableAdminV2TypeAggregate : Google.Apis.Requests.IDirectRe public virtual GoogleBigtableAdminV2TypeAggregateHyperLogLogPlusPlusUniqueCount HllppUniqueCount { get; set; } /// - /// Type of the inputs that are accumulated by this `Aggregate`, which must specify a full encoding. Use - /// `AddInput` mutations to accumulate new inputs. + /// Type of the inputs that are accumulated by this `Aggregate`. Use `AddInput` mutations to accumulate new + /// inputs. /// [Newtonsoft.Json.JsonPropertyAttribute("inputType")] public virtual Type InputType { get; set; } @@ -6235,7 +6236,7 @@ public class GoogleBigtableAdminV2TypeAggregate : Google.Apis.Requests.IDirectRe /// /// Output only. Type that holds the internal accumulator state for the `Aggregate`. This is a function of the - /// `input_type` and `aggregator` chosen, and will always specify a full encoding. + /// `input_type` and `aggregator` chosen. /// [Newtonsoft.Json.JsonPropertyAttribute("stateType")] public virtual Type StateType { get; set; } @@ -6304,7 +6305,7 @@ public class GoogleBigtableAdminV2TypeBool : Google.Apis.Requests.IDirectRespons /// Bytes Values of type `Bytes` are stored in `Value.bytes_value`. public class GoogleBigtableAdminV2TypeBytes : Google.Apis.Requests.IDirectResponseSchema { - /// The encoding to use when converting to/from lower level types. + /// The encoding to use when converting to or from lower level types. [Newtonsoft.Json.JsonPropertyAttribute("encoding")] public virtual GoogleBigtableAdminV2TypeBytesEncoding Encoding { get; set; } @@ -6312,7 +6313,7 @@ public class GoogleBigtableAdminV2TypeBytes : Google.Apis.Requests.IDirectRespon public virtual string ETag { get; set; } } - /// Rules used to convert to/from lower level types. + /// Rules used to convert to or from lower level types. public class GoogleBigtableAdminV2TypeBytesEncoding : Google.Apis.Requests.IDirectResponseSchema { /// Use `Raw` encoding. @@ -6323,7 +6324,9 @@ public class GoogleBigtableAdminV2TypeBytesEncoding : Google.Apis.Requests.IDire public virtual string ETag { get; set; } } - /// Leaves the value "as-is" * Order-preserving? Yes * Self-delimiting? No * Compatibility? N/A + /// + /// Leaves the value as-is. Sorted mode: all values are supported. Distinct mode: all values are supported. + /// public class GoogleBigtableAdminV2TypeBytesEncodingRaw : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. @@ -6354,7 +6357,7 @@ public class GoogleBigtableAdminV2TypeFloat64 : Google.Apis.Requests.IDirectResp /// Int64 Values of type `Int64` are stored in `Value.int_value`. public class GoogleBigtableAdminV2TypeInt64 : Google.Apis.Requests.IDirectResponseSchema { - /// The encoding to use when converting to/from lower level types. + /// The encoding to use when converting to or from lower level types. [Newtonsoft.Json.JsonPropertyAttribute("encoding")] public virtual GoogleBigtableAdminV2TypeInt64Encoding Encoding { get; set; } @@ -6362,7 +6365,7 @@ public class GoogleBigtableAdminV2TypeInt64 : Google.Apis.Requests.IDirectRespon public virtual string ETag { get; set; } } - /// Rules used to convert to/from lower level types. + /// Rules used to convert to or from lower level types. public class GoogleBigtableAdminV2TypeInt64Encoding : Google.Apis.Requests.IDirectResponseSchema { /// Use `BigEndianBytes` encoding. @@ -6374,9 +6377,9 @@ public class GoogleBigtableAdminV2TypeInt64Encoding : Google.Apis.Requests.IDire } /// - /// Encodes the value as an 8-byte big endian twos complement `Bytes` value. * Order-preserving? No (positive values - /// only) * Self-delimiting? Yes * Compatibility? - BigQuery Federation `BINARY` encoding - HBase `Bytes.toBytes` - - /// Java `ByteBuffer.putLong()` with `ByteOrder.BIG_ENDIAN` + /// Encodes the value as an 8-byte big-endian two's complement value. Sorted mode: non-negative values are + /// supported. Distinct mode: all values are supported. Compatible with: - BigQuery `BINARY` encoding - HBase + /// `Bytes.toBytes` - Java `ByteBuffer.putLong()` with `ByteOrder.BIG_ENDIAN` /// public class GoogleBigtableAdminV2TypeInt64EncodingBigEndianBytes : Google.Apis.Requests.IDirectResponseSchema { @@ -6411,7 +6414,7 @@ public class GoogleBigtableAdminV2TypeMap : Google.Apis.Requests.IDirectResponse /// String Values of type `String` are stored in `Value.string_value`. public class GoogleBigtableAdminV2TypeString : Google.Apis.Requests.IDirectResponseSchema { - /// The encoding to use when converting to/from lower level types. + /// The encoding to use when converting to or from lower level types. [Newtonsoft.Json.JsonPropertyAttribute("encoding")] public virtual GoogleBigtableAdminV2TypeStringEncoding Encoding { get; set; } @@ -6419,7 +6422,7 @@ public class GoogleBigtableAdminV2TypeString : Google.Apis.Requests.IDirectRespo public virtual string ETag { get; set; } } - /// Rules used to convert to/from lower level types. + /// Rules used to convert to or from lower level types. public class GoogleBigtableAdminV2TypeStringEncoding : Google.Apis.Requests.IDirectResponseSchema { /// Use `Utf8Bytes` encoding. @@ -6435,8 +6438,9 @@ public class GoogleBigtableAdminV2TypeStringEncoding : Google.Apis.Requests.IDir } /// - /// UTF-8 encoding * Order-preserving? Yes (code point order) * Self-delimiting? No * Compatibility? - BigQuery - /// Federation `TEXT` encoding - HBase `Bytes.toBytes` - Java `String#getBytes(StandardCharsets.UTF_8)` + /// UTF-8 encoding. Sorted mode: - All values are supported. - Code point order is preserved. Distinct mode: all + /// values are supported. Compatible with: - BigQuery `TEXT` encoding - HBase `Bytes.toBytes` - Java + /// `String#getBytes(StandardCharsets.UTF_8)` /// public class GoogleBigtableAdminV2TypeStringEncodingUtf8Bytes : Google.Apis.Requests.IDirectResponseSchema { @@ -7693,16 +7697,15 @@ public class TestIamPermissionsResponse : Google.Apis.Requests.IDirectResponseSc /// `Type` represents the type of data that is written to, read from, or stored in Bigtable. It is heavily based on /// the GoogleSQL standard to help maintain familiarity and consistency across products and features. For /// compatibility with Bigtable's existing untyped APIs, each `Type` includes an `Encoding` which describes how to - /// convert to/from the underlying data. Each encoding also defines the following properties: * Order-preserving: - /// Does the encoded value sort consistently with the original typed value? Note that Bigtable will always sort data - /// based on the raw encoded value, *not* the decoded type. - Example: BYTES values sort in the same order as their - /// raw encodings. - Counterexample: Encoding INT64 as a fixed-width decimal string does *not* preserve sort order - /// when dealing with negative numbers. `INT64(1) &gt; INT64(-1)`, but `STRING("-00001") &gt; - /// STRING("00001)`. * Self-delimiting: If we concatenate two encoded values, can we always tell where the first one - /// ends and the second one begins? - Example: If we encode INT64s to fixed-width STRINGs, the first value will - /// always contain exactly N digits, possibly preceded by a sign. - Counterexample: If we concatenate two UTF-8 - /// encoded STRINGs, we have no way to tell where the first one ends. * Compatibility: Which other systems have - /// matching encoding schemes? For example, does this encoding have a GoogleSQL equivalent? HBase? Java? + /// convert to or from the underlying data. Each encoding can operate in one of two modes: - Sorted: In this mode, + /// Bigtable guarantees that `Encode(X) &lt;= Encode(Y)` if and only if `X &lt;= Y`. This is useful anywhere + /// sort order is important, for example when encoding keys. - Distinct: In this mode, Bigtable guarantees that if + /// `X != Y` then `Encode(X) != Encode(Y)`. However, the converse is not guaranteed. For example, both "{'foo': '1', + /// 'bar': '2'}" and "{'bar': '2', 'foo': '1'}" are valid encodings of the same JSON value. The API clearly + /// documents which mode is used wherever an encoding can be configured. Each encoding also documents which values + /// are supported in which modes. For example, when encoding INT64 as a numeric STRING, negative numbers cannot be + /// encoded in sorted mode. This is because `INT64(1) &gt; INT64(-1)`, but `STRING("-00001") &gt; + /// STRING("00001")`. /// public class Type : Google.Apis.Requests.IDirectResponseSchema { diff --git a/Src/Generated/Google.Apis.BigtableAdmin.v2/Google.Apis.BigtableAdmin.v2.csproj b/Src/Generated/Google.Apis.BigtableAdmin.v2/Google.Apis.BigtableAdmin.v2.csproj index 09839c22309..f97b936f151 100644 --- a/Src/Generated/Google.Apis.BigtableAdmin.v2/Google.Apis.BigtableAdmin.v2.csproj +++ b/Src/Generated/Google.Apis.BigtableAdmin.v2/Google.Apis.BigtableAdmin.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.BigtableAdmin.v2 Client Library - 1.68.0.3548 + 1.68.0.3568 Google LLC Copyright 2024 Google LLC Google From d1574a6babb03d0300699ca5a3debb58417eb095 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:16 -0700 Subject: [PATCH 09/61] feat: Generate Google.Apis.CloudDeploy.v1 version 1.68.0.3570 --- DiscoveryJson/clouddeploy.v1.json | 52 ++++++++++++++++- .../Google.Apis.CloudDeploy.v1.cs | 58 +++++++++++++++++++ .../Google.Apis.CloudDeploy.v1.csproj | 2 +- 3 files changed, 110 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/clouddeploy.v1.json b/DiscoveryJson/clouddeploy.v1.json index 28fdaf394dd..f985f7c1b32 100644 --- a/DiscoveryJson/clouddeploy.v1.json +++ b/DiscoveryJson/clouddeploy.v1.json @@ -2289,7 +2289,7 @@ } } }, - "revision": "20241002", + "revision": "20241010", "rootUrl": "https://clouddeploy.googleapis.com/", "schemas": { "AbandonReleaseRequest": { @@ -2442,6 +2442,27 @@ "properties": {}, "type": "object" }, + "AssociatedEntities": { + "description": "Information about entities associated with a `Target`.", + "id": "AssociatedEntities", + "properties": { + "anthosClusters": { + "description": "Optional. Information specifying Anthos clusters as associated entities.", + "items": { + "$ref": "AnthosCluster" + }, + "type": "array" + }, + "gkeClusters": { + "description": "Optional. Information specifying GKE clusters as associated entities.", + "items": { + "$ref": "GkeCluster" + }, + "type": "array" + } + }, + "type": "object" + }, "AuditConfig": { "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging.", "id": "AuditConfig", @@ -3989,6 +4010,10 @@ "description": "Optional. The label to use when selecting Pods for the Deployment and Service resources. This label must already be present in both resources.", "type": "string" }, + "routeDestinations": { + "$ref": "RouteDestinations", + "description": "Optional. Route destinations allow configuring the Gateway API HTTPRoute to be deployed to additional clusters. This option is available for multi-cluster service mesh set ups that require the route to exist in the clusters that call the service. If unspecified, the HTTPRoute will only be deployed to the Target cluster." + }, "routeUpdateWaitTime": { "description": "Optional. The time to wait for route updates to propagate. The maximum configurable time is 3 hours, in seconds format. If unspecified, there is no wait time.", "format": "google-duration", @@ -6308,6 +6333,24 @@ }, "type": "object" }, + "RouteDestinations": { + "description": "Information about route destinations for the Gateway API service mesh.", + "id": "RouteDestinations", + "properties": { + "destinationIds": { + "description": "Required. The clusters where the Gateway API HTTPRoute resource will be deployed to. Valid entries include the associated entities IDs configured in the Target resource and \"@self\" to include the Target cluster.", + "items": { + "type": "string" + }, + "type": "array" + }, + "propagateService": { + "description": "Optional. Whether to propagate the Kubernetes Service to the route destination clusters. The Service will always be deployed to the Target cluster even if the HTTPRoute is not. This option may be used to facilitiate successful DNS lookup in the route destination clusters. Can only be set to true if destinations are specified.", + "type": "boolean" + } + }, + "type": "object" + }, "RuntimeConfig": { "description": "RuntimeConfig contains the runtime specific configurations for a deployment strategy.", "id": "RuntimeConfig", @@ -6622,6 +6665,13 @@ "$ref": "AnthosCluster", "description": "Optional. Information specifying an Anthos Cluster." }, + "associatedEntities": { + "additionalProperties": { + "$ref": "AssociatedEntities" + }, + "description": "Optional. Map of entity IDs to their associated entities. Associated entities allows specifying places other than the deployment target for specific features. For example, the Gateway API canary can be configured to deploy the HTTPRoute to a different cluster(s) than the deployment cluster using associated entities. An entity ID must consist of lower-case letters, numbers, and hyphens, start with a letter and end with a letter or a number, and have a max length of 63 characters. In other words, it must match the following regex: `^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$`.", + "type": "object" + }, "createTime": { "description": "Output only. Time at which the `Target` was created.", "format": "google-datetime", diff --git a/Src/Generated/Google.Apis.CloudDeploy.v1/Google.Apis.CloudDeploy.v1.cs b/Src/Generated/Google.Apis.CloudDeploy.v1/Google.Apis.CloudDeploy.v1.cs index d0220de9fbc..762f5080a21 100644 --- a/Src/Generated/Google.Apis.CloudDeploy.v1/Google.Apis.CloudDeploy.v1.cs +++ b/Src/Generated/Google.Apis.CloudDeploy.v1/Google.Apis.CloudDeploy.v1.cs @@ -5696,6 +5696,21 @@ public class ApproveRolloutResponse : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + /// Information about entities associated with a `Target`. + public class AssociatedEntities : Google.Apis.Requests.IDirectResponseSchema + { + /// Optional. Information specifying Anthos clusters as associated entities. + [Newtonsoft.Json.JsonPropertyAttribute("anthosClusters")] + public virtual System.Collections.Generic.IList AnthosClusters { get; set; } + + /// Optional. Information specifying GKE clusters as associated entities. + [Newtonsoft.Json.JsonPropertyAttribute("gkeClusters")] + public virtual System.Collections.Generic.IList GkeClusters { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// /// Specifies the audit configuration for a service. The configuration determines which permission types are logged, /// and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If @@ -7585,6 +7600,15 @@ public class GatewayServiceMesh : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("podSelectorLabel")] public virtual string PodSelectorLabel { get; set; } + /// + /// Optional. Route destinations allow configuring the Gateway API HTTPRoute to be deployed to additional + /// clusters. This option is available for multi-cluster service mesh set ups that require the route to exist in + /// the clusters that call the service. If unspecified, the HTTPRoute will only be deployed to the Target + /// cluster. + /// + [Newtonsoft.Json.JsonPropertyAttribute("routeDestinations")] + public virtual RouteDestinations RouteDestinations { get; set; } + /// /// Optional. The time to wait for route updates to propagate. The maximum configurable time is 3 hours, in /// seconds format. If unspecified, there is no wait time. @@ -9965,6 +9989,29 @@ public class RolloutUpdateEvent : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + /// Information about route destinations for the Gateway API service mesh. + public class RouteDestinations : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Required. The clusters where the Gateway API HTTPRoute resource will be deployed to. Valid entries include + /// the associated entities IDs configured in the Target resource and "@self" to include the Target cluster. + /// + [Newtonsoft.Json.JsonPropertyAttribute("destinationIds")] + public virtual System.Collections.Generic.IList DestinationIds { get; set; } + + /// + /// Optional. Whether to propagate the Kubernetes Service to the route destination clusters. The Service will + /// always be deployed to the Target cluster even if the HTTPRoute is not. This option may be used to + /// facilitiate successful DNS lookup in the route destination clusters. Can only be set to true if destinations + /// are specified. + /// + [Newtonsoft.Json.JsonPropertyAttribute("propagateService")] + public virtual System.Nullable PropagateService { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// RuntimeConfig contains the runtime specific configurations for a deployment strategy. public class RuntimeConfig : Google.Apis.Requests.IDirectResponseSchema { @@ -10433,6 +10480,17 @@ public class Target : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("anthosCluster")] public virtual AnthosCluster AnthosCluster { get; set; } + /// + /// Optional. Map of entity IDs to their associated entities. Associated entities allows specifying places other + /// than the deployment target for specific features. For example, the Gateway API canary can be configured to + /// deploy the HTTPRoute to a different cluster(s) than the deployment cluster using associated entities. An + /// entity ID must consist of lower-case letters, numbers, and hyphens, start with a letter and end with a + /// letter or a number, and have a max length of 63 characters. In other words, it must match the following + /// regex: `^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$`. + /// + [Newtonsoft.Json.JsonPropertyAttribute("associatedEntities")] + public virtual System.Collections.Generic.IDictionary AssociatedEntities { get; set; } + private string _createTimeRaw; private object _createTime; diff --git a/Src/Generated/Google.Apis.CloudDeploy.v1/Google.Apis.CloudDeploy.v1.csproj b/Src/Generated/Google.Apis.CloudDeploy.v1/Google.Apis.CloudDeploy.v1.csproj index 978c07d5dd3..c1083ff6f2e 100644 --- a/Src/Generated/Google.Apis.CloudDeploy.v1/Google.Apis.CloudDeploy.v1.csproj +++ b/Src/Generated/Google.Apis.CloudDeploy.v1/Google.Apis.CloudDeploy.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudDeploy.v1 Client Library - 1.68.0.3562 + 1.68.0.3570 Google LLC Copyright 2024 Google LLC Google From 545c6f3e06537ec7335ded126549b4d99e8bdfa1 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:19 -0700 Subject: [PATCH 10/61] feat: Generate Google.Apis.CloudComposer.v1 version 1.68.0.3573 --- DiscoveryJson/composer.v1.json | 161 +++++++++++++++++- .../Google.Apis.CloudComposer.v1.csproj | 2 +- 2 files changed, 159 insertions(+), 4 deletions(-) diff --git a/DiscoveryJson/composer.v1.json b/DiscoveryJson/composer.v1.json index 83420758c01..a31bcec70fb 100644 --- a/DiscoveryJson/composer.v1.json +++ b/DiscoveryJson/composer.v1.json @@ -18,14 +18,109 @@ "endpoints": [ { "description": "Regional Endpoint", - "endpointUrl": "https://composer.us-south1.rep.googleapis.com/", - "location": "us-south1" + "endpointUrl": "https://composer.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-central2.rep.googleapis.com/", + "location": "europe-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-west2.rep.googleapis.com/", + "location": "europe-west2" }, { "description": "Regional Endpoint", "endpointUrl": "https://composer.europe-west3.rep.googleapis.com/", "location": "europe-west3" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, { "description": "Regional Endpoint", "endpointUrl": "https://composer.europe-west8.rep.googleapis.com/", @@ -36,11 +131,56 @@ "endpointUrl": "https://composer.europe-west9.rep.googleapis.com/", "location": "europe-west9" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-west10.rep.googleapis.com/", + "location": "europe-west10" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, { "description": "Regional Endpoint", "endpointUrl": "https://composer.me-central2.rep.googleapis.com/", "location": "me-central2" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.northamerica-northeast2.rep.googleapis.com/", + "location": "northamerica-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, { "description": "Regional Endpoint", "endpointUrl": "https://composer.us-central1.rep.googleapis.com/", @@ -61,6 +201,16 @@ "endpointUrl": "https://composer.us-east5.rep.googleapis.com/", "location": "us-east5" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, { "description": "Regional Endpoint", "endpointUrl": "https://composer.us-west1.rep.googleapis.com/", @@ -80,6 +230,11 @@ "description": "Regional Endpoint", "endpointUrl": "https://composer.us-west4.rep.googleapis.com/", "location": "us-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.us-west8.rep.googleapis.com/", + "location": "us-west8" } ], "fullyEncodeReservedExpansion": true, @@ -1033,7 +1188,7 @@ } } }, - "revision": "20241007", + "revision": "20241013", "rootUrl": "https://composer.googleapis.com/", "schemas": { "AirflowMetadataRetentionPolicyConfig": { diff --git a/Src/Generated/Google.Apis.CloudComposer.v1/Google.Apis.CloudComposer.v1.csproj b/Src/Generated/Google.Apis.CloudComposer.v1/Google.Apis.CloudComposer.v1.csproj index a12f44a52a4..9ef5c4d04fe 100644 --- a/Src/Generated/Google.Apis.CloudComposer.v1/Google.Apis.CloudComposer.v1.csproj +++ b/Src/Generated/Google.Apis.CloudComposer.v1/Google.Apis.CloudComposer.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudComposer.v1 Client Library - 1.68.0.3567 + 1.68.0.3573 Google LLC Copyright 2024 Google LLC Google From 1e7905eada27aa81691c9b2905887f975810a9e9 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:22 -0700 Subject: [PATCH 11/61] feat: Generate Google.Apis.CloudComposer.v1beta1 version 1.68.0.3573 --- DiscoveryJson/composer.v1beta1.json | 161 +++++++++++++++++- .../Google.Apis.CloudComposer.v1beta1.csproj | 2 +- 2 files changed, 159 insertions(+), 4 deletions(-) diff --git a/DiscoveryJson/composer.v1beta1.json b/DiscoveryJson/composer.v1beta1.json index 9da086979ad..615d256848e 100644 --- a/DiscoveryJson/composer.v1beta1.json +++ b/DiscoveryJson/composer.v1beta1.json @@ -18,14 +18,109 @@ "endpoints": [ { "description": "Regional Endpoint", - "endpointUrl": "https://composer.us-south1.rep.googleapis.com/", - "location": "us-south1" + "endpointUrl": "https://composer.africa-south1.rep.googleapis.com/", + "location": "africa-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-northeast1.rep.googleapis.com/", + "location": "asia-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-northeast2.rep.googleapis.com/", + "location": "asia-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-northeast3.rep.googleapis.com/", + "location": "asia-northeast3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.asia-southeast2.rep.googleapis.com/", + "location": "asia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.australia-southeast1.rep.googleapis.com/", + "location": "australia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.australia-southeast2.rep.googleapis.com/", + "location": "australia-southeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-central2.rep.googleapis.com/", + "location": "europe-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-north1.rep.googleapis.com/", + "location": "europe-north1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-north2.rep.googleapis.com/", + "location": "europe-north2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-southwest1.rep.googleapis.com/", + "location": "europe-southwest1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-west2.rep.googleapis.com/", + "location": "europe-west2" }, { "description": "Regional Endpoint", "endpointUrl": "https://composer.europe-west3.rep.googleapis.com/", "location": "europe-west3" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-west6.rep.googleapis.com/", + "location": "europe-west6" + }, { "description": "Regional Endpoint", "endpointUrl": "https://composer.europe-west8.rep.googleapis.com/", @@ -36,11 +131,56 @@ "endpointUrl": "https://composer.europe-west9.rep.googleapis.com/", "location": "europe-west9" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-west10.rep.googleapis.com/", + "location": "europe-west10" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.europe-west12.rep.googleapis.com/", + "location": "europe-west12" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.me-central1.rep.googleapis.com/", + "location": "me-central1" + }, { "description": "Regional Endpoint", "endpointUrl": "https://composer.me-central2.rep.googleapis.com/", "location": "me-central2" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.me-west1.rep.googleapis.com/", + "location": "me-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.northamerica-northeast1.rep.googleapis.com/", + "location": "northamerica-northeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.northamerica-northeast2.rep.googleapis.com/", + "location": "northamerica-northeast2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.northamerica-south1.rep.googleapis.com/", + "location": "northamerica-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.southamerica-east1.rep.googleapis.com/", + "location": "southamerica-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.southamerica-west1.rep.googleapis.com/", + "location": "southamerica-west1" + }, { "description": "Regional Endpoint", "endpointUrl": "https://composer.us-central1.rep.googleapis.com/", @@ -61,6 +201,16 @@ "endpointUrl": "https://composer.us-east5.rep.googleapis.com/", "location": "us-east5" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, { "description": "Regional Endpoint", "endpointUrl": "https://composer.us-west1.rep.googleapis.com/", @@ -80,6 +230,11 @@ "description": "Regional Endpoint", "endpointUrl": "https://composer.us-west4.rep.googleapis.com/", "location": "us-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://composer.us-west8.rep.googleapis.com/", + "location": "us-west8" } ], "fullyEncodeReservedExpansion": true, @@ -1061,7 +1216,7 @@ } } }, - "revision": "20241007", + "revision": "20241013", "rootUrl": "https://composer.googleapis.com/", "schemas": { "AirflowMetadataRetentionPolicyConfig": { diff --git a/Src/Generated/Google.Apis.CloudComposer.v1beta1/Google.Apis.CloudComposer.v1beta1.csproj b/Src/Generated/Google.Apis.CloudComposer.v1beta1/Google.Apis.CloudComposer.v1beta1.csproj index b3c6d131e57..456a564b681 100644 --- a/Src/Generated/Google.Apis.CloudComposer.v1beta1/Google.Apis.CloudComposer.v1beta1.csproj +++ b/Src/Generated/Google.Apis.CloudComposer.v1beta1/Google.Apis.CloudComposer.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudComposer.v1beta1 Client Library - 1.68.0.3567 + 1.68.0.3573 Google LLC Copyright 2024 Google LLC Google From 3cfa8169e1f530579c1b6f8c72d3d0c9c9cff521 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:26 -0700 Subject: [PATCH 12/61] feat: Generate Google.Apis.Compute.alpha version 1.68.0.3568 --- DiscoveryJson/compute.alpha.json | 1569 ++++++- .../Google.Apis.Compute.alpha.cs | 3842 +++++++++++++---- .../Google.Apis.Compute.alpha.csproj | 2 +- 3 files changed, 4471 insertions(+), 942 deletions(-) diff --git a/DiscoveryJson/compute.alpha.json b/DiscoveryJson/compute.alpha.json index 2645a80af34..7fd39a8bffd 100644 --- a/DiscoveryJson/compute.alpha.json +++ b/DiscoveryJson/compute.alpha.json @@ -2359,6 +2359,225 @@ } } }, + "crossSiteNetworks": { + "methods": { + "delete": { + "description": "Deletes the specified cross-site network in the given scope.", + "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}", + "httpMethod": "DELETE", + "id": "compute.crossSiteNetworks.delete", + "parameterOrder": [ + "project", + "crossSiteNetwork" + ], + "parameters": { + "crossSiteNetwork": { + "description": "Name of the cross-site network to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified cross-site network in the given scope.", + "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}", + "httpMethod": "GET", + "id": "compute.crossSiteNetworks.get", + "parameterOrder": [ + "project", + "crossSiteNetwork" + ], + "parameters": { + "crossSiteNetwork": { + "description": "Name of the cross-site network to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}", + "response": { + "$ref": "CrossSiteNetwork" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a cross-site network in the specified project in the given scope using the parameters that are included in the request.", + "flatPath": "projects/{project}/global/crossSiteNetworks", + "httpMethod": "POST", + "id": "compute.crossSiteNetworks.insert", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "[Input Only] Validate the new configuration, but don't create it. If applicable, any configuration notices are returned in the `configurationNotices` field.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/crossSiteNetworks", + "request": { + "$ref": "CrossSiteNetwork" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Lists the cross-site networks for a project in the given scope.", + "flatPath": "projects/{project}/global/crossSiteNetworks", + "httpMethod": "GET", + "id": "compute.crossSiteNetworks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/crossSiteNetworks", + "response": { + "$ref": "CrossSiteNetworkList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified cross-site network with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}", + "httpMethod": "PATCH", + "id": "compute.crossSiteNetworks.patch", + "parameterOrder": [ + "project", + "crossSiteNetwork" + ], + "parameters": { + "crossSiteNetwork": { + "description": "Name of the cross-site network to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "[Input Only] Validate the new configuration, but don't update it. If applicable, any configuration notices are returned in the `configurationNotices` field.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}", + "request": { + "$ref": "CrossSiteNetwork" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, "diskSettings": { "methods": { "get": { @@ -2926,6 +3145,48 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "getAsyncReplicationStatus": { + "description": "Gets the status of current async replication for a given device.", + "flatPath": "projects/{project}/zones/{zone}/disks/{disk}/getAsyncReplicationStatus", + "httpMethod": "GET", + "id": "compute.disks.getAsyncReplicationStatus", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the Disk resource whose Async replication details are requested. Name should conform to RFC1035 or be an unsigned long integer.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/disks/{disk}/getAsyncReplicationStatus", + "response": { + "$ref": "GetAsyncReplicationStatusResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "getIamPolicy": { "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", "flatPath": "projects/{project}/zones/{zone}/disks/{resource}/getIamPolicy", @@ -3525,6 +3786,55 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] + }, + "waitForReplicationCatchUp": { + "description": "Wait for replication to catch up on the secondary disk.", + "flatPath": "projects/{project}/zones/{zone}/disks/{disk}/waitForReplicationCatchUp", + "httpMethod": "POST", + "id": "compute.disks.waitForReplicationCatchUp", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "disk": { + "description": "The name of the persistent disk. Name should conform to RFC1035 or be an unsigned long integer.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/disks/{disk}/waitForReplicationCatchUp", + "request": { + "$ref": "WaitForReplicationCatchUpRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } } }, @@ -26016,6 +26326,48 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "getAsyncReplicationStatus": { + "description": "Gets the status of current async replication for a given device.", + "flatPath": "projects/{project}/regions/{region}/disks/{disk}/getAsyncReplicationStatus", + "httpMethod": "GET", + "id": "compute.regionDisks.getAsyncReplicationStatus", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "parameters": { + "disk": { + "description": "Name of the Disk resource whose Async replication details are requested. Name should conform to RFC1035 or be an unsigned long integer.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/disks/{disk}/getAsyncReplicationStatus", + "response": { + "$ref": "GetAsyncReplicationStatusResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "getIamPolicy": { "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", "flatPath": "projects/{project}/regions/{region}/disks/{resource}/getIamPolicy", @@ -26615,6 +26967,55 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] + }, + "waitForReplicationCatchUp": { + "description": "Wait for replication to catch up on the secondary disk.", + "flatPath": "projects/{project}/regions/{region}/disks/{disk}/waitForReplicationCatchUp", + "httpMethod": "POST", + "id": "compute.regionDisks.waitForReplicationCatchUp", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "parameters": { + "disk": { + "description": "The name of the persistent disk. Name should conform to RFC1035 or be an unsigned long integer.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/disks/{disk}/waitForReplicationCatchUp", + "request": { + "$ref": "RegionWaitForReplicationCatchUpRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } } }, @@ -30279,7 +30680,7 @@ ] }, "get": { - "description": "Returns the specified multi-MIG resource.", + "description": "Returns all the details of a specific multi-MIG.", "flatPath": "projects/{project}/regions/{region}/multiMigs/{multiMig}", "httpMethod": "GET", "id": "compute.regionMultiMigs.get", @@ -30346,7 +30747,7 @@ "type": "string" }, "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents you from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" } @@ -45871,21 +46272,20 @@ } } }, - "zoneOperations": { + "wireGroups": { "methods": { "delete": { - "description": "Deletes the specified zone-specific Operations resource.", - "flatPath": "projects/{project}/zones/{zone}/operations/{operation}", + "description": "Deletes the specified wire group in the given scope.", + "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", "httpMethod": "DELETE", - "id": "compute.zoneOperations.delete", + "id": "compute.wireGroups.delete", "parameterOrder": [ "project", - "zone", - "operation" + "crossSiteNetwork", + "wireGroup" ], "parameters": { - "operation": { - "description": "Name of the Operations resource to delete, or its unique numeric identifier.", + "crossSiteNetwork": { "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, @@ -45898,33 +46298,40 @@ "required": true, "type": "string" }, - "zone": { - "description": "Name of the zone for this request.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, + "wireGroup": { + "description": "Name of the wire group resource to delete.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/operations/{operation}", + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] }, "get": { - "description": "Retrieves the specified zone-specific Operations resource.", - "flatPath": "projects/{project}/zones/{zone}/operations/{operation}", + "description": "Gets the specified wire group resource in the given scope.", + "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", "httpMethod": "GET", - "id": "compute.zoneOperations.get", + "id": "compute.wireGroups.get", "parameterOrder": [ "project", - "zone", - "operation" + "crossSiteNetwork", + "wireGroup" ], "parameters": { - "operation": { - "description": "Name of the Operations resource to return, or its unique numeric identifier.", + "crossSiteNetwork": { "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, @@ -45937,17 +46344,17 @@ "required": true, "type": "string" }, - "zone": { - "description": "Name of the zone for this request.", + "wireGroup": { + "description": "Name of the wire group resource to return.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/operations/{operation}", + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", "response": { - "$ref": "Operation" + "$ref": "WireGroup" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -45955,16 +46362,68 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "insert": { + "description": "Creates a wire group in the specified project in the given scope using the parameters that are included in the request.", + "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups", + "httpMethod": "POST", + "id": "compute.wireGroups.insert", + "parameterOrder": [ + "project", + "crossSiteNetwork" + ], + "parameters": { + "crossSiteNetwork": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "[Input Only] Validate the new configuration, but don't create it. If applicable, any configuration notices are returned in the `configurationNotices` field.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups", + "request": { + "$ref": "WireGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "list": { - "description": "Retrieves a list of Operation resources contained within the specified zone.", - "flatPath": "projects/{project}/zones/{zone}/operations", + "description": "Lists the wire groups for a project in the given scope.", + "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups", "httpMethod": "GET", - "id": "compute.zoneOperations.list", + "id": "compute.wireGroups.list", "parameterOrder": [ "project", - "zone" + "crossSiteNetwork" ], "parameters": { + "crossSiteNetwork": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, "filter": { "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", "location": "query", @@ -45999,30 +46458,232 @@ "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code.", "location": "query", "type": "boolean" + } + }, + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups", + "response": { + "$ref": "WireGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Updates the specified wire group resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "httpMethod": "PATCH", + "id": "compute.wireGroups.patch", + "parameterOrder": [ + "project", + "crossSiteNetwork", + "wireGroup" + ], + "parameters": { + "crossSiteNetwork": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" }, - "zone": { - "description": "Name of the zone for request.", + "project": { + "description": "Project ID for this request.", "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "update_mask indicates fields to be updated as part of this request.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "[Input Only] Validate the new configuration, but don't update it. If applicable, any configuration notices are returned in the `configurationNotices` field.", + "location": "query", + "type": "boolean" + }, + "wireGroup": { + "description": "Name of the WireGroups resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" } }, - "path": "projects/{project}/zones/{zone}/operations", + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "request": { + "$ref": "WireGroup" + }, "response": { - "$ref": "OperationList" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "zoneOperations": { + "methods": { + "delete": { + "description": "Deletes the specified zone-specific Operations resource.", + "flatPath": "projects/{project}/zones/{zone}/operations/{operation}", + "httpMethod": "DELETE", + "id": "compute.zoneOperations.delete", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete, or its unique numeric identifier.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" ] }, - "wait": { - "description": "Waits for the specified Operation resource to return as `DONE` or for the request to approach the 2 minute deadline, and retrieves the specified Operation resource. This method waits for no more than the 2 minutes and then returns the current state of the operation, which might be `DONE` or still in progress. This method is called on a best-effort basis. Specifically: - In uncommon cases, when the server is overloaded, the request might return before the default deadline is reached, or might return after zero seconds. - If the default deadline is reached, there is no guarantee that the operation is actually done when the method returns. Be prepared to retry if the operation is not `DONE`. ", - "flatPath": "projects/{project}/zones/{zone}/operations/{operation}/wait", - "httpMethod": "POST", - "id": "compute.zoneOperations.wait", + "get": { + "description": "Retrieves the specified zone-specific Operations resource.", + "flatPath": "projects/{project}/zones/{zone}/operations/{operation}", + "httpMethod": "GET", + "id": "compute.zoneOperations.get", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return, or its unique numeric identifier.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Retrieves a list of Operation resources contained within the specified zone.", + "flatPath": "projects/{project}/zones/{zone}/operations", + "httpMethod": "GET", + "id": "compute.zoneOperations.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: ``` labels.owner:* ``` You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ``` If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq \"double quoted literal\"` `(fieldname1 eq literal) (fieldname2 ne \"literal\")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name \"instance\", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code.", + "location": "query", + "type": "boolean" + }, + "zone": { + "description": "Name of the zone for request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "wait": { + "description": "Waits for the specified Operation resource to return as `DONE` or for the request to approach the 2 minute deadline, and retrieves the specified Operation resource. This method waits for no more than the 2 minutes and then returns the current state of the operation, which might be `DONE` or still in progress. This method is called on a best-effort basis. Specifically: - In uncommon cases, when the server is overloaded, the request might return before the default deadline is reached, or might return after zero seconds. - If the default deadline is reached, there is no guarantee that the operation is actually done when the method returns. Be prepared to retry if the operation is not `DONE`. ", + "flatPath": "projects/{project}/zones/{zone}/operations/{operation}/wait", + "httpMethod": "POST", + "id": "compute.zoneOperations.wait", "parameterOrder": [ "project", "zone", @@ -46468,7 +47129,7 @@ } } }, - "revision": "20241001", + "revision": "20241008", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -47885,13 +48546,13 @@ "id": "AllocationResourceStatus", "properties": { "reservationBlockCount": { - "description": "Indicates number of blocks for accelerator optimized family (applicable beyond A3 only).", + "description": "The number of reservation blocks associated with this reservation.", "format": "int32", "type": "integer" }, "reservationMaintenance": { "$ref": "GroupMaintenanceInfo", - "description": "Maintenance information for the group of hosts on this reservation including running VMs and unused hosts. Applicable only to accelerator optimized VM families beyond A3 only. For both DENSE or STANDARD reservation, granular maintenance information can be retried at reservation block level." + "description": "Maintenance information for this reservation" }, "specificSkuAllocation": { "$ref": "AllocationResourceStatusSpecificSKUAllocation", @@ -48026,6 +48687,18 @@ }, "type": "object" }, + "AsyncReplicationStatus": { + "id": "AsyncReplicationStatus", + "properties": { + "diskPairReplicationState": { + "$ref": "DiskPairReplicationState" + }, + "lastReplicationDetails": { + "$ref": "ReplicationDetails" + } + }, + "type": "object" + }, "AttachedDisk": { "description": "An instance-attached disk resource.", "id": "AttachedDisk", @@ -52217,6 +52890,7 @@ "ACCELERATOR_OPTIMIZED", "ACCELERATOR_OPTIMIZED_A3", "ACCELERATOR_OPTIMIZED_A3_MEGA", + "ACCELERATOR_OPTIMIZED_A3_ULTRA", "COMPUTE_OPTIMIZED", "COMPUTE_OPTIMIZED_C2D", "COMPUTE_OPTIMIZED_C3", @@ -52263,6 +52937,7 @@ "", "", "", + "", "" ], "type": "string" @@ -52969,6 +53644,206 @@ }, "type": "object" }, + "CrossSiteNetwork": { + "description": "A resource that represents a cross-site network. You can use cross-site networks to connect your on-premises networks to each other through Interconnect connections.", + "id": "CrossSiteNetwork", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of the cross-site network.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource type. The server generates this identifier.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#crossSiteNetwork", + "description": "[Output Only] Type of the resource. Always compute#crossSiteNetwork for cross-site networks.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "selfLinkWithId": { + "description": "[Output Only] Server-defined URL for this resource with the resource id.", + "type": "string" + } + }, + "type": "object" + }, + "CrossSiteNetworkList": { + "description": "Response to the list request that contains a list of cross-site networks.", + "id": "CrossSiteNetworkList", + "properties": { + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of CrossSiteNetwork resources.", + "items": { + "$ref": "CrossSiteNetwork" + }, + "type": "array" + }, + "kind": { + "default": "compute#crossSiteNetwork", + "description": "[Output Only] Type of the resource. Always compute#crossSiteNetwork for cross-site networks.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "description": "[Output Only] Unreachable resources. end_interface: MixerListResponseWithEtagBuilder", + "items": { + "type": "string" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is not of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed which captures the amount of resources filtered out by user-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an ipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, "CustomErrorResponsePolicy": { "description": "Specifies the custom error response policy that must be applied when the backend service or backend bucket responds with an error.", "id": "CustomErrorResponsePolicy", @@ -53822,6 +54697,39 @@ }, "type": "object" }, + "DiskPairReplicationState": { + "id": "DiskPairReplicationState", + "properties": { + "dataReplicationState": { + "description": "[Output Only] The status of disk creation. - ASYNC_REPLICATION_STATE_INITIALIZING: The device is doing the initial replication after starting the replication. - ASYNC_REPLICATION_STATE_REPLICATING_HEALTHY: The primary disk is healthily replicating to the secondary device i.e. last_replication_time is within RPO. - ASYNC_REPLICATION_STATE_REPLICATING_BEHIND: The replication is lagging above the SLO limit due to some internal issue. - ASYNC_REPLICATION_STATE_REPLICATING_UNHEALTHY: The replication is lagging, and the RPO is not being met due to some internal issue. . - ASYNC_REPLICATION_STATE_REPLICATION_STUCK: The replication is completely stuck due to some internal error. - ASYNC_REPLICATION_STATE_STOPPING: The replication is under the process of being stopped. This is a transient state. - ASYNC_REPLICATION_STATE_STOPPED: The replication between the disk-pairs have stopped. ", + "enum": [ + "ASYNC_REPLICATION_STATE_INITIALIZING", + "ASYNC_REPLICATION_STATE_REPLICATING_BEHIND", + "ASYNC_REPLICATION_STATE_REPLICATING_HEALTHY", + "ASYNC_REPLICATION_STATE_REPLICATING_UNHEALTHY", + "ASYNC_REPLICATION_STATE_REPLICATION_STUCK", + "ASYNC_REPLICATION_STATE_STOPPED", + "ASYNC_REPLICATION_STATE_STOPPING", + "ASYNC_REPLICATION_STATE_UNSPECIFIED" + ], + "enumDescriptions": [ + "The device is doing the initial replication after starting the replication.", + "The replication is lagging behind (last_replication_time > RPO), because the disk's change rate is above the supported limit.", + "The primary disk is healthily replicating to the secondary device i.e. last_replication_time is within RPO.", + "The replication is lagging, and the RPO is not being met due to some internal issue.", + "The replication is completely stuck due to some internal error.", + "The replication between the disk-pairs have stopped.", + "The replication is under the process of being stopped. This is a transient sate.", + "" + ], + "type": "string" + }, + "replicationDiskPair": { + "$ref": "ReplicationDiskPair" + } + }, + "type": "object" + }, "DiskParams": { "description": "Additional disk params.", "id": "DiskParams", @@ -56905,9 +57813,9 @@ "FLEXIBLE" ], "enumDescriptions": [ - "Number of deployment blocks, size, and topology is fixed during creation and does not change over time. Deployment will be expressed in terms of blocks.", - "Deployment type is unspecified.", - "Distribution of capacity in blocks is not static and can change over time. This is expected to have more obtainability over DENSE deployment. Deployment will not be expressed in terms of blocks." + "The reserved capacity is made up of densely deployed reservation blocks.", + "", + "The reserved capacity is made up of highly flexible, logical reservation blocks." ], "type": "string" }, @@ -56976,16 +57884,16 @@ "type": "string" }, "schedulingType": { - "description": "Indicates the maintenance type for this group of VMs. This will be set on the reservation via FR, and will be inherited for reservation blocks.", + "description": "Maintenance information for this reservation", "enum": [ "GROUPED", "GROUP_MAINTENANCE_TYPE_UNSPECIFIED", "INDEPENDENT" ], "enumDescriptions": [ - "Synchronized maintenance. Common maintenance schedule/window is defined for this group of VMs. Not applicable for FLEXIBLE reservation", + "Maintenance on all reserved instances in the reservation is synchronized.", "Unknown maintenance type.", - "Unsynchronized maintenance. These group of VMs do not share a common schedule for maintenance. Instead all VMs have individual windows of their own in which maintenance is scheduled." + "Maintenance is not synchronized for this reservation. Instead, each instance has its own maintenance window." ], "type": "string" }, @@ -57805,6 +58713,19 @@ }, "type": "object" }, + "GetAsyncReplicationStatusResponse": { + "id": "GetAsyncReplicationStatusResponse", + "properties": { + "asyncReplicationStatus": { + "$ref": "AsyncReplicationStatus" + }, + "etag": { + "description": "end_interface: MixerGetResponseWithEtagBuilder", + "type": "string" + } + }, + "type": "object" + }, "GetOwnerInstanceResponse": { "id": "GetOwnerInstanceResponse", "properties": { @@ -57922,7 +58843,7 @@ "id": "GroupMaintenanceInfo", "properties": { "enableOpportunisticMaintenance": { - "description": "Indicates if this group of VMs have opportunistic maintenance enabled. This will be set on the reservation, and will be inherited for reservation blocks.", + "description": "This setting enables or disables opportunistic maintenance. If enabled, maintenance is performed on unused reservations whenever possible.", "type": "boolean" }, "maintenanceOngoingCount": { @@ -57936,16 +58857,16 @@ "type": "integer" }, "schedulingType": { - "description": "Indicates the maintenance type for this group of VMs. This will be set on the reservation, and will be inherited for reservation blocks.", + "description": "The type of maintenance for the reservation.", "enum": [ "GROUPED", "GROUP_MAINTENANCE_TYPE_UNSPECIFIED", "INDEPENDENT" ], "enumDescriptions": [ - "Synchronized maintenance. Common maintenance schedule/window is defined for this group of VMs. Not applicable for FLEXIBLE reservation", + "Maintenance on all reserved instances in the reservation is synchronized.", "Unknown maintenance type.", - "Unsynchronized maintenance. These group of VMs do not share a common schedule for maintenance. Instead all VMs have individual windows of their own in which maintenance is scheduled." + "Maintenance is not synchronized for this reservation. Instead, each instance has its own maintenance window." ], "type": "string" }, @@ -65476,7 +66397,7 @@ "id": "InstancesGetEffectiveFirewallsResponse", "properties": { "firewallPolicys": { - "description": "Effective firewalls from firewall policies.", + "description": "[Output Only] Effective firewalls from firewall policies.", "items": { "$ref": "InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy" }, @@ -65517,7 +66438,7 @@ "type": "integer" }, "rules": { - "description": "The rules that apply to the network.", + "description": "[Output Only] The rules that apply to the instance. Only rules that target the specific VM instance are returned if target service accounts or target secure tags are specified in the rules.", "items": { "$ref": "FirewallPolicyRule" }, @@ -66603,7 +67524,7 @@ "id": "Interconnect", "properties": { "aaiEnabled": { - "description": "Enable or disable the Application Aware Interconnect(AAI) feature on this interconnect.", + "description": "Enable or disable the application awareness feature on this Cloud Interconnect.", "type": "boolean" }, "adminEnabled": { @@ -66612,7 +67533,7 @@ }, "applicationAwareInterconnect": { "$ref": "InterconnectApplicationAwareInterconnect", - "description": "Configuration for enabling Application Aware Interconnect (AAI) on this Cloud Interconnect connection between Google and your on-premises router." + "description": "Configuration information for application awareness on this Cloud Interconnect." }, "availableFeatures": { "description": "[Output only] List of features available for this Interconnect connection, which can take one of the following values: - IF_MACSEC If present then the Interconnect connection is provisioned on MACsec capable hardware ports. If not present then the Interconnect connection is provisioned on non-MACsec capable ports and MACsec isn't supported and enabling MACsec fails.", @@ -66820,14 +67741,14 @@ "type": "object" }, "InterconnectApplicationAwareInterconnect": { - "description": "Configuration information for enabling Application Aware Interconnect (AAI) on this Cloud Interconnect connection between Google and your on-premises router.", + "description": "Configuration information for application awareness on this Cloud Interconnect.", "id": "InterconnectApplicationAwareInterconnect", "properties": { "bandwidthPercentagePolicy": { "$ref": "InterconnectApplicationAwareInterconnectBandwidthPercentagePolicy" }, "profileDescription": { - "description": "A description for the AAI profile on this interconnect.", + "description": "Description for the application awareness profile on this Cloud Interconnect.", "type": "string" }, "shapeAveragePercentages": { @@ -72340,11 +73261,11 @@ "type": "object" }, "MultiMigResourcePolicies": { - "description": "Resource policies message for a multi-MIG. Represents low level machine cluster behavior in several dimensions, all of which depend on the machine family and fleet.", + "description": "Resource policies message for a multi-MIG. Specifies the workload policy configuration of the multi-MIG.", "id": "MultiMigResourcePolicies", "properties": { "workloadPolicy": { - "description": "The URL of the workload policy that is specified for this multi-MIG. It can be a full or partial URL. For example, the following are all valid URLs to a workload policy: - https://www.googleapis.com/compute/v1/projects/project/regions/region /resourcePolicies/resourcePolicy - projects/project/regions/region/resourcePolicies/resourcePolicy - regions/region/resourcePolicies/resourcePolicy ", + "description": "The URL of the workload policy for this multi-MIG. It can be a full or partial URL. For example, the following are all valid URLs to a workload policy: - https://www.googleapis.com/compute/v1/projects/project/regions/region /resourcePolicies/resourcePolicy - projects/project/regions/region/resourcePolicies/resourcePolicy - regions/region/resourcePolicies/resourcePolicy ", "type": "string" } }, @@ -72392,7 +73313,7 @@ "type": "string" }, "items": { - "description": "A list of multi-MIG resources.", + "description": "A list of multi-MIGs in the specified project and region.", "items": { "$ref": "MultiMig" }, @@ -75741,7 +76662,7 @@ "id": "NetworksGetEffectiveFirewallsResponse", "properties": { "firewallPolicys": { - "description": "Effective firewalls from firewall policy.", + "description": "[Output Only] Effective firewalls from firewall policy. It returns Global Network Firewall Policies and Hierarchical Firewall Policies. Use regionNetworkFirewallPolicies.getEffectiveFirewalls to get Regional Network Firewall Policies as well.", "items": { "$ref": "NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy" }, @@ -75782,7 +76703,7 @@ "type": "integer" }, "rules": { - "description": "The rules that apply to the network.", + "description": "[Output Only] The rules that apply to the network.", "items": { "$ref": "FirewallPolicyRule" }, @@ -84486,7 +85407,7 @@ "id": "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse", "properties": { "firewallPolicys": { - "description": "Effective firewalls from firewall policy.", + "description": "[Output only] Effective firewalls from firewall policy. It applies to Regional Network Firewall Policies in the specified region, Global Network Firewall Policies and Hierachial Firewall Policies which are associated with the network.", "items": { "$ref": "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy" }, @@ -84519,7 +85440,7 @@ "type": "integer" }, "rules": { - "description": "The rules that apply to the network.", + "description": "[Output only] The rules that apply to the network.", "items": { "$ref": "FirewallPolicyRule" }, @@ -84611,6 +85532,46 @@ }, "type": "object" }, + "RegionWaitForReplicationCatchUpRequest": { + "id": "RegionWaitForReplicationCatchUpRequest", + "properties": { + "maxWaitDuration": { + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, + "ReplicationDetails": { + "id": "ReplicationDetails", + "properties": { + "lastReplicationTime": { + "description": "The last sync time of the device pair.", + "format": "google-datetime", + "type": "string" + }, + "secondsSinceLastReplication": { + "description": "Replication lag in seconds. This will only be populated if device is in replicating state. Note that the value is calculated sometime during request processing and at the instant the client receives the response, the current replication_lag may have changed.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ReplicationDiskPair": { + "id": "ReplicationDiskPair", + "properties": { + "primaryDisk": { + "description": "URL of the primary disk.", + "type": "string" + }, + "secondaryDisk": { + "description": "URL of the secondary disk.", + "type": "string" + } + }, + "type": "object" + }, "RequestMirrorPolicy": { "description": "A policy that specifies how requests intended for the route's backends are shadowed to a separate mirrored backend service. The load balancer doesn't wait for responses from the shadow service. Before sending traffic to the shadow service, the host or authority header is suffixed with -shadow.", "id": "RequestMirrorPolicy", @@ -84659,9 +85620,9 @@ "FLEXIBLE" ], "enumDescriptions": [ - "Number of deployment blocks, size, and topology is fixed during creation and does not change over time. Deployment will be expressed in terms of blocks.", - "Deployment type is unspecified.", - "Distribution of capacity in blocks is not static and can change over time. This is expected to have more obtainability over DENSE deployment. Deployment will not be expressed in terms of blocks." + "The reserved capacity is made up of densely deployed reservation blocks.", + "", + "The reserved capacity is made up of highly flexible, logical reservation blocks." ], "type": "string" }, @@ -84675,7 +85636,7 @@ "type": "string" }, "instanceTerminationAction": { - "description": "Instance termination action that will be invoked when the reservation is deleted.", + "description": "Instance termination action is invoked when the reservation is deleted. This only applies to reservations with a Deployment type.", "enum": [ "DELETE", "INSTANCE_TERMINATION_ACTION_UNSPECIFIED", @@ -84743,7 +85704,7 @@ "type": "boolean" }, "status": { - "description": "[Output Only] The status of the reservation.", + "description": "[Output Only] The status of the reservation. - CREATING: Reservation resources are being allocated. - READY: Reservation resources have been allocated, and the reservation is ready for use. - DELETING: Reservation deletion is in progress. - UPDATING: Reservation update is in progress. ", "enum": [ "CREATING", "DELETING", @@ -84752,11 +85713,11 @@ "UPDATING" ], "enumDescriptions": [ - "Resources are being allocated for the reservation.", - "Reservation is currently being deleted.", + "Reservation resources are being allocated.", + "Reservation deletion is in progress.", "", - "Reservation has allocated all its resources.", - "Reservation is currently being resized." + "Reservation resources have been allocated, and the reservation is ready for use.", + "Reservation update is in progress." ], "type": "string" }, @@ -84970,7 +85931,7 @@ "id": "ReservationBlock", "properties": { "count": { - "description": "[Output Only] Specifies the number of resources that are allocated in this block. It indicates the maximum number of VMs that a user can run on this particular block.", + "description": "[Output Only] The number of resources that are allocated in this reservation block.", "format": "int32", "type": "integer" }, @@ -84984,7 +85945,7 @@ "type": "string" }, "inUseCount": { - "description": "[Output Only] Indicates how many instances are in use on this block.", + "description": "[Output Only] The number of instances that are currently in use on this reservation block.", "format": "int32", "type": "integer" }, @@ -84994,6 +85955,7 @@ "type": "string" }, "locationPrefix": { + "deprecated": true, "description": "[Output Only] Obfuscated location where this reservation block physically resides in format /CCCC/GGGG. This matches the tripod specified in the VM topology information. Example: /USEAB1/0101/ is the location prefix in /USEAB1/0101/031/003", "type": "string" }, @@ -85001,9 +85963,13 @@ "description": "[Output Only] The name of this reservation block generated by Google Compute Engine. The name must be 1-63 characters long, and comply with RFC1035 @pattern [a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "physicalHostTopology": { + "$ref": "ReservationBlockPhysicalTopology", + "description": "[Output Only] The physical topology of the reservation block." + }, "reservationMaintenance": { "$ref": "GroupMaintenanceInfo", - "description": "[Output Only] Maintenance information for the group of hosts on this reservation including running VMs and unused hosts. Applicable only to accelerator optimized VM families beyond A3 only. For both DENSE or STANDARD reservation, granular maintenance information can be retried at reservation block level." + "description": "[Output Only] Maintenance information for this reservation block." }, "selfLink": { "description": "[Output Only] Server-defined fully-qualified URL for this resource.", @@ -85036,6 +86002,20 @@ }, "type": "object" }, + "ReservationBlockPhysicalTopology": { + "id": "ReservationBlockPhysicalTopology", + "properties": { + "block": { + "description": "The hash of the capacity block within the cluster.", + "type": "string" + }, + "cluster": { + "description": "The cluster name of the reservation block.", + "type": "string" + } + }, + "type": "object" + }, "ReservationBlocksGetResponse": { "id": "ReservationBlocksGetResponse", "properties": { @@ -103936,6 +104916,16 @@ }, "type": "object" }, + "WaitForReplicationCatchUpRequest": { + "id": "WaitForReplicationCatchUpRequest", + "properties": { + "maxWaitDuration": { + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, "WeightedBackendService": { "description": "In contrast to a single BackendService in HttpRouteAction to which all matching traffic is directed to, WeightedBackendService allows traffic to be split across multiple backend services. The volume of traffic for each backend service is proportional to the weight specified in each WeightedBackendService", "id": "WeightedBackendService", @@ -103956,6 +104946,425 @@ }, "type": "object" }, + "Wire": { + "description": "A pseudowire that connects two Interconnect connections.", + "id": "Wire", + "properties": { + "adminEnabled": { + "description": "[Output Only] Indicates whether the wire is enabled. When false, the wire is disabled. When true and when the wire group of the wire is also enabled, the wire is enabled. Defaults to true.", + "type": "boolean" + }, + "endpoints": { + "description": "Wire endpoints are specific Interconnect connections.", + "items": { + "$ref": "WireEndpoint" + }, + "type": "array" + }, + "label": { + "description": "[Output Only] A label that identifies the wire. The format of this label combines the existing labels of the wire group endpoints and Interconnect connections used by this wire in alphabetical order as follows: `ENDPOINT_A+CONNECTION_A1,ENDPOINT_B+CONNECTION_B1`, where: - ENDPOINT_A and ENDPOINT_B: are the labels that you entered as map keys when you specified the wire group endpoint objects. - CONNECTION_A1 and CONNECTION_B1: are the labels that you entered as map keys when you specified the wire group Interconnect objects. ", + "type": "string" + }, + "wireProperties": { + "$ref": "WireProperties", + "description": "[Output Only] Properties of the wire." + } + }, + "type": "object" + }, + "WireEndpoint": { + "description": "Wire endpoints are specific Interconnect connections.", + "id": "WireEndpoint", + "properties": { + "interconnect": { + "type": "string" + }, + "vlanTag": { + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "WireGroup": { + "description": "A resource that represents a group of redundant wires.", + "id": "WireGroup", + "properties": { + "adminEnabled": { + "description": "Indicates whether the wires in the wire group are enabled. When false, the wires in the wire group are disabled. When true and when there is simultaneously no wire-specific override of `adminEnabled` to false, a given wire is enabled. Defaults to true.", + "type": "boolean" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of the wire group.", + "type": "string" + }, + "endpoints": { + "additionalProperties": { + "$ref": "WireGroupEndpoint" + }, + "description": "A map that contains the logical endpoints of the wire group. Specify key-value pairs for the map as follows: - Key: an RFC1035 user-specified label. - Value: an Endpoint object. ", + "type": "object" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource type. The server generates this identifier.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#wireGroup", + "description": "[Output Only] Type of the resource. Always compute#wireGroups for wire groups.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "selfLinkWithId": { + "type": "string" + }, + "serviceLevel": { + "$ref": "WireGroupServiceLevel", + "description": "Service level details determined for the wire group configuration." + }, + "wireGroupProperties": { + "$ref": "WireGroupProperties", + "description": "Properties of the wire group." + }, + "wireInputs": { + "additionalProperties": { + "$ref": "WireGroupWireInputs" + }, + "description": "A map that contains optional settings for individual wires. Specify key-value pairs for the map as follows: - Key: the label of an existing wire. To view a wire label and its format, see the wires[].label field. - Value: a WireInputs object. ", + "type": "object" + }, + "wireProperties": { + "$ref": "WireProperties", + "description": "Properties for all wires in the wire group." + }, + "wires": { + "description": "The single/redundant wire(s) managed by the wire group.", + "items": { + "$ref": "Wire" + }, + "type": "array" + } + }, + "type": "object" + }, + "WireGroupEndpoint": { + "description": "A logical endpoint for the wire group. An endpoint represents a metro that contains redundant Interconnect connections. A wire group is created between two endpoints.", + "id": "WireGroupEndpoint", + "properties": { + "interconnects": { + "additionalProperties": { + "$ref": "WireGroupEndpointInterconnect" + }, + "description": "A map that contains the redundant Interconnect connections. Specify key-value pairs for the map as follows: - Key: an RFC1035 user-specified label. - Value: an Interconnect object. ", + "type": "object" + } + }, + "type": "object" + }, + "WireGroupEndpointInterconnect": { + "description": "The redundant Interconnect connections for this endpoint.", + "id": "WireGroupEndpointInterconnect", + "properties": { + "interconnect": { + "description": "An Interconnect connection. You can specify the connection as a partial or full URL. If the connection is in a different project from the cross-site network, use a format that specifies the project. See the following examples of partial and full URLs: global/interconnects/NAME projects/PROJECT_ID/global/interconnects/NAME - https://compute.googleapis.com/compute/projects/PROJECT_ID /global/interconnects/NAME ", + "type": "string" + }, + "vlanTags": { + "description": "To configure the wire group for VLAN mode, enter a VLAN tag, which is a number from `2` to `4093`. You can autoallocate a tag by entering `0`. To configure the wire group for port mode, enter `-1`. Review the following guidelines: - A VLAN tag must be unique for an Interconnect connection across all attachments and wire groups. - Both endpoints of a wire must use the same VLAN tag value. - Single wire and redundant type wire groups must have only one VLAN tag. - Box and cross type wire groups must have two VLAN tags. The first is for the same-zone pseudowire, and the second is for the cross-zone pseudowire. - Port mode pseudowires must configure a value of `-1` for both endpoints. ", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, + "WireGroupList": { + "description": "Response for the list request.", + "id": "WireGroupList", + "properties": { + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of wire group resources.", + "items": { + "$ref": "WireGroup" + }, + "type": "array" + }, + "kind": { + "default": "compute#wireGroup", + "description": "[Output Only] Type of the resource. Always compute#wireGroups for wire groups.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "description": "[Output Only] Unreachable resources. end_interface: MixerListResponseWithEtagBuilder", + "items": { + "type": "string" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is not of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed which captures the amount of resources filtered out by user-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an ipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "WireGroupProperties": { + "description": "The properties of a wire group. These properties determine how a group of redundant wires are created and managed.", + "id": "WireGroupProperties", + "properties": { + "type": { + "description": "The type of the wire group, one of the following: - WIRE: a single pseudowire over two Interconnect connections with no redundancy. - REDUNDANT: two pseudowires over four Interconnect connections, with two connections in one metro and two connections in another metro. Each redundant pair of Interconnect connections spans both edge availability domains of the metro. Each pseudowire connects Interconnect connections in matching edge availability domains of the two metros. - BOX_AND_CROSS: four pseudowires over four Interconnect connections, with two connections in one metro and two connections in another metro. Each redundant pair of Interconnect connections spans both edge availability domains of the metro. Two pseudowires connect Interconnect connections in matching edge availability domains of the two metros. Two additional pseudowires connect the non-matching edge availability domains of the two metros. ", + "enum": [ + "BOX_AND_CROSS", + "REDUNDANT", + "WIRE" + ], + "enumDescriptions": [ + "Four pseudowires over four Interconnect connections, with two connections in one metro and two connections in another metro. Each redundant pair of Interconnect connections spans both edge availability domains of the metro. Two pseudowires connect Interconnect connections in matching edge availability domains of the two metros. Two additional pseudowires connect the non-matching edge availability domains of the two metros.", + "Two pseudowires over four Interconnect connections, with two connections in one metro and two connections in another metro. Each redundant pair of Interconnect connections spans both edge availability domains of the metro. Each pseudowire connects Interconnect connections in matching edge availability domains of the two metros.", + "A single pseudowire over two Interconnect connections with no redundancy." + ], + "type": "string" + } + }, + "type": "object" + }, + "WireGroupServiceLevel": { + "description": "Service level details determined for the wire group configuration.", + "id": "WireGroupServiceLevel", + "properties": { + "availabilityClass": { + "description": "[Output Only] The availability SLA that the wire group qualifies for. One of the following: `NO_AVAILABILITY_SLA`, `AVAILABILITY_99`, or `AVAILABILITY_999`.", + "enum": [ + "AVAILABILITY_99", + "AVAILABILITY_999", + "NO_AVAILABILITY_SLA" + ], + "enumDescriptions": [ + "99% availability", + "99.9% availability", + "No SLA" + ], + "type": "string" + } + }, + "type": "object" + }, + "WireGroupWireInputs": { + "description": "Optional settings for individual wires. Allows wire-level control that can be useful for migration purposes. If you use this field, you opt-out of the SLA for the wire group.", + "id": "WireGroupWireInputs", + "properties": { + "adminEnabled": { + "description": "Indicates whether the wire is enabled. When false, the wire is disabled. When true and when the wire group of the wire is also enabled, the wire is enabled. Defaults to true.", + "type": "boolean" + }, + "wirePropertyOverrides": { + "$ref": "WireProperties", + "description": "The overridden properties for the wire. Any properties that are not overridden are omitted from the object. Review the following guidelines: - If you apply wire overrides to a wire and its wire group bandwidth configuration is set to `SHARED_WITH_WIRE_GROUP`, the `meteredBandwidth` and `unmeteredBandwidth` properties must not differ from the wire group. - Overrides generate a `configurationNotice`. Ensure that differences in wire configuration are temporary. An example use case for wire overrides is slowly rolling out configuration changes to individual wires in a wire group. " + } + }, + "type": "object" + }, + "WireProperties": { + "description": "The properties of a wire.", + "id": "WireProperties", + "properties": { + "bandwidthAllocation": { + "description": "The configuration of the bandwidth allocation, one of the following: - ALLOCATE_PER_WIRE: configures a separate unmetered bandwidth allocation (and associated charges) for each wire in the group. - SHARED_WITH_WIRE_GROUP: configures one unmetered bandwidth allocation for the wire group. The unmetered bandwidth is divided equally across each wire in the group, but dynamic throttling reallocates unused unmetered bandwidth from unused or underused wires to other wires in the group. For example, with a four-wire box-and-cross group, when one Interconnect connection is down, the unmetered bandwidth of the two down wires is reallocated to the remaining up wires. ", + "enum": [ + "ALLOCATE_PER_WIRE", + "SHARED_WITH_WIRE_GROUP" + ], + "enumDescriptions": [ + "Configures a separate unmetered bandwidth allocation (and associated charges) for each wire in the group.", + "Configures one unmetered bandwidth allocation for the wire group. The unmetered bandwidth is divided equally across each wire in the group, but dynamic throttling reallocates unused unmetered bandwidth from unused or underused wires to other wires in the group. For example, with a four-wire box-and-cross group, when one Interconnect connection is down, the unmetered bandwidth of the two down wires is reallocated to the remaining up wires." + ], + "type": "string" + }, + "bandwidthMetered": { + "description": "The metered bandwidth in Gigabits per second, using decimal units. `10` is 10 Gbps, `100` is 100 Gbps. The default value is `0`. You can specify unlimited bandwidth by entering `-1`. However, actual data transfer is limited by the port speed.", + "format": "int64", + "type": "string" + }, + "bandwidthUnmetered": { + "description": "The unmetered bandwidth in Gigabits per second, using decimal units. `10` is 10 Gbps, `100` is 100 Gbps. Must be a multiple of 10.", + "format": "int64", + "type": "string" + }, + "faultResponse": { + "description": "Response when a fault is detected in a pseudowire: - NONE: default. - DISABLE_PORT: set the port line protocol down when inline probes detect a fault. This setting is only permitted on port mode pseudowires. ", + "enum": [ + "DISABLE_PORT", + "NONE" + ], + "enumDescriptions": [ + "Set the port line protocol down when inline probes detect a fault. This setting is only permitted on port mode pseudowires.", + "Default." + ], + "type": "string" + }, + "networkServiceClass": { + "description": "The network service class.", + "enum": [ + "BRONZE", + "GOLD" + ], + "enumDescriptions": [ + "The default service class.", + "A higher service class." + ], + "type": "string" + } + }, + "type": "object" + }, "XpnHostList": { "id": "XpnHostList", "properties": { diff --git a/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.cs b/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.cs index 97fb0ad9696..f5d547bc8cc 100644 --- a/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.cs +++ b/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.cs @@ -39,6 +39,7 @@ public ComputeService(Google.Apis.Services.BaseClientService.Initializer initial Autoscalers = new AutoscalersResource(this); BackendBuckets = new BackendBucketsResource(this); BackendServices = new BackendServicesResource(this); + CrossSiteNetworks = new CrossSiteNetworksResource(this); DiskSettings = new DiskSettingsResource(this); DiskTypes = new DiskTypesResource(this); Disks = new DisksResource(this); @@ -146,6 +147,7 @@ public ComputeService(Google.Apis.Services.BaseClientService.Initializer initial UrlMaps = new UrlMapsResource(this); VpnGateways = new VpnGatewaysResource(this); VpnTunnels = new VpnTunnelsResource(this); + WireGroups = new WireGroupsResource(this); ZoneOperations = new ZoneOperationsResource(this); ZoneQueuedResources = new ZoneQueuedResourcesResource(this); Zones = new ZonesResource(this); @@ -240,6 +242,9 @@ public static class ScopeConstants /// Gets the BackendServices resource. public virtual BackendServicesResource BackendServices { get; } + /// Gets the CrossSiteNetworks resource. + public virtual CrossSiteNetworksResource CrossSiteNetworks { get; } + /// Gets the DiskSettings resource. public virtual DiskSettingsResource DiskSettings { get; } @@ -561,6 +566,9 @@ public static class ScopeConstants /// Gets the VpnTunnels resource. public virtual VpnTunnelsResource VpnTunnels { get; } + /// Gets the WireGroups resource. + public virtual WireGroupsResource WireGroups { get; } + /// Gets the ZoneOperations resource. public virtual ZoneOperationsResource ZoneOperations { get; } @@ -5880,36 +5888,115 @@ protected override void InitParameters() } } - /// The "diskSettings" collection of methods. - public class DiskSettingsResource + /// The "crossSiteNetworks" collection of methods. + public class CrossSiteNetworksResource { - private const string Resource = "diskSettings"; + private const string Resource = "crossSiteNetworks"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. - public DiskSettingsResource(Google.Apis.Services.IClientService service) + public CrossSiteNetworksResource(Google.Apis.Services.IClientService service) { this.service = service; } - /// Get Zonal Disk Settings. + /// Deletes the specified cross-site network in the given scope. /// Project ID for this request. - /// Name of the zone for this request. - public virtual GetRequest Get(string project, string zone) + /// Name of the cross-site network to delete. + public virtual DeleteRequest Delete(string project, string crossSiteNetwork) { - return new GetRequest(this.service, project, zone); + return new DeleteRequest(this.service, project, crossSiteNetwork); } - /// Get Zonal Disk Settings. - public class GetRequest : ComputeBaseServiceRequest + /// Deletes the specified cross-site network in the given scope. + public class DeleteRequest : ComputeBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string project, string crossSiteNetwork) : base(service) + { + Project = project; + CrossSiteNetwork = crossSiteNetwork; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// Name of the cross-site network to delete. + [Google.Apis.Util.RequestParameterAttribute("crossSiteNetwork", Google.Apis.Util.RequestParameterType.Path)] + public virtual string CrossSiteNetwork { get; private set; } + + /// + /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your + /// request, the server will know to ignore the request if it has already been completed. For example, + /// consider a situation where you make an initial request and the request times out. If you make the + /// request again with the same request ID, the server can check if original operation with the same request + /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally + /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is + /// not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + /// + [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestId { get; set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("crossSiteNetwork", new Google.Apis.Discovery.Parameter + { + Name = "crossSiteNetwork", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + }); + RequestParameters.Add("requestId", new Google.Apis.Discovery.Parameter + { + Name = "requestId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Returns the specified cross-site network in the given scope. + /// Project ID for this request. + /// Name of the cross-site network to return. + public virtual GetRequest Get(string project, string crossSiteNetwork) + { + return new GetRequest(this.service, project, crossSiteNetwork); + } + + /// Returns the specified cross-site network in the given scope. + public class GetRequest : ComputeBaseServiceRequest { /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string project, string zone) : base(service) + public GetRequest(Google.Apis.Services.IClientService service, string project, string crossSiteNetwork) : base(service) { Project = project; - Zone = zone; + CrossSiteNetwork = crossSiteNetwork; InitParameters(); } @@ -5917,9 +6004,9 @@ public GetRequest(Google.Apis.Services.IClientService service, string project, s [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] public virtual string Project { get; private set; } - /// Name of the zone for this request. - [Google.Apis.Util.RequestParameterAttribute("zone", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Zone { get; private set; } + /// Name of the cross-site network to return. + [Google.Apis.Util.RequestParameterAttribute("crossSiteNetwork", Google.Apis.Util.RequestParameterType.Path)] + public virtual string CrossSiteNetwork { get; private set; } /// Gets the method name. public override string MethodName => "get"; @@ -5928,7 +6015,7 @@ public GetRequest(Google.Apis.Services.IClientService service, string project, s public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "projects/{project}/zones/{zone}/diskSettings"; + public override string RestPath => "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}"; /// Initializes Get parameter list. protected override void InitParameters() @@ -5942,34 +6029,38 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", }); - RequestParameters.Add("zone", new Google.Apis.Discovery.Parameter + RequestParameters.Add("crossSiteNetwork", new Google.Apis.Discovery.Parameter { - Name = "zone", + Name = "crossSiteNetwork", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", }); } } - /// Patch Zonal Disk Settings + /// + /// Creates a cross-site network in the specified project in the given scope using the parameters that are + /// included in the request. + /// /// The body of the request. /// Project ID for this request. - /// The name of the zone for this request. - public virtual PatchRequest Patch(Google.Apis.Compute.alpha.Data.DiskSettings body, string project, string zone) + public virtual InsertRequest Insert(Google.Apis.Compute.alpha.Data.CrossSiteNetwork body, string project) { - return new PatchRequest(this.service, body, project, zone); + return new InsertRequest(this.service, body, project); } - /// Patch Zonal Disk Settings - public class PatchRequest : ComputeBaseServiceRequest + /// + /// Creates a cross-site network in the specified project in the given scope using the parameters that are + /// included in the request. + /// + public class InsertRequest : ComputeBaseServiceRequest { - /// Constructs a new Patch request. - public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.DiskSettings body, string project, string zone) : base(service) + /// Constructs a new Insert request. + public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.CrossSiteNetwork body, string project) : base(service) { Project = project; - Zone = zone; Body = body; InitParameters(); } @@ -5978,10 +6069,6 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Com [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] public virtual string Project { get; private set; } - /// The name of the zone for this request. - [Google.Apis.Util.RequestParameterAttribute("zone", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Zone { get; private set; } - /// /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your /// request, the server will know to ignore the request if it has already been completed. For example, @@ -5989,31 +6076,34 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Com /// request again with the same request ID, the server can check if original operation with the same request /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is - /// not supported ( 00000000-0000-0000-0000-000000000000). + /// not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder /// [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestId { get; set; } - /// update_mask indicates fields to be updated as part of this request. - [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object UpdateMask { get; set; } + /// + /// [Input Only] Validate the new configuration, but don't create it. If applicable, any configuration + /// notices are returned in the `configurationNotices` field. + /// + [Google.Apis.Util.RequestParameterAttribute("validateOnly", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable ValidateOnly { get; set; } /// Gets or sets the body of this request. - Google.Apis.Compute.alpha.Data.DiskSettings Body { get; set; } + Google.Apis.Compute.alpha.Data.CrossSiteNetwork Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "patch"; + public override string MethodName => "insert"; /// Gets the HTTP method. - public override string HttpMethod => "PATCH"; + public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "projects/{project}/zones/{zone}/diskSettings"; + public override string RestPath => "projects/{project}/global/crossSiteNetworks"; - /// Initializes Patch parameter list. + /// Initializes Insert parameter list. protected override void InitParameters() { base.InitParameters(); @@ -6025,14 +6115,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", }); - RequestParameters.Add("zone", new Google.Apis.Discovery.Parameter - { - Name = "zone", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - }); RequestParameters.Add("requestId", new Google.Apis.Discovery.Parameter { Name = "requestId", @@ -6041,9 +6123,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + RequestParameters.Add("validateOnly", new Google.Apis.Discovery.Parameter { - Name = "updateMask", + Name = "validateOnly", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -6051,40 +6133,19 @@ protected override void InitParameters() }); } } - } - /// The "diskTypes" collection of methods. - public class DiskTypesResource - { - private const string Resource = "diskTypes"; - - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; - - /// Constructs a new resource. - public DiskTypesResource(Google.Apis.Services.IClientService service) - { - this.service = service; - } - - /// - /// Retrieves an aggregated list of disk types. To prevent failure, Google recommends that you set the - /// `returnPartialSuccess` parameter to `true`. - /// + /// Lists the cross-site networks for a project in the given scope. /// Project ID for this request. - public virtual AggregatedListRequest AggregatedList(string project) + public virtual ListRequest List(string project) { - return new AggregatedListRequest(this.service, project); + return new ListRequest(this.service, project); } - /// - /// Retrieves an aggregated list of disk types. To prevent failure, Google recommends that you set the - /// `returnPartialSuccess` parameter to `true`. - /// - public class AggregatedListRequest : ComputeBaseServiceRequest + /// Lists the cross-site networks for a project in the given scope. + public class ListRequest : ComputeBaseServiceRequest { - /// Constructs a new AggregatedList request. - public AggregatedListRequest(Google.Apis.Services.IClientService service, string project) : base(service) + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string project) : base(service) { Project = project; InitParameters(); @@ -6133,16 +6194,6 @@ public AggregatedListRequest(Google.Apis.Services.IClientService service, string [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } - /// - /// Indicates whether every visible scope for each scope type (zone, region, global) should be included in - /// the response. For new resource types added after this field, the flag has no effect as new resource - /// types will always include every visible scope for each scope type in response. For resource types which - /// predate this field, if this flag is omitted or false, only scopes of the scope types where the resource - /// type is expected to be found will be included. - /// - [Google.Apis.Util.RequestParameterAttribute("includeAllScopes", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable IncludeAllScopes { get; set; } - /// /// The maximum number of results per page that should be returned. If the number of available results is /// larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page @@ -6176,23 +6227,16 @@ public AggregatedListRequest(Google.Apis.Services.IClientService service, string [Google.Apis.Util.RequestParameterAttribute("returnPartialSuccess", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable ReturnPartialSuccess { get; set; } - /// - /// The Shared VPC service project id or service project number for which aggregated list request is invoked - /// for subnetworks list-usable api. - /// - [Google.Apis.Util.RequestParameterAttribute("serviceProjectNumber", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable ServiceProjectNumber { get; set; } - /// Gets the method name. - public override string MethodName => "aggregatedList"; + public override string MethodName => "list"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "projects/{project}/aggregated/diskTypes"; + public override string RestPath => "projects/{project}/global/crossSiteNetworks"; - /// Initializes AggregatedList parameter list. + /// Initializes List parameter list. protected override void InitParameters() { base.InitParameters(); @@ -6212,14 +6256,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("includeAllScopes", new Google.Apis.Discovery.Parameter - { - Name = "includeAllScopes", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); RequestParameters.Add("maxResults", new Google.Apis.Discovery.Parameter { Name = "maxResults", @@ -6252,9 +6288,109 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add("serviceProjectNumber", new Google.Apis.Discovery.Parameter + } + } + + /// + /// Updates the specified cross-site network with the data included in the request. This method supports PATCH + /// semantics and uses the JSON merge patch format and processing rules. + /// + /// The body of the request. + /// Project ID for this request. + /// Name of the cross-site network to update. + public virtual PatchRequest Patch(Google.Apis.Compute.alpha.Data.CrossSiteNetwork body, string project, string crossSiteNetwork) + { + return new PatchRequest(this.service, body, project, crossSiteNetwork); + } + + /// + /// Updates the specified cross-site network with the data included in the request. This method supports PATCH + /// semantics and uses the JSON merge patch format and processing rules. + /// + public class PatchRequest : ComputeBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.CrossSiteNetwork body, string project, string crossSiteNetwork) : base(service) + { + Project = project; + CrossSiteNetwork = crossSiteNetwork; + Body = body; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// Name of the cross-site network to update. + [Google.Apis.Util.RequestParameterAttribute("crossSiteNetwork", Google.Apis.Util.RequestParameterType.Path)] + public virtual string CrossSiteNetwork { get; private set; } + + /// + /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your + /// request, the server will know to ignore the request if it has already been completed. For example, + /// consider a situation where you make an initial request and the request times out. If you make the + /// request again with the same request ID, the server can check if original operation with the same request + /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally + /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is + /// not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + /// + [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestId { get; set; } + + /// + /// [Input Only] Validate the new configuration, but don't update it. If applicable, any configuration + /// notices are returned in the `configurationNotices` field. + /// + [Google.Apis.Util.RequestParameterAttribute("validateOnly", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable ValidateOnly { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Compute.alpha.Data.CrossSiteNetwork Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter { - Name = "serviceProjectNumber", + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("crossSiteNetwork", new Google.Apis.Discovery.Parameter + { + Name = "crossSiteNetwork", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + }); + RequestParameters.Add("requestId", new Google.Apis.Discovery.Parameter + { + Name = "requestId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("validateOnly", new Google.Apis.Discovery.Parameter + { + Name = "validateOnly", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -6262,25 +6398,38 @@ protected override void InitParameters() }); } } + } - /// Returns the specified disk type. + /// The "diskSettings" collection of methods. + public class DiskSettingsResource + { + private const string Resource = "diskSettings"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public DiskSettingsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// Get Zonal Disk Settings. /// Project ID for this request. - /// The name of the zone for this request. - /// Name of the disk type to return. - public virtual GetRequest Get(string project, string zone, string diskType) + /// Name of the zone for this request. + public virtual GetRequest Get(string project, string zone) { - return new GetRequest(this.service, project, zone, diskType); + return new GetRequest(this.service, project, zone); } - /// Returns the specified disk type. - public class GetRequest : ComputeBaseServiceRequest + /// Get Zonal Disk Settings. + public class GetRequest : ComputeBaseServiceRequest { /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string project, string zone, string diskType) : base(service) + public GetRequest(Google.Apis.Services.IClientService service, string project, string zone) : base(service) { Project = project; Zone = zone; - DiskType = diskType; InitParameters(); } @@ -6288,14 +6437,10 @@ public GetRequest(Google.Apis.Services.IClientService service, string project, s [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] public virtual string Project { get; private set; } - /// The name of the zone for this request. + /// Name of the zone for this request. [Google.Apis.Util.RequestParameterAttribute("zone", Google.Apis.Util.RequestParameterType.Path)] public virtual string Zone { get; private set; } - /// Name of the disk type to return. - [Google.Apis.Util.RequestParameterAttribute("diskType", Google.Apis.Util.RequestParameterType.Path)] - public virtual string DiskType { get; private set; } - /// Gets the method name. public override string MethodName => "get"; @@ -6303,7 +6448,382 @@ public GetRequest(Google.Apis.Services.IClientService service, string project, s public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "projects/{project}/zones/{zone}/diskTypes/{diskType}"; + public override string RestPath => "projects/{project}/zones/{zone}/diskSettings"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("zone", new Google.Apis.Discovery.Parameter + { + Name = "zone", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + }); + } + } + + /// Patch Zonal Disk Settings + /// The body of the request. + /// Project ID for this request. + /// The name of the zone for this request. + public virtual PatchRequest Patch(Google.Apis.Compute.alpha.Data.DiskSettings body, string project, string zone) + { + return new PatchRequest(this.service, body, project, zone); + } + + /// Patch Zonal Disk Settings + public class PatchRequest : ComputeBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.DiskSettings body, string project, string zone) : base(service) + { + Project = project; + Zone = zone; + Body = body; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// The name of the zone for this request. + [Google.Apis.Util.RequestParameterAttribute("zone", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Zone { get; private set; } + + /// + /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your + /// request, the server will know to ignore the request if it has already been completed. For example, + /// consider a situation where you make an initial request and the request times out. If you make the + /// request again with the same request ID, the server can check if original operation with the same request + /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally + /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is + /// not supported ( 00000000-0000-0000-0000-000000000000). + /// + [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestId { get; set; } + + /// update_mask indicates fields to be updated as part of this request. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Compute.alpha.Data.DiskSettings Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/zones/{zone}/diskSettings"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("zone", new Google.Apis.Discovery.Parameter + { + Name = "zone", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + }); + RequestParameters.Add("requestId", new Google.Apis.Discovery.Parameter + { + Name = "requestId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// The "diskTypes" collection of methods. + public class DiskTypesResource + { + private const string Resource = "diskTypes"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public DiskTypesResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// + /// Retrieves an aggregated list of disk types. To prevent failure, Google recommends that you set the + /// `returnPartialSuccess` parameter to `true`. + /// + /// Project ID for this request. + public virtual AggregatedListRequest AggregatedList(string project) + { + return new AggregatedListRequest(this.service, project); + } + + /// + /// Retrieves an aggregated list of disk types. To prevent failure, Google recommends that you set the + /// `returnPartialSuccess` parameter to `true`. + /// + public class AggregatedListRequest : ComputeBaseServiceRequest + { + /// Constructs a new AggregatedList request. + public AggregatedListRequest(Google.Apis.Services.IClientService service, string project) : base(service) + { + Project = project; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// + /// A filter expression that filters resources listed in the response. Most Compute resources support two + /// types of filter expressions: expressions that support regular expressions and expressions that follow + /// API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. + /// If you want to use AIP-160, your expression must specify the field name, an operator, and the value that + /// you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be + /// either `=`, `!=`, `&gt;`, `&lt;`, `&lt;=`, `&gt;=` or `:`. For example, if you are + /// filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying + /// `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For + /// example, to find all objects with `owner` label use: + /// ``` + /// labels.owner:* + /// ``` + /// You can also filter nested + /// fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only + /// if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based + /// on resource labels. To filter on multiple expressions, provide each separate expression within + /// parentheses. For example: + /// ``` + /// (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") + /// ``` + /// By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions + /// explicitly. For example: + /// ``` + /// (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND + /// (scheduling.automaticRestart = true) + /// ``` + /// If you want to use a regular expression, use the `eq` (equal) + /// or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or + /// against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq + /// 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne + /// "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. + /// The literal value must match the entire field. For example, to filter for instances that do not end with + /// name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields + /// using regular expressions. + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + + /// + /// Indicates whether every visible scope for each scope type (zone, region, global) should be included in + /// the response. For new resource types added after this field, the flag has no effect as new resource + /// types will always include every visible scope for each scope type in response. For resource types which + /// predate this field, if this flag is omitted or false, only scopes of the scope types where the resource + /// type is expected to be found will be included. + /// + [Google.Apis.Util.RequestParameterAttribute("includeAllScopes", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable IncludeAllScopes { get; set; } + + /// + /// The maximum number of results per page that should be returned. If the number of available results is + /// larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page + /// of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + /// + [Google.Apis.Util.RequestParameterAttribute("maxResults", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable MaxResults { get; set; } + + /// + /// Sorts list results by a certain order. By default, results are returned in alphanumerical order based on + /// the resource name. You can also sort results in descending order based on the creation timestamp using + /// `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse + /// chronological order (newest result first). Use this to sort resources like operations so that the newest + /// operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + /// + [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OrderBy { get; set; } + + /// + /// Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list + /// request to get the next page of results. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// + /// Opt-in for partial success behavior which provides partial results in case of failure. The default value + /// is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope + /// either returns all resources in the zone or no resources, with an error code. + /// + [Google.Apis.Util.RequestParameterAttribute("returnPartialSuccess", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable ReturnPartialSuccess { get; set; } + + /// + /// The Shared VPC service project id or service project number for which aggregated list request is invoked + /// for subnetworks list-usable api. + /// + [Google.Apis.Util.RequestParameterAttribute("serviceProjectNumber", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable ServiceProjectNumber { get; set; } + + /// Gets the method name. + public override string MethodName => "aggregatedList"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/aggregated/diskTypes"; + + /// Initializes AggregatedList parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("includeAllScopes", new Google.Apis.Discovery.Parameter + { + Name = "includeAllScopes", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("maxResults", new Google.Apis.Discovery.Parameter + { + Name = "maxResults", + IsRequired = false, + ParameterType = "query", + DefaultValue = "500", + Pattern = null, + }); + RequestParameters.Add("orderBy", new Google.Apis.Discovery.Parameter + { + Name = "orderBy", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("returnPartialSuccess", new Google.Apis.Discovery.Parameter + { + Name = "returnPartialSuccess", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("serviceProjectNumber", new Google.Apis.Discovery.Parameter + { + Name = "serviceProjectNumber", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Returns the specified disk type. + /// Project ID for this request. + /// The name of the zone for this request. + /// Name of the disk type to return. + public virtual GetRequest Get(string project, string zone, string diskType) + { + return new GetRequest(this.service, project, zone, diskType); + } + + /// Returns the specified disk type. + public class GetRequest : ComputeBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string project, string zone, string diskType) : base(service) + { + Project = project; + Zone = zone; + DiskType = diskType; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// The name of the zone for this request. + [Google.Apis.Util.RequestParameterAttribute("zone", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Zone { get; private set; } + + /// Name of the disk type to return. + [Google.Apis.Util.RequestParameterAttribute("diskType", Google.Apis.Util.RequestParameterType.Path)] + public virtual string DiskType { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/zones/{zone}/diskTypes/{diskType}"; /// Initializes Get parameter list. protected override void InitParameters() @@ -7210,6 +7730,85 @@ protected override void InitParameters() } } + /// Gets the status of current async replication for a given device. + /// Project ID for this request. + /// The name of the zone for this request. + /// + /// Name of the Disk resource whose Async replication details are requested. Name should conform to RFC1035 or + /// be an unsigned long integer. + /// + public virtual GetAsyncReplicationStatusRequest GetAsyncReplicationStatus(string project, string zone, string disk) + { + return new GetAsyncReplicationStatusRequest(this.service, project, zone, disk); + } + + /// Gets the status of current async replication for a given device. + public class GetAsyncReplicationStatusRequest : ComputeBaseServiceRequest + { + /// Constructs a new GetAsyncReplicationStatus request. + public GetAsyncReplicationStatusRequest(Google.Apis.Services.IClientService service, string project, string zone, string disk) : base(service) + { + Project = project; + Zone = zone; + Disk = disk; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// The name of the zone for this request. + [Google.Apis.Util.RequestParameterAttribute("zone", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Zone { get; private set; } + + /// + /// Name of the Disk resource whose Async replication details are requested. Name should conform to RFC1035 + /// or be an unsigned long integer. + /// + [Google.Apis.Util.RequestParameterAttribute("disk", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Disk { get; private set; } + + /// Gets the method name. + public override string MethodName => "getAsyncReplicationStatus"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/zones/{zone}/disks/{disk}/getAsyncReplicationStatus"; + + /// Initializes GetAsyncReplicationStatus parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("zone", new Google.Apis.Discovery.Parameter + { + Name = "zone", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + }); + RequestParameters.Add("disk", new Google.Apis.Discovery.Parameter + { + Name = "disk", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + /// /// Gets the access control policy for a resource. May be empty if no such policy or resource exists. /// @@ -8474,6 +9073,111 @@ protected override void InitParameters() }); } } + + /// Wait for replication to catch up on the secondary disk. + /// The body of the request. + /// Project ID for this request. + /// The name of the zone for this request. + /// + /// The name of the persistent disk. Name should conform to RFC1035 or be an unsigned long integer. + /// + public virtual WaitForReplicationCatchUpRequest WaitForReplicationCatchUp(Google.Apis.Compute.alpha.Data.WaitForReplicationCatchUpRequest body, string project, string zone, string disk) + { + return new WaitForReplicationCatchUpRequest(this.service, body, project, zone, disk); + } + + /// Wait for replication to catch up on the secondary disk. + public class WaitForReplicationCatchUpRequest : ComputeBaseServiceRequest + { + /// Constructs a new WaitForReplicationCatchUp request. + public WaitForReplicationCatchUpRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.WaitForReplicationCatchUpRequest body, string project, string zone, string disk) : base(service) + { + Project = project; + Zone = zone; + Disk = disk; + Body = body; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// The name of the zone for this request. + [Google.Apis.Util.RequestParameterAttribute("zone", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Zone { get; private set; } + + /// + /// The name of the persistent disk. Name should conform to RFC1035 or be an unsigned long integer. + /// + [Google.Apis.Util.RequestParameterAttribute("disk", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Disk { get; private set; } + + /// + /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your + /// request, the server will know to ignore the request if it has already been completed. For example, + /// consider a situation where you make an initial request and the request times out. If you make the + /// request again with the same request ID, the server can check if original operation with the same request + /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally + /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is + /// not supported ( 00000000-0000-0000-0000-000000000000). + /// + [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestId { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Compute.alpha.Data.WaitForReplicationCatchUpRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "waitForReplicationCatchUp"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/zones/{zone}/disks/{disk}/waitForReplicationCatchUp"; + + /// Initializes WaitForReplicationCatchUp parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("zone", new Google.Apis.Discovery.Parameter + { + Name = "zone", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + }); + RequestParameters.Add("disk", new Google.Apis.Discovery.Parameter + { + Name = "disk", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("requestId", new Google.Apis.Discovery.Parameter + { + Name = "requestId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } } /// The "externalVpnGateways" collection of methods. @@ -58707,6 +59411,85 @@ protected override void InitParameters() } } + /// Gets the status of current async replication for a given device. + /// Project ID for this request. + /// The name of the zone for this request. + /// + /// Name of the Disk resource whose Async replication details are requested. Name should conform to RFC1035 or + /// be an unsigned long integer. + /// + public virtual GetAsyncReplicationStatusRequest GetAsyncReplicationStatus(string project, string region, string disk) + { + return new GetAsyncReplicationStatusRequest(this.service, project, region, disk); + } + + /// Gets the status of current async replication for a given device. + public class GetAsyncReplicationStatusRequest : ComputeBaseServiceRequest + { + /// Constructs a new GetAsyncReplicationStatus request. + public GetAsyncReplicationStatusRequest(Google.Apis.Services.IClientService service, string project, string region, string disk) : base(service) + { + Project = project; + Region = region; + Disk = disk; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// The name of the zone for this request. + [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Region { get; private set; } + + /// + /// Name of the Disk resource whose Async replication details are requested. Name should conform to RFC1035 + /// or be an unsigned long integer. + /// + [Google.Apis.Util.RequestParameterAttribute("disk", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Disk { get; private set; } + + /// Gets the method name. + public override string MethodName => "getAsyncReplicationStatus"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/regions/{region}/disks/{disk}/getAsyncReplicationStatus"; + + /// Initializes GetAsyncReplicationStatus parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("region", new Google.Apis.Discovery.Parameter + { + Name = "region", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + }); + RequestParameters.Add("disk", new Google.Apis.Discovery.Parameter + { + Name = "disk", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + } + /// /// Gets the access control policy for a resource. May be empty if no such policy or resource exists. /// @@ -59961,6 +60744,111 @@ protected override void InitParameters() }); } } + + /// Wait for replication to catch up on the secondary disk. + /// The body of the request. + /// Project ID for this request. + /// Name of the region for this request. + /// + /// The name of the persistent disk. Name should conform to RFC1035 or be an unsigned long integer. + /// + public virtual WaitForReplicationCatchUpRequest WaitForReplicationCatchUp(Google.Apis.Compute.alpha.Data.RegionWaitForReplicationCatchUpRequest body, string project, string region, string disk) + { + return new WaitForReplicationCatchUpRequest(this.service, body, project, region, disk); + } + + /// Wait for replication to catch up on the secondary disk. + public class WaitForReplicationCatchUpRequest : ComputeBaseServiceRequest + { + /// Constructs a new WaitForReplicationCatchUp request. + public WaitForReplicationCatchUpRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.RegionWaitForReplicationCatchUpRequest body, string project, string region, string disk) : base(service) + { + Project = project; + Region = region; + Disk = disk; + Body = body; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// Name of the region for this request. + [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Region { get; private set; } + + /// + /// The name of the persistent disk. Name should conform to RFC1035 or be an unsigned long integer. + /// + [Google.Apis.Util.RequestParameterAttribute("disk", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Disk { get; private set; } + + /// + /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your + /// request, the server will know to ignore the request if it has already been completed. For example, + /// consider a situation where you make an initial request and the request times out. If you make the + /// request again with the same request ID, the server can check if original operation with the same request + /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally + /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is + /// not supported ( 00000000-0000-0000-0000-000000000000). + /// + [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestId { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Compute.alpha.Data.RegionWaitForReplicationCatchUpRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "waitForReplicationCatchUp"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/regions/{region}/disks/{disk}/waitForReplicationCatchUp"; + + /// Initializes WaitForReplicationCatchUp parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("region", new Google.Apis.Discovery.Parameter + { + Name = "region", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + }); + RequestParameters.Add("disk", new Google.Apis.Discovery.Parameter + { + Name = "disk", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("requestId", new Google.Apis.Discovery.Parameter + { + Name = "requestId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } } /// The "regionHealthCheckServices" collection of methods. @@ -68361,7 +69249,7 @@ protected override void InitParameters() } } - /// Returns the specified multi-MIG resource. + /// Returns all the details of a specific multi-MIG. /// Project ID for this request. /// Name of the region for this request. /// Name of the multi-MIG resource to return. @@ -68370,7 +69258,7 @@ public virtual GetRequest Get(string project, string region, string multiMig) return new GetRequest(this.service, project, region, multiMig); } - /// Returns the specified multi-MIG resource. + /// Returns all the details of a specific multi-MIG. public class GetRequest : ComputeBaseServiceRequest { /// Constructs a new Get request. @@ -68468,9 +69356,9 @@ public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Co /// request, the server will know to ignore the request if it has already been completed. For example, /// consider a situation where you make an initial request and the request times out. If you make the /// request again with the same request ID, the server can check if original operation with the same request - /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally - /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is - /// not supported ( 00000000-0000-0000-0000-000000000000). + /// ID was received, and if so, will ignore the second request. This prevents you from accidentally creating + /// duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not + /// supported ( 00000000-0000-0000-0000-000000000000). /// [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestId { get; set; } @@ -101052,7 +101940,1031 @@ public ListRequest(Google.Apis.Services.IClientService service, string project) public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "projects/{project}/global/urlMaps"; + public override string RestPath => "projects/{project}/global/urlMaps"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("maxResults", new Google.Apis.Discovery.Parameter + { + Name = "maxResults", + IsRequired = false, + ParameterType = "query", + DefaultValue = "500", + Pattern = null, + }); + RequestParameters.Add("orderBy", new Google.Apis.Discovery.Parameter + { + Name = "orderBy", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("returnPartialSuccess", new Google.Apis.Discovery.Parameter + { + Name = "returnPartialSuccess", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Patches the specified UrlMap resource with the data included in the request. This method supports PATCH + /// semantics and uses the JSON merge patch format and processing rules. + /// + /// The body of the request. + /// Project ID for this request. + /// Name of the UrlMap resource to patch. + public virtual PatchRequest Patch(Google.Apis.Compute.alpha.Data.UrlMap body, string project, string urlMap) + { + return new PatchRequest(this.service, body, project, urlMap); + } + + /// + /// Patches the specified UrlMap resource with the data included in the request. This method supports PATCH + /// semantics and uses the JSON merge patch format and processing rules. + /// + public class PatchRequest : ComputeBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.UrlMap body, string project, string urlMap) : base(service) + { + Project = project; + UrlMap = urlMap; + Body = body; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// Name of the UrlMap resource to patch. + [Google.Apis.Util.RequestParameterAttribute("urlMap", Google.Apis.Util.RequestParameterType.Path)] + public virtual string UrlMap { get; private set; } + + /// + /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your + /// request, the server will know to ignore the request if it has already been completed. For example, + /// consider a situation where you make an initial request and the request times out. If you make the + /// request again with the same request ID, the server can check if original operation with the same request + /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally + /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is + /// not supported ( 00000000-0000-0000-0000-000000000000). + /// + [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestId { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Compute.alpha.Data.UrlMap Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/global/urlMaps/{urlMap}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("urlMap", new Google.Apis.Discovery.Parameter + { + Name = "urlMap", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + }); + RequestParameters.Add("requestId", new Google.Apis.Discovery.Parameter + { + Name = "requestId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Returns permissions that a caller has on the specified resource. + /// The body of the request. + /// Project ID for this request. + /// Name or id of the resource for this request. + public virtual TestIamPermissionsRequest TestIamPermissions(Google.Apis.Compute.alpha.Data.TestPermissionsRequest body, string project, string resource) + { + return new TestIamPermissionsRequest(this.service, body, project, resource); + } + + /// Returns permissions that a caller has on the specified resource. + public class TestIamPermissionsRequest : ComputeBaseServiceRequest + { + /// Constructs a new TestIamPermissions request. + public TestIamPermissionsRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.TestPermissionsRequest body, string project, string resource) : base(service) + { + Project = project; + Resource = resource; + Body = body; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// Name or id of the resource for this request. + [Google.Apis.Util.RequestParameterAttribute("resource", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Resource { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Compute.alpha.Data.TestPermissionsRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "testIamPermissions"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/global/urlMaps/{resource}/testIamPermissions"; + + /// Initializes TestIamPermissions parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter + { + Name = "resource", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + }); + } + } + + /// Updates the specified UrlMap resource with the data included in the request. + /// The body of the request. + /// Project ID for this request. + /// Name of the UrlMap resource to update. + public virtual UpdateRequest Update(Google.Apis.Compute.alpha.Data.UrlMap body, string project, string urlMap) + { + return new UpdateRequest(this.service, body, project, urlMap); + } + + /// Updates the specified UrlMap resource with the data included in the request. + public class UpdateRequest : ComputeBaseServiceRequest + { + /// Constructs a new Update request. + public UpdateRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.UrlMap body, string project, string urlMap) : base(service) + { + Project = project; + UrlMap = urlMap; + Body = body; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// Name of the UrlMap resource to update. + [Google.Apis.Util.RequestParameterAttribute("urlMap", Google.Apis.Util.RequestParameterType.Path)] + public virtual string UrlMap { get; private set; } + + /// + /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your + /// request, the server will know to ignore the request if it has already been completed. For example, + /// consider a situation where you make an initial request and the request times out. If you make the + /// request again with the same request ID, the server can check if original operation with the same request + /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally + /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is + /// not supported ( 00000000-0000-0000-0000-000000000000). + /// + [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestId { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Compute.alpha.Data.UrlMap Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "update"; + + /// Gets the HTTP method. + public override string HttpMethod => "PUT"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/global/urlMaps/{urlMap}"; + + /// Initializes Update parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("urlMap", new Google.Apis.Discovery.Parameter + { + Name = "urlMap", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + }); + RequestParameters.Add("requestId", new Google.Apis.Discovery.Parameter + { + Name = "requestId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling + /// this method does NOT create the UrlMap. + /// + /// The body of the request. + /// Project ID for this request. + /// Name of the UrlMap resource to be validated as. + public virtual ValidateRequest Validate(Google.Apis.Compute.alpha.Data.UrlMapsValidateRequest body, string project, string urlMap) + { + return new ValidateRequest(this.service, body, project, urlMap); + } + + /// + /// Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling + /// this method does NOT create the UrlMap. + /// + public class ValidateRequest : ComputeBaseServiceRequest + { + /// Constructs a new Validate request. + public ValidateRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.UrlMapsValidateRequest body, string project, string urlMap) : base(service) + { + Project = project; + UrlMap = urlMap; + Body = body; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// Name of the UrlMap resource to be validated as. + [Google.Apis.Util.RequestParameterAttribute("urlMap", Google.Apis.Util.RequestParameterType.Path)] + public virtual string UrlMap { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Compute.alpha.Data.UrlMapsValidateRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "validate"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/global/urlMaps/{urlMap}/validate"; + + /// Initializes Validate parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("urlMap", new Google.Apis.Discovery.Parameter + { + Name = "urlMap", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + }); + } + } + } + + /// The "vpnGateways" collection of methods. + public class VpnGatewaysResource + { + private const string Resource = "vpnGateways"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public VpnGatewaysResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// + /// Retrieves an aggregated list of VPN gateways. To prevent failure, Google recommends that you set the + /// `returnPartialSuccess` parameter to `true`. + /// + /// Project ID for this request. + public virtual AggregatedListRequest AggregatedList(string project) + { + return new AggregatedListRequest(this.service, project); + } + + /// + /// Retrieves an aggregated list of VPN gateways. To prevent failure, Google recommends that you set the + /// `returnPartialSuccess` parameter to `true`. + /// + public class AggregatedListRequest : ComputeBaseServiceRequest + { + /// Constructs a new AggregatedList request. + public AggregatedListRequest(Google.Apis.Services.IClientService service, string project) : base(service) + { + Project = project; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// + /// A filter expression that filters resources listed in the response. Most Compute resources support two + /// types of filter expressions: expressions that support regular expressions and expressions that follow + /// API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. + /// If you want to use AIP-160, your expression must specify the field name, an operator, and the value that + /// you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be + /// either `=`, `!=`, `&gt;`, `&lt;`, `&lt;=`, `&gt;=` or `:`. For example, if you are + /// filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying + /// `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For + /// example, to find all objects with `owner` label use: + /// ``` + /// labels.owner:* + /// ``` + /// You can also filter nested + /// fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only + /// if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based + /// on resource labels. To filter on multiple expressions, provide each separate expression within + /// parentheses. For example: + /// ``` + /// (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") + /// ``` + /// By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions + /// explicitly. For example: + /// ``` + /// (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND + /// (scheduling.automaticRestart = true) + /// ``` + /// If you want to use a regular expression, use the `eq` (equal) + /// or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or + /// against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq + /// 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne + /// "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. + /// The literal value must match the entire field. For example, to filter for instances that do not end with + /// name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields + /// using regular expressions. + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + + /// + /// Indicates whether every visible scope for each scope type (zone, region, global) should be included in + /// the response. For new resource types added after this field, the flag has no effect as new resource + /// types will always include every visible scope for each scope type in response. For resource types which + /// predate this field, if this flag is omitted or false, only scopes of the scope types where the resource + /// type is expected to be found will be included. + /// + [Google.Apis.Util.RequestParameterAttribute("includeAllScopes", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable IncludeAllScopes { get; set; } + + /// + /// The maximum number of results per page that should be returned. If the number of available results is + /// larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page + /// of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + /// + [Google.Apis.Util.RequestParameterAttribute("maxResults", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable MaxResults { get; set; } + + /// + /// Sorts list results by a certain order. By default, results are returned in alphanumerical order based on + /// the resource name. You can also sort results in descending order based on the creation timestamp using + /// `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse + /// chronological order (newest result first). Use this to sort resources like operations so that the newest + /// operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + /// + [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OrderBy { get; set; } + + /// + /// Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list + /// request to get the next page of results. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// + /// Opt-in for partial success behavior which provides partial results in case of failure. The default value + /// is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope + /// either returns all resources in the zone or no resources, with an error code. + /// + [Google.Apis.Util.RequestParameterAttribute("returnPartialSuccess", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable ReturnPartialSuccess { get; set; } + + /// + /// The Shared VPC service project id or service project number for which aggregated list request is invoked + /// for subnetworks list-usable api. + /// + [Google.Apis.Util.RequestParameterAttribute("serviceProjectNumber", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable ServiceProjectNumber { get; set; } + + /// Gets the method name. + public override string MethodName => "aggregatedList"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/aggregated/vpnGateways"; + + /// Initializes AggregatedList parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("includeAllScopes", new Google.Apis.Discovery.Parameter + { + Name = "includeAllScopes", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("maxResults", new Google.Apis.Discovery.Parameter + { + Name = "maxResults", + IsRequired = false, + ParameterType = "query", + DefaultValue = "500", + Pattern = null, + }); + RequestParameters.Add("orderBy", new Google.Apis.Discovery.Parameter + { + Name = "orderBy", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("returnPartialSuccess", new Google.Apis.Discovery.Parameter + { + Name = "returnPartialSuccess", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("serviceProjectNumber", new Google.Apis.Discovery.Parameter + { + Name = "serviceProjectNumber", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Deletes the specified VPN gateway. + /// Project ID for this request. + /// Name of the region for this request. + /// Name of the VPN gateway to delete. + public virtual DeleteRequest Delete(string project, string region, string vpnGateway) + { + return new DeleteRequest(this.service, project, region, vpnGateway); + } + + /// Deletes the specified VPN gateway. + public class DeleteRequest : ComputeBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string project, string region, string vpnGateway) : base(service) + { + Project = project; + Region = region; + VpnGateway = vpnGateway; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// Name of the region for this request. + [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Region { get; private set; } + + /// Name of the VPN gateway to delete. + [Google.Apis.Util.RequestParameterAttribute("vpnGateway", Google.Apis.Util.RequestParameterType.Path)] + public virtual string VpnGateway { get; private set; } + + /// + /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your + /// request, the server will know to ignore the request if it has already been completed. For example, + /// consider a situation where you make an initial request and the request times out. If you make the + /// request again with the same request ID, the server can check if original operation with the same request + /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally + /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is + /// not supported ( 00000000-0000-0000-0000-000000000000). + /// + [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestId { get; set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("region", new Google.Apis.Discovery.Parameter + { + Name = "region", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + }); + RequestParameters.Add("vpnGateway", new Google.Apis.Discovery.Parameter + { + Name = "vpnGateway", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + }); + RequestParameters.Add("requestId", new Google.Apis.Discovery.Parameter + { + Name = "requestId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Returns the specified VPN gateway. + /// Project ID for this request. + /// Name of the region for this request. + /// Name of the VPN gateway to return. + public virtual GetRequest Get(string project, string region, string vpnGateway) + { + return new GetRequest(this.service, project, region, vpnGateway); + } + + /// Returns the specified VPN gateway. + public class GetRequest : ComputeBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string project, string region, string vpnGateway) : base(service) + { + Project = project; + Region = region; + VpnGateway = vpnGateway; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// Name of the region for this request. + [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Region { get; private set; } + + /// Name of the VPN gateway to return. + [Google.Apis.Util.RequestParameterAttribute("vpnGateway", Google.Apis.Util.RequestParameterType.Path)] + public virtual string VpnGateway { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("region", new Google.Apis.Discovery.Parameter + { + Name = "region", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + }); + RequestParameters.Add("vpnGateway", new Google.Apis.Discovery.Parameter + { + Name = "vpnGateway", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + }); + } + } + + /// Returns the status for the specified VPN gateway. + /// Project ID for this request. + /// Name of the region for this request. + /// Name of the VPN gateway to return. + public virtual GetStatusRequest GetStatus(string project, string region, string vpnGateway) + { + return new GetStatusRequest(this.service, project, region, vpnGateway); + } + + /// Returns the status for the specified VPN gateway. + public class GetStatusRequest : ComputeBaseServiceRequest + { + /// Constructs a new GetStatus request. + public GetStatusRequest(Google.Apis.Services.IClientService service, string project, string region, string vpnGateway) : base(service) + { + Project = project; + Region = region; + VpnGateway = vpnGateway; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// Name of the region for this request. + [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Region { get; private set; } + + /// Name of the VPN gateway to return. + [Google.Apis.Util.RequestParameterAttribute("vpnGateway", Google.Apis.Util.RequestParameterType.Path)] + public virtual string VpnGateway { get; private set; } + + /// Gets the method name. + public override string MethodName => "getStatus"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}/getStatus"; + + /// Initializes GetStatus parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("region", new Google.Apis.Discovery.Parameter + { + Name = "region", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + }); + RequestParameters.Add("vpnGateway", new Google.Apis.Discovery.Parameter + { + Name = "vpnGateway", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + }); + } + } + + /// + /// Creates a VPN gateway in the specified project and region using the data included in the request. + /// + /// The body of the request. + /// Project ID for this request. + /// Name of the region for this request. + public virtual InsertRequest Insert(Google.Apis.Compute.alpha.Data.VpnGateway body, string project, string region) + { + return new InsertRequest(this.service, body, project, region); + } + + /// + /// Creates a VPN gateway in the specified project and region using the data included in the request. + /// + public class InsertRequest : ComputeBaseServiceRequest + { + /// Constructs a new Insert request. + public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.VpnGateway body, string project, string region) : base(service) + { + Project = project; + Region = region; + Body = body; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// Name of the region for this request. + [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Region { get; private set; } + + /// + /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your + /// request, the server will know to ignore the request if it has already been completed. For example, + /// consider a situation where you make an initial request and the request times out. If you make the + /// request again with the same request ID, the server can check if original operation with the same request + /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally + /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is + /// not supported ( 00000000-0000-0000-0000-000000000000). + /// + [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestId { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Compute.alpha.Data.VpnGateway Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "insert"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/regions/{region}/vpnGateways"; + + /// Initializes Insert parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + { + Name = "project", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + }); + RequestParameters.Add("region", new Google.Apis.Discovery.Parameter + { + Name = "region", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + }); + RequestParameters.Add("requestId", new Google.Apis.Discovery.Parameter + { + Name = "requestId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Retrieves a list of VPN gateways available to the specified project and region. + /// Project ID for this request. + /// Name of the region for this request. + public virtual ListRequest List(string project, string region) + { + return new ListRequest(this.service, project, region); + } + + /// Retrieves a list of VPN gateways available to the specified project and region. + public class ListRequest : ComputeBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string project, string region) : base(service) + { + Project = project; + Region = region; + InitParameters(); + } + + /// Project ID for this request. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Project { get; private set; } + + /// Name of the region for this request. + [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Region { get; private set; } + + /// + /// A filter expression that filters resources listed in the response. Most Compute resources support two + /// types of filter expressions: expressions that support regular expressions and expressions that follow + /// API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. + /// If you want to use AIP-160, your expression must specify the field name, an operator, and the value that + /// you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be + /// either `=`, `!=`, `&gt;`, `&lt;`, `&lt;=`, `&gt;=` or `:`. For example, if you are + /// filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying + /// `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For + /// example, to find all objects with `owner` label use: + /// ``` + /// labels.owner:* + /// ``` + /// You can also filter nested + /// fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only + /// if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based + /// on resource labels. To filter on multiple expressions, provide each separate expression within + /// parentheses. For example: + /// ``` + /// (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") + /// ``` + /// By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions + /// explicitly. For example: + /// ``` + /// (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND + /// (scheduling.automaticRestart = true) + /// ``` + /// If you want to use a regular expression, use the `eq` (equal) + /// or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or + /// against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq + /// 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne + /// "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. + /// The literal value must match the entire field. For example, to filter for instances that do not end with + /// name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields + /// using regular expressions. + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + + /// + /// The maximum number of results per page that should be returned. If the number of available results is + /// larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page + /// of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + /// + [Google.Apis.Util.RequestParameterAttribute("maxResults", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable MaxResults { get; set; } + + /// + /// Sorts list results by a certain order. By default, results are returned in alphanumerical order based on + /// the resource name. You can also sort results in descending order based on the creation timestamp using + /// `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse + /// chronological order (newest result first). Use this to sort resources like operations so that the newest + /// operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + /// + [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OrderBy { get; set; } + + /// + /// Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list + /// request to get the next page of results. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// + /// Opt-in for partial success behavior which provides partial results in case of failure. The default value + /// is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope + /// either returns all resources in the zone or no resources, with an error code. + /// + [Google.Apis.Util.RequestParameterAttribute("returnPartialSuccess", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable ReturnPartialSuccess { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "projects/{project}/regions/{region}/vpnGateways"; /// Initializes List parameter list. protected override void InitParameters() @@ -101066,6 +102978,14 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", }); + RequestParameters.Add("region", new Google.Apis.Discovery.Parameter + { + Name = "region", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + }); RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter { Name = "filter", @@ -101110,28 +103030,28 @@ protected override void InitParameters() } /// - /// Patches the specified UrlMap resource with the data included in the request. This method supports PATCH - /// semantics and uses the JSON merge patch format and processing rules. + /// Sets the labels on a VpnGateway. To learn more about labels, read the Labeling Resources documentation. /// /// The body of the request. /// Project ID for this request. - /// Name of the UrlMap resource to patch. - public virtual PatchRequest Patch(Google.Apis.Compute.alpha.Data.UrlMap body, string project, string urlMap) + /// The region for this request. + /// Name or id of the resource for this request. + public virtual SetLabelsRequest SetLabels(Google.Apis.Compute.alpha.Data.RegionSetLabelsRequest body, string project, string region, string resource) { - return new PatchRequest(this.service, body, project, urlMap); + return new SetLabelsRequest(this.service, body, project, region, resource); } /// - /// Patches the specified UrlMap resource with the data included in the request. This method supports PATCH - /// semantics and uses the JSON merge patch format and processing rules. + /// Sets the labels on a VpnGateway. To learn more about labels, read the Labeling Resources documentation. /// - public class PatchRequest : ComputeBaseServiceRequest + public class SetLabelsRequest : ComputeBaseServiceRequest { - /// Constructs a new Patch request. - public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.UrlMap body, string project, string urlMap) : base(service) + /// Constructs a new SetLabels request. + public SetLabelsRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.RegionSetLabelsRequest body, string project, string region, string resource) : base(service) { Project = project; - UrlMap = urlMap; + Region = region; + Resource = resource; Body = body; InitParameters(); } @@ -101140,9 +103060,13 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Com [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] public virtual string Project { get; private set; } - /// Name of the UrlMap resource to patch. - [Google.Apis.Util.RequestParameterAttribute("urlMap", Google.Apis.Util.RequestParameterType.Path)] - public virtual string UrlMap { get; private set; } + /// The region for this request. + [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Region { get; private set; } + + /// Name or id of the resource for this request. + [Google.Apis.Util.RequestParameterAttribute("resource", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Resource { get; private set; } /// /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your @@ -101157,21 +103081,21 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Com public virtual string RequestId { get; set; } /// Gets or sets the body of this request. - Google.Apis.Compute.alpha.Data.UrlMap Body { get; set; } + Google.Apis.Compute.alpha.Data.RegionSetLabelsRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "patch"; + public override string MethodName => "setLabels"; /// Gets the HTTP method. - public override string HttpMethod => "PATCH"; + public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "projects/{project}/global/urlMaps/{urlMap}"; + public override string RestPath => "projects/{project}/regions/{region}/vpnGateways/{resource}/setLabels"; - /// Initializes Patch parameter list. + /// Initializes SetLabels parameter list. protected override void InitParameters() { base.InitParameters(); @@ -101183,9 +103107,17 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", }); - RequestParameters.Add("urlMap", new Google.Apis.Discovery.Parameter + RequestParameters.Add("region", new Google.Apis.Discovery.Parameter { - Name = "urlMap", + Name = "region", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + }); + RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter + { + Name = "resource", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -101205,19 +103137,21 @@ protected override void InitParameters() /// Returns permissions that a caller has on the specified resource. /// The body of the request. /// Project ID for this request. + /// The name of the region for this request. /// Name or id of the resource for this request. - public virtual TestIamPermissionsRequest TestIamPermissions(Google.Apis.Compute.alpha.Data.TestPermissionsRequest body, string project, string resource) + public virtual TestIamPermissionsRequest TestIamPermissions(Google.Apis.Compute.alpha.Data.TestPermissionsRequest body, string project, string region, string resource) { - return new TestIamPermissionsRequest(this.service, body, project, resource); + return new TestIamPermissionsRequest(this.service, body, project, region, resource); } /// Returns permissions that a caller has on the specified resource. public class TestIamPermissionsRequest : ComputeBaseServiceRequest { /// Constructs a new TestIamPermissions request. - public TestIamPermissionsRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.TestPermissionsRequest body, string project, string resource) : base(service) + public TestIamPermissionsRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.TestPermissionsRequest body, string project, string region, string resource) : base(service) { Project = project; + Region = region; Resource = resource; Body = body; InitParameters(); @@ -101227,6 +103161,10 @@ public TestIamPermissionsRequest(Google.Apis.Services.IClientService service, Go [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] public virtual string Project { get; private set; } + /// The name of the region for this request. + [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Region { get; private set; } + /// Name or id of the resource for this request. [Google.Apis.Util.RequestParameterAttribute("resource", Google.Apis.Util.RequestParameterType.Path)] public virtual string Resource { get; private set; } @@ -101244,7 +103182,7 @@ public TestIamPermissionsRequest(Google.Apis.Services.IClientService service, Go public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "projects/{project}/global/urlMaps/{resource}/testIamPermissions"; + public override string RestPath => "projects/{project}/regions/{region}/vpnGateways/{resource}/testIamPermissions"; /// Initializes TestIamPermissions parameter list. protected override void InitParameters() @@ -101258,169 +103196,17 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", }); - RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter - { - Name = "resource", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - }); - } - } - - /// Updates the specified UrlMap resource with the data included in the request. - /// The body of the request. - /// Project ID for this request. - /// Name of the UrlMap resource to update. - public virtual UpdateRequest Update(Google.Apis.Compute.alpha.Data.UrlMap body, string project, string urlMap) - { - return new UpdateRequest(this.service, body, project, urlMap); - } - - /// Updates the specified UrlMap resource with the data included in the request. - public class UpdateRequest : ComputeBaseServiceRequest - { - /// Constructs a new Update request. - public UpdateRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.UrlMap body, string project, string urlMap) : base(service) - { - Project = project; - UrlMap = urlMap; - Body = body; - InitParameters(); - } - - /// Project ID for this request. - [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Project { get; private set; } - - /// Name of the UrlMap resource to update. - [Google.Apis.Util.RequestParameterAttribute("urlMap", Google.Apis.Util.RequestParameterType.Path)] - public virtual string UrlMap { get; private set; } - - /// - /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your - /// request, the server will know to ignore the request if it has already been completed. For example, - /// consider a situation where you make an initial request and the request times out. If you make the - /// request again with the same request ID, the server can check if original operation with the same request - /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally - /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is - /// not supported ( 00000000-0000-0000-0000-000000000000). - /// - [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestId { get; set; } - - /// Gets or sets the body of this request. - Google.Apis.Compute.alpha.Data.UrlMap Body { get; set; } - - /// Returns the body of the request. - protected override object GetBody() => Body; - - /// Gets the method name. - public override string MethodName => "update"; - - /// Gets the HTTP method. - public override string HttpMethod => "PUT"; - - /// Gets the REST path. - public override string RestPath => "projects/{project}/global/urlMaps/{urlMap}"; - - /// Initializes Update parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("project", new Google.Apis.Discovery.Parameter - { - Name = "project", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - }); - RequestParameters.Add("urlMap", new Google.Apis.Discovery.Parameter - { - Name = "urlMap", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - }); - RequestParameters.Add("requestId", new Google.Apis.Discovery.Parameter - { - Name = "requestId", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - } - - /// - /// Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling - /// this method does NOT create the UrlMap. - /// - /// The body of the request. - /// Project ID for this request. - /// Name of the UrlMap resource to be validated as. - public virtual ValidateRequest Validate(Google.Apis.Compute.alpha.Data.UrlMapsValidateRequest body, string project, string urlMap) - { - return new ValidateRequest(this.service, body, project, urlMap); - } - - /// - /// Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling - /// this method does NOT create the UrlMap. - /// - public class ValidateRequest : ComputeBaseServiceRequest - { - /// Constructs a new Validate request. - public ValidateRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.UrlMapsValidateRequest body, string project, string urlMap) : base(service) - { - Project = project; - UrlMap = urlMap; - Body = body; - InitParameters(); - } - - /// Project ID for this request. - [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Project { get; private set; } - - /// Name of the UrlMap resource to be validated as. - [Google.Apis.Util.RequestParameterAttribute("urlMap", Google.Apis.Util.RequestParameterType.Path)] - public virtual string UrlMap { get; private set; } - - /// Gets or sets the body of this request. - Google.Apis.Compute.alpha.Data.UrlMapsValidateRequest Body { get; set; } - - /// Returns the body of the request. - protected override object GetBody() => Body; - - /// Gets the method name. - public override string MethodName => "validate"; - - /// Gets the HTTP method. - public override string HttpMethod => "POST"; - - /// Gets the REST path. - public override string RestPath => "projects/{project}/global/urlMaps/{urlMap}/validate"; - - /// Initializes Validate parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("project", new Google.Apis.Discovery.Parameter + RequestParameters.Add("region", new Google.Apis.Discovery.Parameter { - Name = "project", + Name = "region", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", }); - RequestParameters.Add("urlMap", new Google.Apis.Discovery.Parameter + RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter { - Name = "urlMap", + Name = "resource", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -101430,22 +103216,22 @@ protected override void InitParameters() } } - /// The "vpnGateways" collection of methods. - public class VpnGatewaysResource + /// The "vpnTunnels" collection of methods. + public class VpnTunnelsResource { - private const string Resource = "vpnGateways"; + private const string Resource = "vpnTunnels"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. - public VpnGatewaysResource(Google.Apis.Services.IClientService service) + public VpnTunnelsResource(Google.Apis.Services.IClientService service) { this.service = service; } /// - /// Retrieves an aggregated list of VPN gateways. To prevent failure, Google recommends that you set the + /// Retrieves an aggregated list of VPN tunnels. To prevent failure, Google recommends that you set the /// `returnPartialSuccess` parameter to `true`. /// /// Project ID for this request. @@ -101455,10 +103241,10 @@ public virtual AggregatedListRequest AggregatedList(string project) } /// - /// Retrieves an aggregated list of VPN gateways. To prevent failure, Google recommends that you set the + /// Retrieves an aggregated list of VPN tunnels. To prevent failure, Google recommends that you set the /// `returnPartialSuccess` parameter to `true`. /// - public class AggregatedListRequest : ComputeBaseServiceRequest + public class AggregatedListRequest : ComputeBaseServiceRequest { /// Constructs a new AggregatedList request. public AggregatedListRequest(Google.Apis.Services.IClientService service, string project) : base(service) @@ -101567,7 +103353,7 @@ public AggregatedListRequest(Google.Apis.Services.IClientService service, string public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "projects/{project}/aggregated/vpnGateways"; + public override string RestPath => "projects/{project}/aggregated/vpnTunnels"; /// Initializes AggregatedList parameter list. protected override void InitParameters() @@ -101640,24 +103426,24 @@ protected override void InitParameters() } } - /// Deletes the specified VPN gateway. + /// Deletes the specified VpnTunnel resource. /// Project ID for this request. /// Name of the region for this request. - /// Name of the VPN gateway to delete. - public virtual DeleteRequest Delete(string project, string region, string vpnGateway) + /// Name of the VpnTunnel resource to delete. + public virtual DeleteRequest Delete(string project, string region, string vpnTunnel) { - return new DeleteRequest(this.service, project, region, vpnGateway); + return new DeleteRequest(this.service, project, region, vpnTunnel); } - /// Deletes the specified VPN gateway. + /// Deletes the specified VpnTunnel resource. public class DeleteRequest : ComputeBaseServiceRequest { /// Constructs a new Delete request. - public DeleteRequest(Google.Apis.Services.IClientService service, string project, string region, string vpnGateway) : base(service) + public DeleteRequest(Google.Apis.Services.IClientService service, string project, string region, string vpnTunnel) : base(service) { Project = project; Region = region; - VpnGateway = vpnGateway; + VpnTunnel = vpnTunnel; InitParameters(); } @@ -101669,9 +103455,9 @@ public DeleteRequest(Google.Apis.Services.IClientService service, string project [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] public virtual string Region { get; private set; } - /// Name of the VPN gateway to delete. - [Google.Apis.Util.RequestParameterAttribute("vpnGateway", Google.Apis.Util.RequestParameterType.Path)] - public virtual string VpnGateway { get; private set; } + /// Name of the VpnTunnel resource to delete. + [Google.Apis.Util.RequestParameterAttribute("vpnTunnel", Google.Apis.Util.RequestParameterType.Path)] + public virtual string VpnTunnel { get; private set; } /// /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your @@ -101692,7 +103478,7 @@ public DeleteRequest(Google.Apis.Services.IClientService service, string project public override string HttpMethod => "DELETE"; /// Gets the REST path. - public override string RestPath => "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}"; + public override string RestPath => "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}"; /// Initializes Delete parameter list. protected override void InitParameters() @@ -101714,9 +103500,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", }); - RequestParameters.Add("vpnGateway", new Google.Apis.Discovery.Parameter + RequestParameters.Add("vpnTunnel", new Google.Apis.Discovery.Parameter { - Name = "vpnGateway", + Name = "vpnTunnel", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -101733,24 +103519,24 @@ protected override void InitParameters() } } - /// Returns the specified VPN gateway. + /// Returns the specified VpnTunnel resource. /// Project ID for this request. /// Name of the region for this request. - /// Name of the VPN gateway to return. - public virtual GetRequest Get(string project, string region, string vpnGateway) + /// Name of the VpnTunnel resource to return. + public virtual GetRequest Get(string project, string region, string vpnTunnel) { - return new GetRequest(this.service, project, region, vpnGateway); + return new GetRequest(this.service, project, region, vpnTunnel); } - /// Returns the specified VPN gateway. - public class GetRequest : ComputeBaseServiceRequest + /// Returns the specified VpnTunnel resource. + public class GetRequest : ComputeBaseServiceRequest { /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string project, string region, string vpnGateway) : base(service) + public GetRequest(Google.Apis.Services.IClientService service, string project, string region, string vpnTunnel) : base(service) { Project = project; Region = region; - VpnGateway = vpnGateway; + VpnTunnel = vpnTunnel; InitParameters(); } @@ -101762,9 +103548,9 @@ public GetRequest(Google.Apis.Services.IClientService service, string project, s [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] public virtual string Region { get; private set; } - /// Name of the VPN gateway to return. - [Google.Apis.Util.RequestParameterAttribute("vpnGateway", Google.Apis.Util.RequestParameterType.Path)] - public virtual string VpnGateway { get; private set; } + /// Name of the VpnTunnel resource to return. + [Google.Apis.Util.RequestParameterAttribute("vpnTunnel", Google.Apis.Util.RequestParameterType.Path)] + public virtual string VpnTunnel { get; private set; } /// Gets the method name. public override string MethodName => "get"; @@ -101773,7 +103559,7 @@ public GetRequest(Google.Apis.Services.IClientService service, string project, s public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}"; + public override string RestPath => "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}"; /// Initializes Get parameter list. protected override void InitParameters() @@ -101795,82 +103581,9 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", }); - RequestParameters.Add("vpnGateway", new Google.Apis.Discovery.Parameter - { - Name = "vpnGateway", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - }); - } - } - - /// Returns the status for the specified VPN gateway. - /// Project ID for this request. - /// Name of the region for this request. - /// Name of the VPN gateway to return. - public virtual GetStatusRequest GetStatus(string project, string region, string vpnGateway) - { - return new GetStatusRequest(this.service, project, region, vpnGateway); - } - - /// Returns the status for the specified VPN gateway. - public class GetStatusRequest : ComputeBaseServiceRequest - { - /// Constructs a new GetStatus request. - public GetStatusRequest(Google.Apis.Services.IClientService service, string project, string region, string vpnGateway) : base(service) - { - Project = project; - Region = region; - VpnGateway = vpnGateway; - InitParameters(); - } - - /// Project ID for this request. - [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Project { get; private set; } - - /// Name of the region for this request. - [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Region { get; private set; } - - /// Name of the VPN gateway to return. - [Google.Apis.Util.RequestParameterAttribute("vpnGateway", Google.Apis.Util.RequestParameterType.Path)] - public virtual string VpnGateway { get; private set; } - - /// Gets the method name. - public override string MethodName => "getStatus"; - - /// Gets the HTTP method. - public override string HttpMethod => "GET"; - - /// Gets the REST path. - public override string RestPath => "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}/getStatus"; - - /// Initializes GetStatus parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("project", new Google.Apis.Discovery.Parameter - { - Name = "project", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - }); - RequestParameters.Add("region", new Google.Apis.Discovery.Parameter - { - Name = "region", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - }); - RequestParameters.Add("vpnGateway", new Google.Apis.Discovery.Parameter + RequestParameters.Add("vpnTunnel", new Google.Apis.Discovery.Parameter { - Name = "vpnGateway", + Name = "vpnTunnel", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -101880,23 +103593,23 @@ protected override void InitParameters() } /// - /// Creates a VPN gateway in the specified project and region using the data included in the request. + /// Creates a VpnTunnel resource in the specified project and region using the data included in the request. /// /// The body of the request. /// Project ID for this request. /// Name of the region for this request. - public virtual InsertRequest Insert(Google.Apis.Compute.alpha.Data.VpnGateway body, string project, string region) + public virtual InsertRequest Insert(Google.Apis.Compute.alpha.Data.VpnTunnel body, string project, string region) { return new InsertRequest(this.service, body, project, region); } /// - /// Creates a VPN gateway in the specified project and region using the data included in the request. + /// Creates a VpnTunnel resource in the specified project and region using the data included in the request. /// public class InsertRequest : ComputeBaseServiceRequest { /// Constructs a new Insert request. - public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.VpnGateway body, string project, string region) : base(service) + public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.VpnTunnel body, string project, string region) : base(service) { Project = project; Region = region; @@ -101925,7 +103638,7 @@ public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Co public virtual string RequestId { get; set; } /// Gets or sets the body of this request. - Google.Apis.Compute.alpha.Data.VpnGateway Body { get; set; } + Google.Apis.Compute.alpha.Data.VpnTunnel Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; @@ -101937,7 +103650,7 @@ public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Co public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "projects/{project}/regions/{region}/vpnGateways"; + public override string RestPath => "projects/{project}/regions/{region}/vpnTunnels"; /// Initializes Insert parameter list. protected override void InitParameters() @@ -101970,7 +103683,7 @@ protected override void InitParameters() } } - /// Retrieves a list of VPN gateways available to the specified project and region. + /// Retrieves a list of VpnTunnel resources contained in the specified project and region. /// Project ID for this request. /// Name of the region for this request. public virtual ListRequest List(string project, string region) @@ -101978,8 +103691,8 @@ public virtual ListRequest List(string project, string region) return new ListRequest(this.service, project, region); } - /// Retrieves a list of VPN gateways available to the specified project and region. - public class ListRequest : ComputeBaseServiceRequest + /// Retrieves a list of VpnTunnel resources contained in the specified project and region. + public class ListRequest : ComputeBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service, string project, string region) : base(service) @@ -102076,7 +103789,7 @@ public ListRequest(Google.Apis.Services.IClientService service, string project, public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "projects/{project}/regions/{region}/vpnGateways"; + public override string RestPath => "projects/{project}/regions/{region}/vpnTunnels"; /// Initializes List parameter list. protected override void InitParameters() @@ -102142,7 +103855,7 @@ protected override void InitParameters() } /// - /// Sets the labels on a VpnGateway. To learn more about labels, read the Labeling Resources documentation. + /// Sets the labels on a VpnTunnel. To learn more about labels, read the Labeling Resources documentation. /// /// The body of the request. /// Project ID for this request. @@ -102154,7 +103867,7 @@ public virtual SetLabelsRequest SetLabels(Google.Apis.Compute.alpha.Data.RegionS } /// - /// Sets the labels on a VpnGateway. To learn more about labels, read the Labeling Resources documentation. + /// Sets the labels on a VpnTunnel. To learn more about labels, read the Labeling Resources documentation. /// public class SetLabelsRequest : ComputeBaseServiceRequest { @@ -102205,7 +103918,7 @@ public SetLabelsRequest(Google.Apis.Services.IClientService service, Google.Apis public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "projects/{project}/regions/{region}/vpnGateways/{resource}/setLabels"; + public override string RestPath => "projects/{project}/regions/{region}/vpnTunnels/{resource}/setLabels"; /// Initializes SetLabels parameter list. protected override void InitParameters() @@ -102294,7 +104007,7 @@ public TestIamPermissionsRequest(Google.Apis.Services.IClientService service, Go public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "projects/{project}/regions/{region}/vpnGateways/{resource}/testIamPermissions"; + public override string RestPath => "projects/{project}/regions/{region}/vpnTunnels/{resource}/testIamPermissions"; /// Initializes TestIamPermissions parameter list. protected override void InitParameters() @@ -102328,234 +104041,38 @@ protected override void InitParameters() } } - /// The "vpnTunnels" collection of methods. - public class VpnTunnelsResource + /// The "wireGroups" collection of methods. + public class WireGroupsResource { - private const string Resource = "vpnTunnels"; + private const string Resource = "wireGroups"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. - public VpnTunnelsResource(Google.Apis.Services.IClientService service) + public WireGroupsResource(Google.Apis.Services.IClientService service) { this.service = service; } - /// - /// Retrieves an aggregated list of VPN tunnels. To prevent failure, Google recommends that you set the - /// `returnPartialSuccess` parameter to `true`. - /// - /// Project ID for this request. - public virtual AggregatedListRequest AggregatedList(string project) - { - return new AggregatedListRequest(this.service, project); - } - - /// - /// Retrieves an aggregated list of VPN tunnels. To prevent failure, Google recommends that you set the - /// `returnPartialSuccess` parameter to `true`. - /// - public class AggregatedListRequest : ComputeBaseServiceRequest - { - /// Constructs a new AggregatedList request. - public AggregatedListRequest(Google.Apis.Services.IClientService service, string project) : base(service) - { - Project = project; - InitParameters(); - } - - /// Project ID for this request. - [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Project { get; private set; } - - /// - /// A filter expression that filters resources listed in the response. Most Compute resources support two - /// types of filter expressions: expressions that support regular expressions and expressions that follow - /// API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. - /// If you want to use AIP-160, your expression must specify the field name, an operator, and the value that - /// you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be - /// either `=`, `!=`, `&gt;`, `&lt;`, `&lt;=`, `&gt;=` or `:`. For example, if you are - /// filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying - /// `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For - /// example, to find all objects with `owner` label use: - /// ``` - /// labels.owner:* - /// ``` - /// You can also filter nested - /// fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only - /// if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based - /// on resource labels. To filter on multiple expressions, provide each separate expression within - /// parentheses. For example: - /// ``` - /// (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") - /// ``` - /// By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions - /// explicitly. For example: - /// ``` - /// (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND - /// (scheduling.automaticRestart = true) - /// ``` - /// If you want to use a regular expression, use the `eq` (equal) - /// or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or - /// against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq - /// 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne - /// "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. - /// The literal value must match the entire field. For example, to filter for instances that do not end with - /// name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields - /// using regular expressions. - /// - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - - /// - /// Indicates whether every visible scope for each scope type (zone, region, global) should be included in - /// the response. For new resource types added after this field, the flag has no effect as new resource - /// types will always include every visible scope for each scope type in response. For resource types which - /// predate this field, if this flag is omitted or false, only scopes of the scope types where the resource - /// type is expected to be found will be included. - /// - [Google.Apis.Util.RequestParameterAttribute("includeAllScopes", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable IncludeAllScopes { get; set; } - - /// - /// The maximum number of results per page that should be returned. If the number of available results is - /// larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page - /// of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) - /// - [Google.Apis.Util.RequestParameterAttribute("maxResults", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable MaxResults { get; set; } - - /// - /// Sorts list results by a certain order. By default, results are returned in alphanumerical order based on - /// the resource name. You can also sort results in descending order based on the creation timestamp using - /// `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse - /// chronological order (newest result first). Use this to sort resources like operations so that the newest - /// operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. - /// - [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] - public virtual string OrderBy { get; set; } - - /// - /// Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list - /// request to get the next page of results. - /// - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// - /// Opt-in for partial success behavior which provides partial results in case of failure. The default value - /// is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope - /// either returns all resources in the zone or no resources, with an error code. - /// - [Google.Apis.Util.RequestParameterAttribute("returnPartialSuccess", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable ReturnPartialSuccess { get; set; } - - /// - /// The Shared VPC service project id or service project number for which aggregated list request is invoked - /// for subnetworks list-usable api. - /// - [Google.Apis.Util.RequestParameterAttribute("serviceProjectNumber", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable ServiceProjectNumber { get; set; } - - /// Gets the method name. - public override string MethodName => "aggregatedList"; - - /// Gets the HTTP method. - public override string HttpMethod => "GET"; - - /// Gets the REST path. - public override string RestPath => "projects/{project}/aggregated/vpnTunnels"; - - /// Initializes AggregatedList parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("project", new Google.Apis.Discovery.Parameter - { - Name = "project", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - }); - RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter - { - Name = "filter", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("includeAllScopes", new Google.Apis.Discovery.Parameter - { - Name = "includeAllScopes", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("maxResults", new Google.Apis.Discovery.Parameter - { - Name = "maxResults", - IsRequired = false, - ParameterType = "query", - DefaultValue = "500", - Pattern = null, - }); - RequestParameters.Add("orderBy", new Google.Apis.Discovery.Parameter - { - Name = "orderBy", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter - { - Name = "pageToken", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("returnPartialSuccess", new Google.Apis.Discovery.Parameter - { - Name = "returnPartialSuccess", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("serviceProjectNumber", new Google.Apis.Discovery.Parameter - { - Name = "serviceProjectNumber", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - } - - /// Deletes the specified VpnTunnel resource. + /// Deletes the specified wire group in the given scope. /// Project ID for this request. - /// Name of the region for this request. - /// Name of the VpnTunnel resource to delete. - public virtual DeleteRequest Delete(string project, string region, string vpnTunnel) + /// null + /// Name of the wire group resource to delete. + public virtual DeleteRequest Delete(string project, string crossSiteNetwork, string wireGroup) { - return new DeleteRequest(this.service, project, region, vpnTunnel); + return new DeleteRequest(this.service, project, crossSiteNetwork, wireGroup); } - /// Deletes the specified VpnTunnel resource. + /// Deletes the specified wire group in the given scope. public class DeleteRequest : ComputeBaseServiceRequest { /// Constructs a new Delete request. - public DeleteRequest(Google.Apis.Services.IClientService service, string project, string region, string vpnTunnel) : base(service) + public DeleteRequest(Google.Apis.Services.IClientService service, string project, string crossSiteNetwork, string wireGroup) : base(service) { Project = project; - Region = region; - VpnTunnel = vpnTunnel; + CrossSiteNetwork = crossSiteNetwork; + WireGroup = wireGroup; InitParameters(); } @@ -102563,13 +104080,12 @@ public DeleteRequest(Google.Apis.Services.IClientService service, string project [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] public virtual string Project { get; private set; } - /// Name of the region for this request. - [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Region { get; private set; } + [Google.Apis.Util.RequestParameterAttribute("crossSiteNetwork", Google.Apis.Util.RequestParameterType.Path)] + public virtual string CrossSiteNetwork { get; private set; } - /// Name of the VpnTunnel resource to delete. - [Google.Apis.Util.RequestParameterAttribute("vpnTunnel", Google.Apis.Util.RequestParameterType.Path)] - public virtual string VpnTunnel { get; private set; } + /// Name of the wire group resource to delete. + [Google.Apis.Util.RequestParameterAttribute("wireGroup", Google.Apis.Util.RequestParameterType.Path)] + public virtual string WireGroup { get; private set; } /// /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your @@ -102578,7 +104094,7 @@ public DeleteRequest(Google.Apis.Services.IClientService service, string project /// request again with the same request ID, the server can check if original operation with the same request /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is - /// not supported ( 00000000-0000-0000-0000-000000000000). + /// not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder /// [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestId { get; set; } @@ -102590,7 +104106,7 @@ public DeleteRequest(Google.Apis.Services.IClientService service, string project public override string HttpMethod => "DELETE"; /// Gets the REST path. - public override string RestPath => "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}"; + public override string RestPath => "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}"; /// Initializes Delete parameter list. protected override void InitParameters() @@ -102604,17 +104120,17 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", }); - RequestParameters.Add("region", new Google.Apis.Discovery.Parameter + RequestParameters.Add("crossSiteNetwork", new Google.Apis.Discovery.Parameter { - Name = "region", + Name = "crossSiteNetwork", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", }); - RequestParameters.Add("vpnTunnel", new Google.Apis.Discovery.Parameter + RequestParameters.Add("wireGroup", new Google.Apis.Discovery.Parameter { - Name = "vpnTunnel", + Name = "wireGroup", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -102631,24 +104147,24 @@ protected override void InitParameters() } } - /// Returns the specified VpnTunnel resource. + /// Gets the specified wire group resource in the given scope. /// Project ID for this request. - /// Name of the region for this request. - /// Name of the VpnTunnel resource to return. - public virtual GetRequest Get(string project, string region, string vpnTunnel) + /// null + /// Name of the wire group resource to return. + public virtual GetRequest Get(string project, string crossSiteNetwork, string wireGroup) { - return new GetRequest(this.service, project, region, vpnTunnel); + return new GetRequest(this.service, project, crossSiteNetwork, wireGroup); } - /// Returns the specified VpnTunnel resource. - public class GetRequest : ComputeBaseServiceRequest + /// Gets the specified wire group resource in the given scope. + public class GetRequest : ComputeBaseServiceRequest { /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string project, string region, string vpnTunnel) : base(service) + public GetRequest(Google.Apis.Services.IClientService service, string project, string crossSiteNetwork, string wireGroup) : base(service) { Project = project; - Region = region; - VpnTunnel = vpnTunnel; + CrossSiteNetwork = crossSiteNetwork; + WireGroup = wireGroup; InitParameters(); } @@ -102656,13 +104172,12 @@ public GetRequest(Google.Apis.Services.IClientService service, string project, s [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] public virtual string Project { get; private set; } - /// Name of the region for this request. - [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Region { get; private set; } + [Google.Apis.Util.RequestParameterAttribute("crossSiteNetwork", Google.Apis.Util.RequestParameterType.Path)] + public virtual string CrossSiteNetwork { get; private set; } - /// Name of the VpnTunnel resource to return. - [Google.Apis.Util.RequestParameterAttribute("vpnTunnel", Google.Apis.Util.RequestParameterType.Path)] - public virtual string VpnTunnel { get; private set; } + /// Name of the wire group resource to return. + [Google.Apis.Util.RequestParameterAttribute("wireGroup", Google.Apis.Util.RequestParameterType.Path)] + public virtual string WireGroup { get; private set; } /// Gets the method name. public override string MethodName => "get"; @@ -102671,7 +104186,7 @@ public GetRequest(Google.Apis.Services.IClientService service, string project, s public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}"; + public override string RestPath => "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}"; /// Initializes Get parameter list. protected override void InitParameters() @@ -102685,17 +104200,17 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", }); - RequestParameters.Add("region", new Google.Apis.Discovery.Parameter + RequestParameters.Add("crossSiteNetwork", new Google.Apis.Discovery.Parameter { - Name = "region", + Name = "crossSiteNetwork", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", }); - RequestParameters.Add("vpnTunnel", new Google.Apis.Discovery.Parameter + RequestParameters.Add("wireGroup", new Google.Apis.Discovery.Parameter { - Name = "vpnTunnel", + Name = "wireGroup", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -102705,26 +104220,28 @@ protected override void InitParameters() } /// - /// Creates a VpnTunnel resource in the specified project and region using the data included in the request. + /// Creates a wire group in the specified project in the given scope using the parameters that are included in + /// the request. /// /// The body of the request. /// Project ID for this request. - /// Name of the region for this request. - public virtual InsertRequest Insert(Google.Apis.Compute.alpha.Data.VpnTunnel body, string project, string region) + /// null + public virtual InsertRequest Insert(Google.Apis.Compute.alpha.Data.WireGroup body, string project, string crossSiteNetwork) { - return new InsertRequest(this.service, body, project, region); + return new InsertRequest(this.service, body, project, crossSiteNetwork); } /// - /// Creates a VpnTunnel resource in the specified project and region using the data included in the request. + /// Creates a wire group in the specified project in the given scope using the parameters that are included in + /// the request. /// public class InsertRequest : ComputeBaseServiceRequest { /// Constructs a new Insert request. - public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.VpnTunnel body, string project, string region) : base(service) + public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.WireGroup body, string project, string crossSiteNetwork) : base(service) { Project = project; - Region = region; + CrossSiteNetwork = crossSiteNetwork; Body = body; InitParameters(); } @@ -102733,9 +104250,8 @@ public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Co [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] public virtual string Project { get; private set; } - /// Name of the region for this request. - [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Region { get; private set; } + [Google.Apis.Util.RequestParameterAttribute("crossSiteNetwork", Google.Apis.Util.RequestParameterType.Path)] + public virtual string CrossSiteNetwork { get; private set; } /// /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your @@ -102744,13 +104260,20 @@ public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Co /// request again with the same request ID, the server can check if original operation with the same request /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is - /// not supported ( 00000000-0000-0000-0000-000000000000). + /// not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder /// [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestId { get; set; } + /// + /// [Input Only] Validate the new configuration, but don't create it. If applicable, any configuration + /// notices are returned in the `configurationNotices` field. + /// + [Google.Apis.Util.RequestParameterAttribute("validateOnly", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable ValidateOnly { get; set; } + /// Gets or sets the body of this request. - Google.Apis.Compute.alpha.Data.VpnTunnel Body { get; set; } + Google.Apis.Compute.alpha.Data.WireGroup Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; @@ -102762,7 +104285,7 @@ public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Co public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "projects/{project}/regions/{region}/vpnTunnels"; + public override string RestPath => "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups"; /// Initializes Insert parameter list. protected override void InitParameters() @@ -102776,13 +104299,13 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", }); - RequestParameters.Add("region", new Google.Apis.Discovery.Parameter + RequestParameters.Add("crossSiteNetwork", new Google.Apis.Discovery.Parameter { - Name = "region", + Name = "crossSiteNetwork", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", }); RequestParameters.Add("requestId", new Google.Apis.Discovery.Parameter { @@ -102792,25 +104315,33 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add("validateOnly", new Google.Apis.Discovery.Parameter + { + Name = "validateOnly", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } - /// Retrieves a list of VpnTunnel resources contained in the specified project and region. + /// Lists the wire groups for a project in the given scope. /// Project ID for this request. - /// Name of the region for this request. - public virtual ListRequest List(string project, string region) + /// null + public virtual ListRequest List(string project, string crossSiteNetwork) { - return new ListRequest(this.service, project, region); + return new ListRequest(this.service, project, crossSiteNetwork); } - /// Retrieves a list of VpnTunnel resources contained in the specified project and region. - public class ListRequest : ComputeBaseServiceRequest + /// Lists the wire groups for a project in the given scope. + public class ListRequest : ComputeBaseServiceRequest { /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service, string project, string region) : base(service) + public ListRequest(Google.Apis.Services.IClientService service, string project, string crossSiteNetwork) : base(service) { Project = project; - Region = region; + CrossSiteNetwork = crossSiteNetwork; InitParameters(); } @@ -102818,9 +104349,8 @@ public ListRequest(Google.Apis.Services.IClientService service, string project, [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] public virtual string Project { get; private set; } - /// Name of the region for this request. - [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Region { get; private set; } + [Google.Apis.Util.RequestParameterAttribute("crossSiteNetwork", Google.Apis.Util.RequestParameterType.Path)] + public virtual string CrossSiteNetwork { get; private set; } /// /// A filter expression that filters resources listed in the response. Most Compute resources support two @@ -102901,7 +104431,7 @@ public ListRequest(Google.Apis.Services.IClientService service, string project, public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "projects/{project}/regions/{region}/vpnTunnels"; + public override string RestPath => "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups"; /// Initializes List parameter list. protected override void InitParameters() @@ -102915,13 +104445,13 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", }); - RequestParameters.Add("region", new Google.Apis.Discovery.Parameter + RequestParameters.Add("crossSiteNetwork", new Google.Apis.Discovery.Parameter { - Name = "region", + Name = "crossSiteNetwork", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", }); RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter { @@ -102967,28 +104497,30 @@ protected override void InitParameters() } /// - /// Sets the labels on a VpnTunnel. To learn more about labels, read the Labeling Resources documentation. + /// Updates the specified wire group resource with the data included in the request. This method supports PATCH + /// semantics and uses JSON merge patch format and processing rules. /// /// The body of the request. /// Project ID for this request. - /// The region for this request. - /// Name or id of the resource for this request. - public virtual SetLabelsRequest SetLabels(Google.Apis.Compute.alpha.Data.RegionSetLabelsRequest body, string project, string region, string resource) + /// null + /// Name of the WireGroups resource to patch. + public virtual PatchRequest Patch(Google.Apis.Compute.alpha.Data.WireGroup body, string project, string crossSiteNetwork, string wireGroup) { - return new SetLabelsRequest(this.service, body, project, region, resource); + return new PatchRequest(this.service, body, project, crossSiteNetwork, wireGroup); } /// - /// Sets the labels on a VpnTunnel. To learn more about labels, read the Labeling Resources documentation. + /// Updates the specified wire group resource with the data included in the request. This method supports PATCH + /// semantics and uses JSON merge patch format and processing rules. /// - public class SetLabelsRequest : ComputeBaseServiceRequest + public class PatchRequest : ComputeBaseServiceRequest { - /// Constructs a new SetLabels request. - public SetLabelsRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.RegionSetLabelsRequest body, string project, string region, string resource) : base(service) + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.WireGroup body, string project, string crossSiteNetwork, string wireGroup) : base(service) { Project = project; - Region = region; - Resource = resource; + CrossSiteNetwork = crossSiteNetwork; + WireGroup = wireGroup; Body = body; InitParameters(); } @@ -102997,13 +104529,12 @@ public SetLabelsRequest(Google.Apis.Services.IClientService service, Google.Apis [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] public virtual string Project { get; private set; } - /// The region for this request. - [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Region { get; private set; } + [Google.Apis.Util.RequestParameterAttribute("crossSiteNetwork", Google.Apis.Util.RequestParameterType.Path)] + public virtual string CrossSiteNetwork { get; private set; } - /// Name or id of the resource for this request. - [Google.Apis.Util.RequestParameterAttribute("resource", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Resource { get; private set; } + /// Name of the WireGroups resource to patch. + [Google.Apis.Util.RequestParameterAttribute("wireGroup", Google.Apis.Util.RequestParameterType.Path)] + public virtual string WireGroup { get; private set; } /// /// An optional request ID to identify requests. Specify a unique request ID so that if you must retry your @@ -103012,27 +104543,38 @@ public SetLabelsRequest(Google.Apis.Services.IClientService service, Google.Apis /// request again with the same request ID, the server can check if original operation with the same request /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is - /// not supported ( 00000000-0000-0000-0000-000000000000). + /// not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder /// [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestId { get; set; } + /// update_mask indicates fields to be updated as part of this request. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// + /// [Input Only] Validate the new configuration, but don't update it. If applicable, any configuration + /// notices are returned in the `configurationNotices` field. + /// + [Google.Apis.Util.RequestParameterAttribute("validateOnly", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable ValidateOnly { get; set; } + /// Gets or sets the body of this request. - Google.Apis.Compute.alpha.Data.RegionSetLabelsRequest Body { get; set; } + Google.Apis.Compute.alpha.Data.WireGroup Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "setLabels"; + public override string MethodName => "patch"; /// Gets the HTTP method. - public override string HttpMethod => "POST"; + public override string HttpMethod => "PATCH"; /// Gets the REST path. - public override string RestPath => "projects/{project}/regions/{region}/vpnTunnels/{resource}/setLabels"; + public override string RestPath => "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}"; - /// Initializes SetLabels parameter list. + /// Initializes Patch parameter list. protected override void InitParameters() { base.InitParameters(); @@ -103044,17 +104586,17 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", }); - RequestParameters.Add("region", new Google.Apis.Discovery.Parameter + RequestParameters.Add("crossSiteNetwork", new Google.Apis.Discovery.Parameter { - Name = "region", + Name = "crossSiteNetwork", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", }); - RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter + RequestParameters.Add("wireGroup", new Google.Apis.Discovery.Parameter { - Name = "resource", + Name = "wireGroup", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -103068,86 +104610,21 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - } - } - - /// Returns permissions that a caller has on the specified resource. - /// The body of the request. - /// Project ID for this request. - /// The name of the region for this request. - /// Name or id of the resource for this request. - public virtual TestIamPermissionsRequest TestIamPermissions(Google.Apis.Compute.alpha.Data.TestPermissionsRequest body, string project, string region, string resource) - { - return new TestIamPermissionsRequest(this.service, body, project, region, resource); - } - - /// Returns permissions that a caller has on the specified resource. - public class TestIamPermissionsRequest : ComputeBaseServiceRequest - { - /// Constructs a new TestIamPermissions request. - public TestIamPermissionsRequest(Google.Apis.Services.IClientService service, Google.Apis.Compute.alpha.Data.TestPermissionsRequest body, string project, string region, string resource) : base(service) - { - Project = project; - Region = region; - Resource = resource; - Body = body; - InitParameters(); - } - - /// Project ID for this request. - [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Project { get; private set; } - - /// The name of the region for this request. - [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Region { get; private set; } - - /// Name or id of the resource for this request. - [Google.Apis.Util.RequestParameterAttribute("resource", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Resource { get; private set; } - - /// Gets or sets the body of this request. - Google.Apis.Compute.alpha.Data.TestPermissionsRequest Body { get; set; } - - /// Returns the body of the request. - protected override object GetBody() => Body; - - /// Gets the method name. - public override string MethodName => "testIamPermissions"; - - /// Gets the HTTP method. - public override string HttpMethod => "POST"; - - /// Gets the REST path. - public override string RestPath => "projects/{project}/regions/{region}/vpnTunnels/{resource}/testIamPermissions"; - - /// Initializes TestIamPermissions parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("project", new Google.Apis.Discovery.Parameter - { - Name = "project", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - }); - RequestParameters.Add("region", new Google.Apis.Discovery.Parameter + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter { - Name = "region", - IsRequired = true, - ParameterType = "path", + Name = "updateMask", + IsRequired = false, + ParameterType = "query", DefaultValue = null, - Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + Pattern = null, }); - RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter + RequestParameters.Add("validateOnly", new Google.Apis.Discovery.Parameter { - Name = "resource", - IsRequired = true, - ParameterType = "path", + Name = "validateOnly", + IsRequired = false, + ParameterType = "query", DefaultValue = null, - Pattern = @"[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + Pattern = null, }); } } @@ -105496,15 +106973,11 @@ public class AllocationReservationSharingPolicy : Google.Apis.Requests.IDirectRe /// [Output Only] Contains output only fields. public class AllocationResourceStatus : Google.Apis.Requests.IDirectResponseSchema { - /// Indicates number of blocks for accelerator optimized family (applicable beyond A3 only). + /// The number of reservation blocks associated with this reservation. [Newtonsoft.Json.JsonPropertyAttribute("reservationBlockCount")] public virtual System.Nullable ReservationBlockCount { get; set; } - /// - /// Maintenance information for the group of hosts on this reservation including running VMs and unused hosts. - /// Applicable only to accelerator optimized VM families beyond A3 only. For both DENSE or STANDARD reservation, - /// granular maintenance information can be retried at reservation block level. - /// + /// Maintenance information for this reservation [Newtonsoft.Json.JsonPropertyAttribute("reservationMaintenance")] public virtual GroupMaintenanceInfo ReservationMaintenance { get; set; } @@ -105629,6 +107102,18 @@ public class AllocationSpecificSKUReservation : Google.Apis.Requests.IDirectResp public virtual string ETag { get; set; } } + public class AsyncReplicationStatus : Google.Apis.Requests.IDirectResponseSchema + { + [Newtonsoft.Json.JsonPropertyAttribute("diskPairReplicationState")] + public virtual DiskPairReplicationState DiskPairReplicationState { get; set; } + + [Newtonsoft.Json.JsonPropertyAttribute("lastReplicationDetails")] + public virtual ReplicationDetails LastReplicationDetails { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// An instance-attached disk resource. public class AttachedDisk : Google.Apis.Requests.IDirectResponseSchema { @@ -109924,6 +111409,139 @@ public class CorsPolicy : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + /// + /// A resource that represents a cross-site network. You can use cross-site networks to connect your on-premises + /// networks to each other through Interconnect connections. + /// + public class CrossSiteNetwork : Google.Apis.Requests.IDirectResponseSchema + { + /// [Output Only] Creation timestamp in RFC3339 text format. + [Newtonsoft.Json.JsonPropertyAttribute("creationTimestamp")] + public virtual string CreationTimestamp { get; set; } + + /// An optional description of the cross-site network. + [Newtonsoft.Json.JsonPropertyAttribute("description")] + public virtual string Description { get; set; } + + /// + /// [Output Only] The unique identifier for the resource type. The server generates this identifier. + /// + [Newtonsoft.Json.JsonPropertyAttribute("id")] + public virtual System.Nullable Id { get; set; } + + /// + /// [Output Only] Type of the resource. Always compute#crossSiteNetwork for cross-site networks. + /// + [Newtonsoft.Json.JsonPropertyAttribute("kind")] + public virtual string Kind { get; set; } + + /// + /// Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters + /// long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular + /// expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all + /// following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be + /// a dash. + /// + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// [Output Only] Server-defined URL for the resource. + [Newtonsoft.Json.JsonPropertyAttribute("selfLink")] + public virtual string SelfLink { get; set; } + + /// [Output Only] Server-defined URL for this resource with the resource id. + [Newtonsoft.Json.JsonPropertyAttribute("selfLinkWithId")] + public virtual string SelfLinkWithId { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Response to the list request that contains a list of cross-site networks. + public class CrossSiteNetworkList : Google.Apis.Requests.IDirectResponseSchema + { + [Newtonsoft.Json.JsonPropertyAttribute("etag")] + public virtual string ETag { get; set; } + + /// [Output Only] Unique identifier for the resource; defined by the server. + [Newtonsoft.Json.JsonPropertyAttribute("id")] + public virtual string Id { get; set; } + + /// A list of CrossSiteNetwork resources. + [Newtonsoft.Json.JsonPropertyAttribute("items")] + public virtual System.Collections.Generic.IList Items { get; set; } + + /// + /// [Output Only] Type of the resource. Always compute#crossSiteNetwork for cross-site networks. + /// + [Newtonsoft.Json.JsonPropertyAttribute("kind")] + public virtual string Kind { get; set; } + + /// + /// [Output Only] This token allows you to get the next page of results for list requests. If the number of + /// results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the + /// next list request. Subsequent list requests will have their own nextPageToken to continue paging through the + /// results. + /// + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + + /// [Output Only] Server-defined URL for this resource. + [Newtonsoft.Json.JsonPropertyAttribute("selfLink")] + public virtual string SelfLink { get; set; } + + /// [Output Only] Unreachable resources. end_interface: MixerListResponseWithEtagBuilder + [Newtonsoft.Json.JsonPropertyAttribute("unreachables")] + public virtual System.Collections.Generic.IList Unreachables { get; set; } + + /// [Output Only] Informational warning message. + [Newtonsoft.Json.JsonPropertyAttribute("warning")] + public virtual WarningData Warning { get; set; } + + /// [Output Only] Informational warning message. + public class WarningData + { + /// + /// [Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if + /// there are no results in the response. + /// + [Newtonsoft.Json.JsonPropertyAttribute("code")] + public virtual string Code { get; set; } + + /// + /// [Output Only] Metadata about this warning in key: value format. For example: "data": [ { "key": "scope", + /// "value": "zones/us-east1-d" } + /// + [Newtonsoft.Json.JsonPropertyAttribute("data")] + public virtual System.Collections.Generic.IList Data { get; set; } + + /// [Output Only] A human-readable description of the warning code. + [Newtonsoft.Json.JsonPropertyAttribute("message")] + public virtual string Message { get; set; } + + /// + /// [Output Only] Metadata about this warning in key: value format. For example: "data": [ { "key": "scope", + /// "value": "zones/us-east1-d" } + /// + public class DataData + { + /// + /// [Output Only] A key that provides more detail on the warning being returned. For example, for + /// warnings where there are no results in a list request for a particular zone, this key might be scope + /// and the key value might be the zone name. Other examples might be a key indicating a deprecated + /// resource and a suggested replacement, or a warning about invalid network settings (for example, if + /// an instance attempts to perform IP forwarding but is not enabled for IP forwarding). + /// + [Newtonsoft.Json.JsonPropertyAttribute("key")] + public virtual string Key { get; set; } + + /// [Output Only] A warning data value corresponding to the key. + [Newtonsoft.Json.JsonPropertyAttribute("value")] + public virtual string Value { get; set; } + } + } + } + /// /// Specifies the custom error response policy that must be applied when the backend service or backend bucket /// responds with an error. @@ -110798,6 +112416,29 @@ public class DiskMoveRequest : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + public class DiskPairReplicationState : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// [Output Only] The status of disk creation. - ASYNC_REPLICATION_STATE_INITIALIZING: The device is doing the + /// initial replication after starting the replication. - ASYNC_REPLICATION_STATE_REPLICATING_HEALTHY: The + /// primary disk is healthily replicating to the secondary device i.e. last_replication_time is within RPO. - + /// ASYNC_REPLICATION_STATE_REPLICATING_BEHIND: The replication is lagging above the SLO limit due to some + /// internal issue. - ASYNC_REPLICATION_STATE_REPLICATING_UNHEALTHY: The replication is lagging, and the RPO is + /// not being met due to some internal issue. . - ASYNC_REPLICATION_STATE_REPLICATION_STUCK: The replication is + /// completely stuck due to some internal error. - ASYNC_REPLICATION_STATE_STOPPING: The replication is under + /// the process of being stopped. This is a transient state. - ASYNC_REPLICATION_STATE_STOPPED: The replication + /// between the disk-pairs have stopped. + /// + [Newtonsoft.Json.JsonPropertyAttribute("dataReplicationState")] + public virtual string DataReplicationState { get; set; } + + [Newtonsoft.Json.JsonPropertyAttribute("replicationDiskPair")] + public virtual ReplicationDiskPair ReplicationDiskPair { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Additional disk params. public class DiskParams : Google.Apis.Requests.IDirectResponseSchema { @@ -113363,10 +115004,7 @@ public class FutureReservation : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("reservationName")] public virtual string ReservationName { get; set; } - /// - /// Indicates the maintenance type for this group of VMs. This will be set on the reservation via FR, and will - /// be inherited for reservation blocks. - /// + /// Maintenance information for this reservation [Newtonsoft.Json.JsonPropertyAttribute("schedulingType")] public virtual string SchedulingType { get; set; } @@ -113920,6 +115558,16 @@ public class GRPCTLSHealthCheck : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + public class GetAsyncReplicationStatusResponse : Google.Apis.Requests.IDirectResponseSchema + { + [Newtonsoft.Json.JsonPropertyAttribute("asyncReplicationStatus")] + public virtual AsyncReplicationStatus AsyncReplicationStatus { get; set; } + + /// end_interface: MixerGetResponseWithEtagBuilder + [Newtonsoft.Json.JsonPropertyAttribute("etag")] + public virtual string ETag { get; set; } + } + public class GetOwnerInstanceResponse : Google.Apis.Requests.IDirectResponseSchema { /// Full instance resource URL. @@ -114042,8 +115690,8 @@ public class GlobalSetPolicyRequest : Google.Apis.Requests.IDirectResponseSchema public class GroupMaintenanceInfo : Google.Apis.Requests.IDirectResponseSchema { /// - /// Indicates if this group of VMs have opportunistic maintenance enabled. This will be set on the reservation, - /// and will be inherited for reservation blocks. + /// This setting enables or disables opportunistic maintenance. If enabled, maintenance is performed on unused + /// reservations whenever possible. /// [Newtonsoft.Json.JsonPropertyAttribute("enableOpportunisticMaintenance")] public virtual System.Nullable EnableOpportunisticMaintenance { get; set; } @@ -114062,10 +115710,7 @@ public class GroupMaintenanceInfo : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("maintenancePendingCount")] public virtual System.Nullable MaintenancePendingCount { get; set; } - /// - /// Indicates the maintenance type for this group of VMs. This will be set on the reservation, and will be - /// inherited for reservation blocks. - /// + /// The type of maintenance for the reservation. [Newtonsoft.Json.JsonPropertyAttribute("schedulingType")] public virtual string SchedulingType { get; set; } @@ -120355,7 +122000,7 @@ public class InstancesBulkInsertOperationMetadata : Google.Apis.Requests.IDirect public class InstancesGetEffectiveFirewallsResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Effective firewalls from firewall policies. + /// [Output Only] Effective firewalls from firewall policies. [Newtonsoft.Json.JsonPropertyAttribute("firewallPolicys")] public virtual System.Collections.Generic.IList FirewallPolicys { get; set; } @@ -120387,7 +122032,10 @@ public class InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy : Goo [Newtonsoft.Json.JsonPropertyAttribute("priority")] public virtual System.Nullable Priority { get; set; } - /// The rules that apply to the network. + /// + /// [Output Only] The rules that apply to the instance. Only rules that target the specific VM instance are + /// returned if target service accounts or target secure tags are specified in the rules. + /// [Newtonsoft.Json.JsonPropertyAttribute("rules")] public virtual System.Collections.Generic.IList Rules { get; set; } @@ -121205,7 +122853,7 @@ public class Int64RangeMatch : Google.Apis.Requests.IDirectResponseSchema /// public class Interconnect : Google.Apis.Requests.IDirectResponseSchema { - /// Enable or disable the Application Aware Interconnect(AAI) feature on this interconnect. + /// Enable or disable the application awareness feature on this Cloud Interconnect. [Newtonsoft.Json.JsonPropertyAttribute("aaiEnabled")] public virtual System.Nullable AaiEnabled { get; set; } @@ -121217,10 +122865,7 @@ public class Interconnect : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("adminEnabled")] public virtual System.Nullable AdminEnabled { get; set; } - /// - /// Configuration for enabling Application Aware Interconnect (AAI) on this Cloud Interconnect connection - /// between Google and your on-premises router. - /// + /// Configuration information for application awareness on this Cloud Interconnect. [Newtonsoft.Json.JsonPropertyAttribute("applicationAwareInterconnect")] public virtual InterconnectApplicationAwareInterconnect ApplicationAwareInterconnect { get; set; } @@ -121435,16 +123080,13 @@ public class Interconnect : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } - /// - /// Configuration information for enabling Application Aware Interconnect (AAI) on this Cloud Interconnect - /// connection between Google and your on-premises router. - /// + /// Configuration information for application awareness on this Cloud Interconnect. public class InterconnectApplicationAwareInterconnect : Google.Apis.Requests.IDirectResponseSchema { [Newtonsoft.Json.JsonPropertyAttribute("bandwidthPercentagePolicy")] public virtual InterconnectApplicationAwareInterconnectBandwidthPercentagePolicy BandwidthPercentagePolicy { get; set; } - /// A description for the AAI profile on this interconnect. + /// Description for the application awareness profile on this Cloud Interconnect. [Newtonsoft.Json.JsonPropertyAttribute("profileDescription")] public virtual string ProfileDescription { get; set; } @@ -125660,14 +127302,13 @@ public class MultiMigPart : Google.Apis.Requests.IDirectResponseSchema } /// - /// Resource policies message for a multi-MIG. Represents low level machine cluster behavior in several dimensions, - /// all of which depend on the machine family and fleet. + /// Resource policies message for a multi-MIG. Specifies the workload policy configuration of the multi-MIG. /// public class MultiMigResourcePolicies : Google.Apis.Requests.IDirectResponseSchema { /// - /// The URL of the workload policy that is specified for this multi-MIG. It can be a full or partial URL. For - /// example, the following are all valid URLs to a workload policy: - + /// The URL of the workload policy for this multi-MIG. It can be a full or partial URL. For example, the + /// following are all valid URLs to a workload policy: - /// https://www.googleapis.com/compute/v1/projects/project/regions/region /resourcePolicies/resourcePolicy - /// projects/project/regions/region/resourcePolicies/resourcePolicy - /// regions/region/resourcePolicies/resourcePolicy @@ -125710,7 +127351,7 @@ public class MultiMigsList : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("id")] public virtual string Id { get; set; } - /// A list of multi-MIG resources. + /// A list of multi-MIGs in the specified project and region. [Newtonsoft.Json.JsonPropertyAttribute("items")] public virtual System.Collections.Generic.IList Items { get; set; } @@ -128089,7 +129730,11 @@ public class NetworksAddPeeringRequest : Google.Apis.Requests.IDirectResponseSch public class NetworksGetEffectiveFirewallsResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Effective firewalls from firewall policy. + /// + /// [Output Only] Effective firewalls from firewall policy. It returns Global Network Firewall Policies and + /// Hierarchical Firewall Policies. Use regionNetworkFirewallPolicies.getEffectiveFirewalls to get Regional + /// Network Firewall Policies as well. + /// [Newtonsoft.Json.JsonPropertyAttribute("firewallPolicys")] public virtual System.Collections.Generic.IList FirewallPolicys { get; set; } @@ -128121,7 +129766,7 @@ public class NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy : Goog [Newtonsoft.Json.JsonPropertyAttribute("priority")] public virtual System.Nullable Priority { get; set; } - /// The rules that apply to the network. + /// [Output Only] The rules that apply to the network. [Newtonsoft.Json.JsonPropertyAttribute("rules")] public virtual System.Collections.Generic.IList Rules { get; set; } @@ -133809,7 +135454,11 @@ public class RegionNetworkEndpointGroupsDetachEndpointsRequest : Google.Apis.Req public class RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Effective firewalls from firewall policy. + /// + /// [Output only] Effective firewalls from firewall policy. It applies to Regional Network Firewall Policies in + /// the specified region, Global Network Firewall Policies and Hierachial Firewall Policies which are associated + /// with the network. + /// [Newtonsoft.Json.JsonPropertyAttribute("firewallPolicys")] public virtual System.Collections.Generic.IList FirewallPolicys { get; set; } @@ -133835,7 +135484,7 @@ public class RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffective [Newtonsoft.Json.JsonPropertyAttribute("priority")] public virtual System.Nullable Priority { get; set; } - /// The rules that apply to the network. + /// [Output only] The rules that apply to the network. [Newtonsoft.Json.JsonPropertyAttribute("rules")] public virtual System.Collections.Generic.IList Rules { get; set; } @@ -133912,6 +135561,82 @@ public class RegionUrlMapsValidateRequest : Google.Apis.Requests.IDirectResponse public virtual string ETag { get; set; } } + public class RegionWaitForReplicationCatchUpRequest : Google.Apis.Requests.IDirectResponseSchema + { + [Newtonsoft.Json.JsonPropertyAttribute("maxWaitDuration")] + public virtual object MaxWaitDuration { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + public class ReplicationDetails : Google.Apis.Requests.IDirectResponseSchema + { + private string _lastReplicationTimeRaw; + + private object _lastReplicationTime; + + /// The last sync time of the device pair. + [Newtonsoft.Json.JsonPropertyAttribute("lastReplicationTime")] + public virtual string LastReplicationTimeRaw + { + get => _lastReplicationTimeRaw; + set + { + _lastReplicationTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _lastReplicationTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use LastReplicationTimeDateTimeOffset instead.")] + public virtual object LastReplicationTime + { + get => _lastReplicationTime; + set + { + _lastReplicationTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _lastReplicationTime = value; + } + } + + /// + /// representation of . + /// + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? LastReplicationTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(LastReplicationTimeRaw); + set => LastReplicationTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// + /// Replication lag in seconds. This will only be populated if device is in replicating state. Note that the + /// value is calculated sometime during request processing and at the instant the client receives the response, + /// the current replication_lag may have changed. + /// + [Newtonsoft.Json.JsonPropertyAttribute("secondsSinceLastReplication")] + public virtual System.Nullable SecondsSinceLastReplication { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + public class ReplicationDiskPair : Google.Apis.Requests.IDirectResponseSchema + { + /// URL of the primary disk. + [Newtonsoft.Json.JsonPropertyAttribute("primaryDisk")] + public virtual string PrimaryDisk { get; set; } + + /// URL of the secondary disk. + [Newtonsoft.Json.JsonPropertyAttribute("secondaryDisk")] + public virtual string SecondaryDisk { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// /// A policy that specifies how requests intended for the route's backends are shadowed to a separate mirrored /// backend service. The load balancer doesn't wait for responses from the shadow service. Before sending traffic to @@ -133985,7 +135710,10 @@ public class Reservation : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("id")] public virtual System.Nullable Id { get; set; } - /// Instance termination action that will be invoked when the reservation is deleted. + /// + /// Instance termination action is invoked when the reservation is deleted. This only applies to reservations + /// with a Deployment type. + /// [Newtonsoft.Json.JsonPropertyAttribute("instanceTerminationAction")] public virtual string InstanceTerminationAction { get; set; } @@ -134051,7 +135779,11 @@ public class Reservation : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("specificReservationRequired")] public virtual System.Nullable SpecificReservationRequired { get; set; } - /// [Output Only] The status of the reservation. + /// + /// [Output Only] The status of the reservation. - CREATING: Reservation resources are being allocated. - READY: + /// Reservation resources have been allocated, and the reservation is ready for use. - DELETING: Reservation + /// deletion is in progress. - UPDATING: Reservation update is in progress. + /// [Newtonsoft.Json.JsonPropertyAttribute("status")] public virtual string Status { get; set; } @@ -134181,10 +135913,7 @@ public class DataData /// Represents a reservation block resource. public class ReservationBlock : Google.Apis.Requests.IDirectResponseSchema { - /// - /// [Output Only] Specifies the number of resources that are allocated in this block. It indicates the maximum - /// number of VMs that a user can run on this particular block. - /// + /// [Output Only] The number of resources that are allocated in this reservation block. [Newtonsoft.Json.JsonPropertyAttribute("count")] public virtual System.Nullable Count { get; set; } @@ -134198,7 +135927,9 @@ public class ReservationBlock : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("id")] public virtual System.Nullable Id { get; set; } - /// [Output Only] Indicates how many instances are in use on this block. + /// + /// [Output Only] The number of instances that are currently in use on this reservation block. + /// [Newtonsoft.Json.JsonPropertyAttribute("inUseCount")] public virtual System.Nullable InUseCount { get; set; } @@ -134223,11 +135954,11 @@ public class ReservationBlock : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } - /// - /// [Output Only] Maintenance information for the group of hosts on this reservation including running VMs and - /// unused hosts. Applicable only to accelerator optimized VM families beyond A3 only. For both DENSE or - /// STANDARD reservation, granular maintenance information can be retried at reservation block level. - /// + /// [Output Only] The physical topology of the reservation block. + [Newtonsoft.Json.JsonPropertyAttribute("physicalHostTopology")] + public virtual ReservationBlockPhysicalTopology PhysicalHostTopology { get; set; } + + /// [Output Only] Maintenance information for this reservation block. [Newtonsoft.Json.JsonPropertyAttribute("reservationMaintenance")] public virtual GroupMaintenanceInfo ReservationMaintenance { get; set; } @@ -134251,6 +135982,20 @@ public class ReservationBlock : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + public class ReservationBlockPhysicalTopology : Google.Apis.Requests.IDirectResponseSchema + { + /// The hash of the capacity block within the cluster. + [Newtonsoft.Json.JsonPropertyAttribute("block")] + public virtual string Block { get; set; } + + /// The cluster name of the reservation block. + [Newtonsoft.Json.JsonPropertyAttribute("cluster")] + public virtual string Cluster { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + public class ReservationBlocksGetResponse : Google.Apis.Requests.IDirectResponseSchema { [Newtonsoft.Json.JsonPropertyAttribute("resource")] @@ -147851,6 +149596,15 @@ public class WafExpressionSetExpression : Google.Apis.Requests.IDirectResponseSc public virtual string ETag { get; set; } } + public class WaitForReplicationCatchUpRequest : Google.Apis.Requests.IDirectResponseSchema + { + [Newtonsoft.Json.JsonPropertyAttribute("maxWaitDuration")] + public virtual object MaxWaitDuration { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// /// In contrast to a single BackendService in HttpRouteAction to which all matching traffic is directed to, /// WeightedBackendService allows traffic to be split across multiple backend services. The volume of traffic for @@ -147891,6 +149645,372 @@ public class WeightedBackendService : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + /// A pseudowire that connects two Interconnect connections. + public class Wire : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// [Output Only] Indicates whether the wire is enabled. When false, the wire is disabled. When true and when + /// the wire group of the wire is also enabled, the wire is enabled. Defaults to true. + /// + [Newtonsoft.Json.JsonPropertyAttribute("adminEnabled")] + public virtual System.Nullable AdminEnabled { get; set; } + + /// Wire endpoints are specific Interconnect connections. + [Newtonsoft.Json.JsonPropertyAttribute("endpoints")] + public virtual System.Collections.Generic.IList Endpoints { get; set; } + + /// + /// [Output Only] A label that identifies the wire. The format of this label combines the existing labels of the + /// wire group endpoints and Interconnect connections used by this wire in alphabetical order as follows: + /// `ENDPOINT_A+CONNECTION_A1,ENDPOINT_B+CONNECTION_B1`, where: - ENDPOINT_A and ENDPOINT_B: are the labels that + /// you entered as map keys when you specified the wire group endpoint objects. - CONNECTION_A1 and + /// CONNECTION_B1: are the labels that you entered as map keys when you specified the wire group Interconnect + /// objects. + /// + [Newtonsoft.Json.JsonPropertyAttribute("label")] + public virtual string Label { get; set; } + + /// [Output Only] Properties of the wire. + [Newtonsoft.Json.JsonPropertyAttribute("wireProperties")] + public virtual WireProperties WireProperties { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Wire endpoints are specific Interconnect connections. + public class WireEndpoint : Google.Apis.Requests.IDirectResponseSchema + { + [Newtonsoft.Json.JsonPropertyAttribute("interconnect")] + public virtual string Interconnect { get; set; } + + [Newtonsoft.Json.JsonPropertyAttribute("vlanTag")] + public virtual System.Nullable VlanTag { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// A resource that represents a group of redundant wires. + public class WireGroup : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Indicates whether the wires in the wire group are enabled. When false, the wires in the wire group are + /// disabled. When true and when there is simultaneously no wire-specific override of `adminEnabled` to false, a + /// given wire is enabled. Defaults to true. + /// + [Newtonsoft.Json.JsonPropertyAttribute("adminEnabled")] + public virtual System.Nullable AdminEnabled { get; set; } + + /// [Output Only] Creation timestamp in RFC3339 text format. + [Newtonsoft.Json.JsonPropertyAttribute("creationTimestamp")] + public virtual string CreationTimestamp { get; set; } + + /// An optional description of the wire group. + [Newtonsoft.Json.JsonPropertyAttribute("description")] + public virtual string Description { get; set; } + + /// + /// A map that contains the logical endpoints of the wire group. Specify key-value pairs for the map as follows: + /// - Key: an RFC1035 user-specified label. - Value: an Endpoint object. + /// + [Newtonsoft.Json.JsonPropertyAttribute("endpoints")] + public virtual System.Collections.Generic.IDictionary Endpoints { get; set; } + + /// + /// [Output Only] The unique identifier for the resource type. The server generates this identifier. + /// + [Newtonsoft.Json.JsonPropertyAttribute("id")] + public virtual System.Nullable Id { get; set; } + + /// [Output Only] Type of the resource. Always compute#wireGroups for wire groups. + [Newtonsoft.Json.JsonPropertyAttribute("kind")] + public virtual string Kind { get; set; } + + /// + /// Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters + /// long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular + /// expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all + /// following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be + /// a dash. + /// + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// [Output Only] Server-defined URL for the resource. + [Newtonsoft.Json.JsonPropertyAttribute("selfLink")] + public virtual string SelfLink { get; set; } + + [Newtonsoft.Json.JsonPropertyAttribute("selfLinkWithId")] + public virtual string SelfLinkWithId { get; set; } + + /// Service level details determined for the wire group configuration. + [Newtonsoft.Json.JsonPropertyAttribute("serviceLevel")] + public virtual WireGroupServiceLevel ServiceLevel { get; set; } + + /// Properties of the wire group. + [Newtonsoft.Json.JsonPropertyAttribute("wireGroupProperties")] + public virtual WireGroupProperties WireGroupProperties { get; set; } + + /// + /// A map that contains optional settings for individual wires. Specify key-value pairs for the map as follows: + /// - Key: the label of an existing wire. To view a wire label and its format, see the wires[].label field. - + /// Value: a WireInputs object. + /// + [Newtonsoft.Json.JsonPropertyAttribute("wireInputs")] + public virtual System.Collections.Generic.IDictionary WireInputs { get; set; } + + /// Properties for all wires in the wire group. + [Newtonsoft.Json.JsonPropertyAttribute("wireProperties")] + public virtual WireProperties WireProperties { get; set; } + + /// The single/redundant wire(s) managed by the wire group. + [Newtonsoft.Json.JsonPropertyAttribute("wires")] + public virtual System.Collections.Generic.IList Wires { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// A logical endpoint for the wire group. An endpoint represents a metro that contains redundant Interconnect + /// connections. A wire group is created between two endpoints. + /// + public class WireGroupEndpoint : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// A map that contains the redundant Interconnect connections. Specify key-value pairs for the map as follows: + /// - Key: an RFC1035 user-specified label. - Value: an Interconnect object. + /// + [Newtonsoft.Json.JsonPropertyAttribute("interconnects")] + public virtual System.Collections.Generic.IDictionary Interconnects { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The redundant Interconnect connections for this endpoint. + public class WireGroupEndpointInterconnect : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// An Interconnect connection. You can specify the connection as a partial or full URL. If the connection is in + /// a different project from the cross-site network, use a format that specifies the project. See the following + /// examples of partial and full URLs: global/interconnects/NAME projects/PROJECT_ID/global/interconnects/NAME - + /// https://compute.googleapis.com/compute/projects/PROJECT_ID /global/interconnects/NAME + /// + [Newtonsoft.Json.JsonPropertyAttribute("interconnect")] + public virtual string Interconnect { get; set; } + + /// + /// To configure the wire group for VLAN mode, enter a VLAN tag, which is a number from `2` to `4093`. You can + /// autoallocate a tag by entering `0`. To configure the wire group for port mode, enter `-1`. Review the + /// following guidelines: - A VLAN tag must be unique for an Interconnect connection across all attachments and + /// wire groups. - Both endpoints of a wire must use the same VLAN tag value. - Single wire and redundant type + /// wire groups must have only one VLAN tag. - Box and cross type wire groups must have two VLAN tags. The first + /// is for the same-zone pseudowire, and the second is for the cross-zone pseudowire. - Port mode pseudowires + /// must configure a value of `-1` for both endpoints. + /// + [Newtonsoft.Json.JsonPropertyAttribute("vlanTags")] + public virtual System.Collections.Generic.IList> VlanTags { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Response for the list request. + public class WireGroupList : Google.Apis.Requests.IDirectResponseSchema + { + [Newtonsoft.Json.JsonPropertyAttribute("etag")] + public virtual string ETag { get; set; } + + /// [Output Only] Unique identifier for the resource; defined by the server. + [Newtonsoft.Json.JsonPropertyAttribute("id")] + public virtual string Id { get; set; } + + /// A list of wire group resources. + [Newtonsoft.Json.JsonPropertyAttribute("items")] + public virtual System.Collections.Generic.IList Items { get; set; } + + /// [Output Only] Type of the resource. Always compute#wireGroups for wire groups. + [Newtonsoft.Json.JsonPropertyAttribute("kind")] + public virtual string Kind { get; set; } + + /// + /// [Output Only] This token allows you to get the next page of results for list requests. If the number of + /// results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the + /// next list request. Subsequent list requests will have their own nextPageToken to continue paging through the + /// results. + /// + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + + /// [Output Only] Server-defined URL for this resource. + [Newtonsoft.Json.JsonPropertyAttribute("selfLink")] + public virtual string SelfLink { get; set; } + + /// [Output Only] Unreachable resources. end_interface: MixerListResponseWithEtagBuilder + [Newtonsoft.Json.JsonPropertyAttribute("unreachables")] + public virtual System.Collections.Generic.IList Unreachables { get; set; } + + /// [Output Only] Informational warning message. + [Newtonsoft.Json.JsonPropertyAttribute("warning")] + public virtual WarningData Warning { get; set; } + + /// [Output Only] Informational warning message. + public class WarningData + { + /// + /// [Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if + /// there are no results in the response. + /// + [Newtonsoft.Json.JsonPropertyAttribute("code")] + public virtual string Code { get; set; } + + /// + /// [Output Only] Metadata about this warning in key: value format. For example: "data": [ { "key": "scope", + /// "value": "zones/us-east1-d" } + /// + [Newtonsoft.Json.JsonPropertyAttribute("data")] + public virtual System.Collections.Generic.IList Data { get; set; } + + /// [Output Only] A human-readable description of the warning code. + [Newtonsoft.Json.JsonPropertyAttribute("message")] + public virtual string Message { get; set; } + + /// + /// [Output Only] Metadata about this warning in key: value format. For example: "data": [ { "key": "scope", + /// "value": "zones/us-east1-d" } + /// + public class DataData + { + /// + /// [Output Only] A key that provides more detail on the warning being returned. For example, for + /// warnings where there are no results in a list request for a particular zone, this key might be scope + /// and the key value might be the zone name. Other examples might be a key indicating a deprecated + /// resource and a suggested replacement, or a warning about invalid network settings (for example, if + /// an instance attempts to perform IP forwarding but is not enabled for IP forwarding). + /// + [Newtonsoft.Json.JsonPropertyAttribute("key")] + public virtual string Key { get; set; } + + /// [Output Only] A warning data value corresponding to the key. + [Newtonsoft.Json.JsonPropertyAttribute("value")] + public virtual string Value { get; set; } + } + } + } + + /// + /// The properties of a wire group. These properties determine how a group of redundant wires are created and + /// managed. + /// + public class WireGroupProperties : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// The type of the wire group, one of the following: - WIRE: a single pseudowire over two Interconnect + /// connections with no redundancy. - REDUNDANT: two pseudowires over four Interconnect connections, with two + /// connections in one metro and two connections in another metro. Each redundant pair of Interconnect + /// connections spans both edge availability domains of the metro. Each pseudowire connects Interconnect + /// connections in matching edge availability domains of the two metros. - BOX_AND_CROSS: four pseudowires over + /// four Interconnect connections, with two connections in one metro and two connections in another metro. Each + /// redundant pair of Interconnect connections spans both edge availability domains of the metro. Two + /// pseudowires connect Interconnect connections in matching edge availability domains of the two metros. Two + /// additional pseudowires connect the non-matching edge availability domains of the two metros. + /// + [Newtonsoft.Json.JsonPropertyAttribute("type")] + public virtual string Type { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Service level details determined for the wire group configuration. + public class WireGroupServiceLevel : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// [Output Only] The availability SLA that the wire group qualifies for. One of the following: + /// `NO_AVAILABILITY_SLA`, `AVAILABILITY_99`, or `AVAILABILITY_999`. + /// + [Newtonsoft.Json.JsonPropertyAttribute("availabilityClass")] + public virtual string AvailabilityClass { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// Optional settings for individual wires. Allows wire-level control that can be useful for migration purposes. If + /// you use this field, you opt-out of the SLA for the wire group. + /// + public class WireGroupWireInputs : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Indicates whether the wire is enabled. When false, the wire is disabled. When true and when the wire group + /// of the wire is also enabled, the wire is enabled. Defaults to true. + /// + [Newtonsoft.Json.JsonPropertyAttribute("adminEnabled")] + public virtual System.Nullable AdminEnabled { get; set; } + + /// + /// The overridden properties for the wire. Any properties that are not overridden are omitted from the object. + /// Review the following guidelines: - If you apply wire overrides to a wire and its wire group bandwidth + /// configuration is set to `SHARED_WITH_WIRE_GROUP`, the `meteredBandwidth` and `unmeteredBandwidth` properties + /// must not differ from the wire group. - Overrides generate a `configurationNotice`. Ensure that differences + /// in wire configuration are temporary. An example use case for wire overrides is slowly rolling out + /// configuration changes to individual wires in a wire group. + /// + [Newtonsoft.Json.JsonPropertyAttribute("wirePropertyOverrides")] + public virtual WireProperties WirePropertyOverrides { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The properties of a wire. + public class WireProperties : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// The configuration of the bandwidth allocation, one of the following: - ALLOCATE_PER_WIRE: configures a + /// separate unmetered bandwidth allocation (and associated charges) for each wire in the group. - + /// SHARED_WITH_WIRE_GROUP: configures one unmetered bandwidth allocation for the wire group. The unmetered + /// bandwidth is divided equally across each wire in the group, but dynamic throttling reallocates unused + /// unmetered bandwidth from unused or underused wires to other wires in the group. For example, with a + /// four-wire box-and-cross group, when one Interconnect connection is down, the unmetered bandwidth of the two + /// down wires is reallocated to the remaining up wires. + /// + [Newtonsoft.Json.JsonPropertyAttribute("bandwidthAllocation")] + public virtual string BandwidthAllocation { get; set; } + + /// + /// The metered bandwidth in Gigabits per second, using decimal units. `10` is 10 Gbps, `100` is 100 Gbps. The + /// default value is `0`. You can specify unlimited bandwidth by entering `-1`. However, actual data transfer is + /// limited by the port speed. + /// + [Newtonsoft.Json.JsonPropertyAttribute("bandwidthMetered")] + public virtual System.Nullable BandwidthMetered { get; set; } + + /// + /// The unmetered bandwidth in Gigabits per second, using decimal units. `10` is 10 Gbps, `100` is 100 Gbps. + /// Must be a multiple of 10. + /// + [Newtonsoft.Json.JsonPropertyAttribute("bandwidthUnmetered")] + public virtual System.Nullable BandwidthUnmetered { get; set; } + + /// + /// Response when a fault is detected in a pseudowire: - NONE: default. - DISABLE_PORT: set the port line + /// protocol down when inline probes detect a fault. This setting is only permitted on port mode pseudowires. + /// + [Newtonsoft.Json.JsonPropertyAttribute("faultResponse")] + public virtual string FaultResponse { get; set; } + + /// The network service class. + [Newtonsoft.Json.JsonPropertyAttribute("networkServiceClass")] + public virtual string NetworkServiceClass { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + public class XpnHostList : Google.Apis.Requests.IDirectResponseSchema { /// [Output Only] Unique identifier for the resource; defined by the server. diff --git a/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.csproj b/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.csproj index c8d603345b4..2125554f2f8 100644 --- a/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.csproj +++ b/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.csproj @@ -3,7 +3,7 @@ Google.Apis.Compute.alpha Client Library - 1.68.0.3561 + 1.68.0.3568 Google LLC Copyright 2024 Google LLC Google From 38106b73e7b047e1528d3f1b2097fa856b5f8d6c Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:29 -0700 Subject: [PATCH 13/61] feat: Generate Google.Apis.Compute.beta version 1.68.0.3568 --- DiscoveryJson/compute.beta.json | 113 +++++++++++++++--- .../Google.Apis.Compute.beta.cs | 110 +++++++++++++++-- .../Google.Apis.Compute.beta.csproj | 2 +- 3 files changed, 196 insertions(+), 29 deletions(-) diff --git a/DiscoveryJson/compute.beta.json b/DiscoveryJson/compute.beta.json index 76c03c6e323..47fb2348d7b 100644 --- a/DiscoveryJson/compute.beta.json +++ b/DiscoveryJson/compute.beta.json @@ -27765,7 +27765,7 @@ ] }, "get": { - "description": "Returns the specified multi-MIG resource.", + "description": "Returns all the details of a specific multi-MIG.", "flatPath": "projects/{project}/regions/{region}/multiMigs/{multiMig}", "httpMethod": "GET", "id": "compute.regionMultiMigs.get", @@ -27832,7 +27832,7 @@ "type": "string" }, "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents you from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" } @@ -42526,7 +42526,7 @@ } } }, - "revision": "20241001", + "revision": "20241008", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -59949,7 +59949,7 @@ "id": "InstancesGetEffectiveFirewallsResponse", "properties": { "firewallPolicys": { - "description": "Effective firewalls from firewall policies.", + "description": "[Output Only] Effective firewalls from firewall policies.", "items": { "$ref": "InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy" }, @@ -59990,7 +59990,7 @@ "type": "integer" }, "rules": { - "description": "The rules that apply to the network.", + "description": "[Output Only] The rules that apply to the instance. Only rules that target the specific VM instance are returned if target service accounts or target secure tags are specified in the rules.", "items": { "$ref": "FirewallPolicyRule" }, @@ -60910,10 +60910,18 @@ "description": "Represents an Interconnect resource. An Interconnect resource is a dedicated connection between the Google Cloud network and your on-premises network. For more information, read the Dedicated Interconnect Overview.", "id": "Interconnect", "properties": { + "aaiEnabled": { + "description": "Enable or disable the application awareness feature on this Cloud Interconnect.", + "type": "boolean" + }, "adminEnabled": { "description": "Administrative status of the interconnect. When this is set to true, the Interconnect is functional and can carry traffic. When set to false, no packets can be carried over the interconnect and no BGP routes are exchanged over it. By default, the status is set to true.", "type": "boolean" }, + "applicationAwareInterconnect": { + "$ref": "InterconnectApplicationAwareInterconnect", + "description": "Configuration information for application awareness on this Cloud Interconnect." + }, "availableFeatures": { "description": "[Output only] List of features available for this Interconnect connection, which can take one of the following values: - IF_MACSEC If present then the Interconnect connection is provisioned on MACsec capable hardware ports. If not present then the Interconnect connection is provisioned on non-MACsec capable ports and MACsec isn't supported and enabling MACsec fails.", "items": { @@ -61108,6 +61116,81 @@ }, "type": "object" }, + "InterconnectApplicationAwareInterconnect": { + "description": "Configuration information for application awareness on this Cloud Interconnect.", + "id": "InterconnectApplicationAwareInterconnect", + "properties": { + "bandwidthPercentagePolicy": { + "$ref": "InterconnectApplicationAwareInterconnectBandwidthPercentagePolicy" + }, + "profileDescription": { + "description": "Description for the application awareness profile on this Cloud Interconnect.", + "type": "string" + }, + "shapeAveragePercentages": { + "description": "Optional field to specify a list of shape average percentages to be applied in conjunction with StrictPriorityPolicy or BandwidthPercentagePolicy.", + "items": { + "$ref": "InterconnectApplicationAwareInterconnectBandwidthPercentage" + }, + "type": "array" + }, + "strictPriorityPolicy": { + "$ref": "InterconnectApplicationAwareInterconnectStrictPriorityPolicy" + } + }, + "type": "object" + }, + "InterconnectApplicationAwareInterconnectBandwidthPercentage": { + "description": "Specify bandwidth percentages [1-100] for various traffic classes in BandwidthPercentagePolicy. The sum of all percentages must equal 100. All traffic classes must have a percentage value specified.", + "id": "InterconnectApplicationAwareInterconnectBandwidthPercentage", + "properties": { + "percentage": { + "description": "Bandwidth percentage for a specific traffic class.", + "format": "uint32", + "type": "integer" + }, + "trafficClass": { + "description": "TrafficClass whose bandwidth percentage is being specified.", + "enum": [ + "TC1", + "TC2", + "TC3", + "TC4", + "TC5", + "TC6" + ], + "enumDescriptions": [ + "Traffic Class 1, corresponding to DSCP ranges (0-7) 000xxx.", + "Traffic Class 2, corresponding to DSCP ranges (8-15) 001xxx.", + "Traffic Class 3, corresponding to DSCP ranges (16-23) 010xxx.", + "Traffic Class 4, corresponding to DSCP ranges (24-31) 011xxx.", + "Traffic Class 5, corresponding to DSCP ranges (32-47) 10xxxx.", + "Traffic Class 6, corresponding to DSCP ranges (48-63) 11xxxx." + ], + "type": "string" + } + }, + "type": "object" + }, + "InterconnectApplicationAwareInterconnectBandwidthPercentagePolicy": { + "id": "InterconnectApplicationAwareInterconnectBandwidthPercentagePolicy", + "properties": { + "bandwidthPercentages": { + "description": "Specify bandwidth percentages for various traffic classes for queuing type Bandwidth Percent.", + "items": { + "$ref": "InterconnectApplicationAwareInterconnectBandwidthPercentage" + }, + "type": "array" + } + }, + "type": "object" + }, + "InterconnectApplicationAwareInterconnectStrictPriorityPolicy": { + "description": "Specify configuration for StrictPriorityPolicy.", + "id": "InterconnectApplicationAwareInterconnectStrictPriorityPolicy", + "properties": {}, + "type": "object" + }, "InterconnectAttachment": { "description": "Represents an Interconnect Attachment (VLAN) resource. You can use Interconnect attachments (VLANS) to connect your Virtual Private Cloud networks to your on-premises networks through an Interconnect. For more information, read Creating VLAN Attachments.", "id": "InterconnectAttachment", @@ -64820,7 +64903,7 @@ "type": "string" }, "items": { - "description": "A list of multi-MIG resources.", + "description": "A list of multi-MIGs in the specified project and region.", "items": { "$ref": "MultiMig" }, @@ -68007,7 +68090,7 @@ "id": "NetworksGetEffectiveFirewallsResponse", "properties": { "firewallPolicys": { - "description": "Effective firewalls from firewall policy.", + "description": "[Output Only] Effective firewalls from firewall policy. It returns Global Network Firewall Policies and Hierarchical Firewall Policies. Use regionNetworkFirewallPolicies.getEffectiveFirewalls to get Regional Network Firewall Policies as well.", "items": { "$ref": "NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy" }, @@ -68048,7 +68131,7 @@ "type": "integer" }, "rules": { - "description": "The rules that apply to the network.", + "description": "[Output Only] The rules that apply to the network.", "items": { "$ref": "FirewallPolicyRule" }, @@ -75551,7 +75634,7 @@ "id": "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse", "properties": { "firewallPolicys": { - "description": "Effective firewalls from firewall policy.", + "description": "[Output only] Effective firewalls from firewall policy. It applies to Regional Network Firewall Policies in the specified region, Global Network Firewall Policies and Hierachial Firewall Policies which are associated with the network.", "items": { "$ref": "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy" }, @@ -75584,7 +75667,7 @@ "type": "integer" }, "rules": { - "description": "The rules that apply to the network.", + "description": "[Output only] The rules that apply to the network.", "items": { "$ref": "FirewallPolicyRule" }, @@ -75776,7 +75859,7 @@ "type": "boolean" }, "status": { - "description": "[Output Only] The status of the reservation.", + "description": "[Output Only] The status of the reservation. - CREATING: Reservation resources are being allocated. - READY: Reservation resources have been allocated, and the reservation is ready for use. - DELETING: Reservation deletion is in progress. - UPDATING: Reservation update is in progress. ", "enum": [ "CREATING", "DELETING", @@ -75785,11 +75868,11 @@ "UPDATING" ], "enumDescriptions": [ - "Resources are being allocated for the reservation.", - "Reservation is currently being deleted.", + "Reservation resources are being allocated.", + "Reservation deletion is in progress.", "", - "Reservation has allocated all its resources.", - "Reservation is currently being resized." + "Reservation resources have been allocated, and the reservation is ready for use.", + "Reservation update is in progress." ], "type": "string" }, diff --git a/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.cs b/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.cs index 7e4dfa491b7..590b8997105 100644 --- a/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.cs +++ b/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.cs @@ -62967,7 +62967,7 @@ protected override void InitParameters() } } - /// Returns the specified multi-MIG resource. + /// Returns all the details of a specific multi-MIG. /// Project ID for this request. /// Name of the region for this request. /// Name of the multi-MIG resource to return. @@ -62976,7 +62976,7 @@ public virtual GetRequest Get(string project, string region, string multiMig) return new GetRequest(this.service, project, region, multiMig); } - /// Returns the specified multi-MIG resource. + /// Returns all the details of a specific multi-MIG. public class GetRequest : ComputeBaseServiceRequest { /// Constructs a new Get request. @@ -63074,9 +63074,9 @@ public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Co /// request, the server will know to ignore the request if it has already been completed. For example, /// consider a situation where you make an initial request and the request times out. If you make the /// request again with the same request ID, the server can check if original operation with the same request - /// ID was received, and if so, will ignore the second request. This prevents clients from accidentally - /// creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is - /// not supported ( 00000000-0000-0000-0000-000000000000). + /// ID was received, and if so, will ignore the second request. This prevents you from accidentally creating + /// duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not + /// supported ( 00000000-0000-0000-0000-000000000000). /// [Google.Apis.Util.RequestParameterAttribute("requestId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestId { get; set; } @@ -110399,7 +110399,7 @@ public class InstancesBulkInsertOperationMetadata : Google.Apis.Requests.IDirect public class InstancesGetEffectiveFirewallsResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Effective firewalls from firewall policies. + /// [Output Only] Effective firewalls from firewall policies. [Newtonsoft.Json.JsonPropertyAttribute("firewallPolicys")] public virtual System.Collections.Generic.IList FirewallPolicys { get; set; } @@ -110431,7 +110431,10 @@ public class InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy : Goo [Newtonsoft.Json.JsonPropertyAttribute("priority")] public virtual System.Nullable Priority { get; set; } - /// The rules that apply to the network. + /// + /// [Output Only] The rules that apply to the instance. Only rules that target the specific VM instance are + /// returned if target service accounts or target secure tags are specified in the rules. + /// [Newtonsoft.Json.JsonPropertyAttribute("rules")] public virtual System.Collections.Generic.IList Rules { get; set; } @@ -111055,6 +111058,10 @@ public class Int64RangeMatch : Google.Apis.Requests.IDirectResponseSchema /// public class Interconnect : Google.Apis.Requests.IDirectResponseSchema { + /// Enable or disable the application awareness feature on this Cloud Interconnect. + [Newtonsoft.Json.JsonPropertyAttribute("aaiEnabled")] + public virtual System.Nullable AaiEnabled { get; set; } + /// /// Administrative status of the interconnect. When this is set to true, the Interconnect is functional and can /// carry traffic. When set to false, no packets can be carried over the interconnect and no BGP routes are @@ -111063,6 +111070,10 @@ public class Interconnect : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("adminEnabled")] public virtual System.Nullable AdminEnabled { get; set; } + /// Configuration information for application awareness on this Cloud Interconnect. + [Newtonsoft.Json.JsonPropertyAttribute("applicationAwareInterconnect")] + public virtual InterconnectApplicationAwareInterconnect ApplicationAwareInterconnect { get; set; } + /// /// [Output only] List of features available for this Interconnect connection, which can take one of the /// following values: - IF_MACSEC If present then the Interconnect connection is provisioned on MACsec capable @@ -111263,6 +111274,67 @@ public class Interconnect : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + /// Configuration information for application awareness on this Cloud Interconnect. + public class InterconnectApplicationAwareInterconnect : Google.Apis.Requests.IDirectResponseSchema + { + [Newtonsoft.Json.JsonPropertyAttribute("bandwidthPercentagePolicy")] + public virtual InterconnectApplicationAwareInterconnectBandwidthPercentagePolicy BandwidthPercentagePolicy { get; set; } + + /// Description for the application awareness profile on this Cloud Interconnect. + [Newtonsoft.Json.JsonPropertyAttribute("profileDescription")] + public virtual string ProfileDescription { get; set; } + + /// + /// Optional field to specify a list of shape average percentages to be applied in conjunction with + /// StrictPriorityPolicy or BandwidthPercentagePolicy. + /// + [Newtonsoft.Json.JsonPropertyAttribute("shapeAveragePercentages")] + public virtual System.Collections.Generic.IList ShapeAveragePercentages { get; set; } + + [Newtonsoft.Json.JsonPropertyAttribute("strictPriorityPolicy")] + public virtual InterconnectApplicationAwareInterconnectStrictPriorityPolicy StrictPriorityPolicy { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// Specify bandwidth percentages [1-100] for various traffic classes in BandwidthPercentagePolicy. The sum of all + /// percentages must equal 100. All traffic classes must have a percentage value specified. + /// + public class InterconnectApplicationAwareInterconnectBandwidthPercentage : Google.Apis.Requests.IDirectResponseSchema + { + /// Bandwidth percentage for a specific traffic class. + [Newtonsoft.Json.JsonPropertyAttribute("percentage")] + public virtual System.Nullable Percentage { get; set; } + + /// TrafficClass whose bandwidth percentage is being specified. + [Newtonsoft.Json.JsonPropertyAttribute("trafficClass")] + public virtual string TrafficClass { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + public class InterconnectApplicationAwareInterconnectBandwidthPercentagePolicy : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Specify bandwidth percentages for various traffic classes for queuing type Bandwidth Percent. + /// + [Newtonsoft.Json.JsonPropertyAttribute("bandwidthPercentages")] + public virtual System.Collections.Generic.IList BandwidthPercentages { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Specify configuration for StrictPriorityPolicy. + public class InterconnectApplicationAwareInterconnectStrictPriorityPolicy : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// /// Represents an Interconnect Attachment (VLAN) resource. You can use Interconnect attachments (VLANS) to connect /// your Virtual Private Cloud networks to your on-premises networks through an Interconnect. For more information, @@ -114116,7 +114188,7 @@ public class MultiMigsList : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("id")] public virtual string Id { get; set; } - /// A list of multi-MIG resources. + /// A list of multi-MIGs in the specified project and region. [Newtonsoft.Json.JsonPropertyAttribute("items")] public virtual System.Collections.Generic.IList Items { get; set; } @@ -116337,7 +116409,11 @@ public class NetworksAddPeeringRequest : Google.Apis.Requests.IDirectResponseSch public class NetworksGetEffectiveFirewallsResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Effective firewalls from firewall policy. + /// + /// [Output Only] Effective firewalls from firewall policy. It returns Global Network Firewall Policies and + /// Hierarchical Firewall Policies. Use regionNetworkFirewallPolicies.getEffectiveFirewalls to get Regional + /// Network Firewall Policies as well. + /// [Newtonsoft.Json.JsonPropertyAttribute("firewallPolicys")] public virtual System.Collections.Generic.IList FirewallPolicys { get; set; } @@ -116369,7 +116445,7 @@ public class NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy : Goog [Newtonsoft.Json.JsonPropertyAttribute("priority")] public virtual System.Nullable Priority { get; set; } - /// The rules that apply to the network. + /// [Output Only] The rules that apply to the network. [Newtonsoft.Json.JsonPropertyAttribute("rules")] public virtual System.Collections.Generic.IList Rules { get; set; } @@ -121302,7 +121378,11 @@ public class RegionNetworkEndpointGroupsDetachEndpointsRequest : Google.Apis.Req public class RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Effective firewalls from firewall policy. + /// + /// [Output only] Effective firewalls from firewall policy. It applies to Regional Network Firewall Policies in + /// the specified region, Global Network Firewall Policies and Hierachial Firewall Policies which are associated + /// with the network. + /// [Newtonsoft.Json.JsonPropertyAttribute("firewallPolicys")] public virtual System.Collections.Generic.IList FirewallPolicys { get; set; } @@ -121328,7 +121408,7 @@ public class RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffective [Newtonsoft.Json.JsonPropertyAttribute("priority")] public virtual System.Nullable Priority { get; set; } - /// The rules that apply to the network. + /// [Output only] The rules that apply to the network. [Newtonsoft.Json.JsonPropertyAttribute("rules")] public virtual System.Collections.Generic.IList Rules { get; set; } @@ -121532,7 +121612,11 @@ public class Reservation : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("specificReservationRequired")] public virtual System.Nullable SpecificReservationRequired { get; set; } - /// [Output Only] The status of the reservation. + /// + /// [Output Only] The status of the reservation. - CREATING: Reservation resources are being allocated. - READY: + /// Reservation resources have been allocated, and the reservation is ready for use. - DELETING: Reservation + /// deletion is in progress. - UPDATING: Reservation update is in progress. + /// [Newtonsoft.Json.JsonPropertyAttribute("status")] public virtual string Status { get; set; } diff --git a/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.csproj b/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.csproj index c0eb29d020c..ea0f8d07543 100644 --- a/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.csproj +++ b/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.csproj @@ -3,7 +3,7 @@ Google.Apis.Compute.beta Client Library - 1.68.0.3561 + 1.68.0.3568 Google LLC Copyright 2024 Google LLC Google From c01bf3b39a39e174c95575d5f43c6c893d153385 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:33 -0700 Subject: [PATCH 14/61] feat: Generate Google.Apis.Compute.v1 version 1.68.0.3568 --- DiscoveryJson/compute.v1.json | 79 +++++++++++++++---- .../Google.Apis.Compute.v1.cs | 65 +++++++++++++-- .../Google.Apis.Compute.v1.csproj | 2 +- 3 files changed, 122 insertions(+), 24 deletions(-) diff --git a/DiscoveryJson/compute.v1.json b/DiscoveryJson/compute.v1.json index ffdf45a8f1f..a78e1abd9e6 100644 --- a/DiscoveryJson/compute.v1.json +++ b/DiscoveryJson/compute.v1.json @@ -37421,7 +37421,7 @@ } } }, - "revision": "20241001", + "revision": "20241008", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -40694,7 +40694,8 @@ "GENERATED_COOKIE", "HEADER_FIELD", "HTTP_COOKIE", - "NONE" + "NONE", + "STRONG_COOKIE_AFFINITY" ], "enumDescriptions": [ "2-tuple hash on packet's source and destination IP addresses. Connections from the same source IP address to the same destination IP address will be served by the same backend VM while that VM remains healthy.", @@ -40704,10 +40705,15 @@ "Hash based on a cookie generated by the L7 loadbalancer. Only valid for HTTP(S) load balancing.", "The hash is based on a user specified header field.", "The hash is based on a user provided cookie.", - "No session affinity. Connections from the same client IP may go to any instance in the pool." + "No session affinity. Connections from the same client IP may go to any instance in the pool.", + "Strong cookie-based affinity. Connections bearing the same cookie will be served by the same backend VM while that VM remains healthy, as long as the cookie has not expired." ], "type": "string" }, + "strongSessionAffinityCookie": { + "$ref": "BackendServiceHttpCookie", + "description": "Describes the HTTP cookie used for stateful session affinity. This field is applicable and required if the sessionAffinity is set to STRONG_COOKIE_AFFINITY." + }, "subsetting": { "$ref": "Subsetting" }, @@ -41084,6 +41090,25 @@ }, "type": "object" }, + "BackendServiceHttpCookie": { + "description": "The HTTP cookie used for stateful session affinity.", + "id": "BackendServiceHttpCookie", + "properties": { + "name": { + "description": "Name of the cookie.", + "type": "string" + }, + "path": { + "description": "Path to set for the cookie.", + "type": "string" + }, + "ttl": { + "$ref": "Duration", + "description": "Lifetime of the cookie." + } + }, + "type": "object" + }, "BackendServiceIAP": { "description": "Identity-Aware Proxy", "id": "BackendServiceIAP", @@ -47988,6 +48013,22 @@ "Health status of the endpoint is unknown." ], "type": "string" + }, + "ipv6HealthState": { + "description": "Health state of the ipv6 network endpoint determined based on the health checks configured.", + "enum": [ + "DRAINING", + "HEALTHY", + "UNHEALTHY", + "UNKNOWN" + ], + "enumDescriptions": [ + "Endpoint is being drained.", + "Endpoint is healthy.", + "Endpoint is unhealthy.", + "Health status of the endpoint is unknown." + ], + "type": "string" } }, "type": "object" @@ -53230,7 +53271,7 @@ "id": "InstancesGetEffectiveFirewallsResponse", "properties": { "firewallPolicys": { - "description": "Effective firewalls from firewall policies.", + "description": "[Output Only] Effective firewalls from firewall policies.", "items": { "$ref": "InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy" }, @@ -53264,7 +53305,7 @@ "type": "integer" }, "rules": { - "description": "The rules that apply to the network.", + "description": "[Output Only] The rules that apply to the instance. Only rules that target the specific VM instance are returned if target service accounts or target secure tags are specified in the rules.", "items": { "$ref": "FirewallPolicyRule" }, @@ -59102,6 +59143,10 @@ "description": "Optional IPv4 address of network endpoint. The IP address must belong to a VM in Compute Engine (either the primary IP or as part of an aliased IP range). If the IP address is not specified, then the primary IP address for the VM instance in the network that the network endpoint group belongs to will be used. This field is redundant and need not be set for network endpoints of type GCE_VM_IP. If set, it must be set to the primary internal IP address of the attached VM instance that matches the subnetwork of the NEG. The primary internal IP address from any NIC of a multi-NIC VM instance can be added to a NEG as long as it matches the NEG subnetwork.", "type": "string" }, + "ipv6Address": { + "description": "Optional IPv6 address of network endpoint.", + "type": "string" + }, "port": { "description": "Optional port number of network endpoint. If not specified, the defaultPort for the network endpoint group will be used. This field can not be set for network endpoints of type GCE_VM_IP.", "format": "int32", @@ -60370,7 +60415,7 @@ "id": "NetworksGetEffectiveFirewallsResponse", "properties": { "firewallPolicys": { - "description": "Effective firewalls from firewall policy.", + "description": "[Output Only] Effective firewalls from firewall policy. It returns Global Network Firewall Policies and Hierarchical Firewall Policies. Use regionNetworkFirewallPolicies.getEffectiveFirewalls to get Regional Network Firewall Policies as well.", "items": { "$ref": "NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy" }, @@ -60404,7 +60449,7 @@ "type": "integer" }, "rules": { - "description": "The rules that apply to the network.", + "description": "[Output Only] The rules that apply to the network.", "items": { "$ref": "FirewallPolicyRule" }, @@ -67552,7 +67597,7 @@ "id": "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse", "properties": { "firewallPolicys": { - "description": "Effective firewalls from firewall policy.", + "description": "[Output only] Effective firewalls from firewall policy. It applies to Regional Network Firewall Policies in the specified region, Global Network Firewall Policies and Hierachial Firewall Policies which are associated with the network.", "items": { "$ref": "RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy" }, @@ -67580,7 +67625,7 @@ "type": "string" }, "rules": { - "description": "The rules that apply to the network.", + "description": "[Output only] The rules that apply to the network.", "items": { "$ref": "FirewallPolicyRule" }, @@ -67751,7 +67796,7 @@ "type": "boolean" }, "status": { - "description": "[Output Only] The status of the reservation.", + "description": "[Output Only] The status of the reservation. - CREATING: Reservation resources are being allocated. - READY: Reservation resources have been allocated, and the reservation is ready for use. - DELETING: Reservation deletion is in progress. - UPDATING: Reservation update is in progress. ", "enum": [ "CREATING", "DELETING", @@ -67760,11 +67805,11 @@ "UPDATING" ], "enumDescriptions": [ - "Resources are being allocated for the reservation.", - "Reservation is currently being deleted.", + "Reservation resources are being allocated.", + "Reservation deletion is in progress.", "", - "Reservation has allocated all its resources.", - "Reservation is currently being resized." + "Reservation resources have been allocated, and the reservation is ready for use.", + "Reservation update is in progress." ], "type": "string" }, @@ -79550,7 +79595,8 @@ "GENERATED_COOKIE", "HEADER_FIELD", "HTTP_COOKIE", - "NONE" + "NONE", + "STRONG_COOKIE_AFFINITY" ], "enumDescriptions": [ "2-tuple hash on packet's source and destination IP addresses. Connections from the same source IP address to the same destination IP address will be served by the same backend VM while that VM remains healthy.", @@ -79560,7 +79606,8 @@ "Hash based on a cookie generated by the L7 loadbalancer. Only valid for HTTP(S) load balancing.", "The hash is based on a user specified header field.", "The hash is based on a user provided cookie.", - "No session affinity. Connections from the same client IP may go to any instance in the pool." + "No session affinity. Connections from the same client IP may go to any instance in the pool.", + "Strong cookie-based affinity. Connections bearing the same cookie will be served by the same backend VM while that VM remains healthy, as long as the cookie has not expired." ], "type": "string" } diff --git a/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.cs b/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.cs index bc3ce4711fc..9a7cc885966 100644 --- a/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.cs +++ b/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.cs @@ -88030,6 +88030,13 @@ public class BackendService : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("sessionAffinity")] public virtual string SessionAffinity { get; set; } + /// + /// Describes the HTTP cookie used for stateful session affinity. This field is applicable and required if the + /// sessionAffinity is set to STRONG_COOKIE_AFFINITY. + /// + [Newtonsoft.Json.JsonPropertyAttribute("strongSessionAffinityCookie")] + public virtual BackendServiceHttpCookie StrongSessionAffinityCookie { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("subsetting")] public virtual Subsetting Subsetting { get; set; } @@ -88413,6 +88420,25 @@ public class BackendServiceGroupHealth : Google.Apis.Requests.IDirectResponseSch public virtual string ETag { get; set; } } + /// The HTTP cookie used for stateful session affinity. + public class BackendServiceHttpCookie : Google.Apis.Requests.IDirectResponseSchema + { + /// Name of the cookie. + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// Path to set for the cookie. + [Newtonsoft.Json.JsonPropertyAttribute("path")] + public virtual string Path { get; set; } + + /// Lifetime of the cookie. + [Newtonsoft.Json.JsonPropertyAttribute("ttl")] + public virtual Duration Ttl { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Identity-Aware Proxy public class BackendServiceIAP : Google.Apis.Requests.IDirectResponseSchema { @@ -94008,6 +94034,12 @@ public class HealthStatusForNetworkEndpoint : Google.Apis.Requests.IDirectRespon [Newtonsoft.Json.JsonPropertyAttribute("healthState")] public virtual string HealthState { get; set; } + /// + /// Health state of the ipv6 network endpoint determined based on the health checks configured. + /// + [Newtonsoft.Json.JsonPropertyAttribute("ipv6HealthState")] + public virtual string Ipv6HealthState { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } @@ -98399,7 +98431,7 @@ public class InstancesBulkInsertOperationMetadata : Google.Apis.Requests.IDirect public class InstancesGetEffectiveFirewallsResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Effective firewalls from firewall policies. + /// [Output Only] Effective firewalls from firewall policies. [Newtonsoft.Json.JsonPropertyAttribute("firewallPolicys")] public virtual System.Collections.Generic.IList FirewallPolicys { get; set; } @@ -98427,7 +98459,10 @@ public class InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy : Goo [Newtonsoft.Json.JsonPropertyAttribute("priority")] public virtual System.Nullable Priority { get; set; } - /// The rules that apply to the network. + /// + /// [Output Only] The rules that apply to the instance. Only rules that target the specific VM instance are + /// returned if target service accounts or target secure tags are specified in the rules. + /// [Newtonsoft.Json.JsonPropertyAttribute("rules")] public virtual System.Collections.Generic.IList Rules { get; set; } @@ -102782,6 +102817,10 @@ public class NetworkEndpoint : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("ipAddress")] public virtual string IpAddress { get; set; } + /// Optional IPv6 address of network endpoint. + [Newtonsoft.Json.JsonPropertyAttribute("ipv6Address")] + public virtual string Ipv6Address { get; set; } + /// /// Optional port number of network endpoint. If not specified, the defaultPort for the network endpoint group /// will be used. This field can not be set for network endpoints of type GCE_VM_IP. @@ -103757,7 +103796,11 @@ public class NetworksAddPeeringRequest : Google.Apis.Requests.IDirectResponseSch public class NetworksGetEffectiveFirewallsResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Effective firewalls from firewall policy. + /// + /// [Output Only] Effective firewalls from firewall policy. It returns Global Network Firewall Policies and + /// Hierarchical Firewall Policies. Use regionNetworkFirewallPolicies.getEffectiveFirewalls to get Regional + /// Network Firewall Policies as well. + /// [Newtonsoft.Json.JsonPropertyAttribute("firewallPolicys")] public virtual System.Collections.Generic.IList FirewallPolicys { get; set; } @@ -103785,7 +103828,7 @@ public class NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy : Goog [Newtonsoft.Json.JsonPropertyAttribute("priority")] public virtual System.Nullable Priority { get; set; } - /// The rules that apply to the network. + /// [Output Only] The rules that apply to the network. [Newtonsoft.Json.JsonPropertyAttribute("rules")] public virtual System.Collections.Generic.IList Rules { get; set; } @@ -108446,7 +108489,11 @@ public class RegionNetworkEndpointGroupsDetachEndpointsRequest : Google.Apis.Req public class RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Effective firewalls from firewall policy. + /// + /// [Output only] Effective firewalls from firewall policy. It applies to Regional Network Firewall Policies in + /// the specified region, Global Network Firewall Policies and Hierachial Firewall Policies which are associated + /// with the network. + /// [Newtonsoft.Json.JsonPropertyAttribute("firewallPolicys")] public virtual System.Collections.Generic.IList FirewallPolicys { get; set; } @@ -108468,7 +108515,7 @@ public class RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffective [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } - /// The rules that apply to the network. + /// [Output only] The rules that apply to the network. [Newtonsoft.Json.JsonPropertyAttribute("rules")] public virtual System.Collections.Generic.IList Rules { get; set; } @@ -108648,7 +108695,11 @@ public class Reservation : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("specificReservationRequired")] public virtual System.Nullable SpecificReservationRequired { get; set; } - /// [Output Only] The status of the reservation. + /// + /// [Output Only] The status of the reservation. - CREATING: Reservation resources are being allocated. - READY: + /// Reservation resources have been allocated, and the reservation is ready for use. - DELETING: Reservation + /// deletion is in progress. - UPDATING: Reservation update is in progress. + /// [Newtonsoft.Json.JsonPropertyAttribute("status")] public virtual string Status { get; set; } diff --git a/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.csproj b/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.csproj index cfdd7b5667c..a205681ebd9 100644 --- a/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.csproj +++ b/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Compute.v1 Client Library - 1.68.0.3561 + 1.68.0.3568 Google LLC Copyright 2024 Google LLC Google From ef6f5c64b7fb758b73d2628c9922b26acfdcb329 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:37 -0700 Subject: [PATCH 15/61] feat: Generate Google.Apis.Contactcenterinsights.v1 version 1.68.0.3575 --- DiscoveryJson/contactcenterinsights.v1.json | 8508 ++++++--- EnumStorage/contactcenterinsights.v1.json | 10 + .../Google.Apis.Contactcenterinsights.v1.cs | 14372 +++++++++++----- ...oogle.Apis.Contactcenterinsights.v1.csproj | 2 +- 4 files changed, 16684 insertions(+), 6208 deletions(-) diff --git a/DiscoveryJson/contactcenterinsights.v1.json b/DiscoveryJson/contactcenterinsights.v1.json index f4787257bd3..679d1b9dd7d 100644 --- a/DiscoveryJson/contactcenterinsights.v1.json +++ b/DiscoveryJson/contactcenterinsights.v1.json @@ -109,6 +109,62 @@ "resources": { "locations": { "methods": { + "bulkDownloadFeedbackLabels": { + "description": "Download feedback labels in bulk.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:bulkDownloadFeedbackLabels", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.bulkDownloadFeedbackLabels", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource for new feedback labels.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}:bulkDownloadFeedbackLabels", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "bulkUploadFeedbackLabels": { + "description": "Upload feedback labels in bulk.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:bulkUploadFeedbackLabels", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.bulkUploadFeedbackLabels", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource for new feedback labels.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}:bulkUploadFeedbackLabels", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "getEncryptionSpec": { "description": "Gets location-level encryption key specification.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/encryptionSpec", @@ -159,6 +215,75 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "listAllFeedbackLabels": { + "description": "List all feedback labels by project number.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:listAllFeedbackLabels", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.listAllFeedbackLabels", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. A filter to reduce results to a specific subset in the entire project. Supports disjunctions (OR) and conjunctions (AND). Supported fields: * `issue_model_id` * `qa_question_id` * `min_create_time` * `max_create_time` * `min_update_time` * `max_update_time` * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of feedback labels to return in the response. A valid page size ranges from 0 to 100,000 inclusive. If the page size is zero or unspecified, a default page size of 100 will be chosen. Note that a call might return fewer results than the requested page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value returned by the last `ListAllFeedbackLabelsResponse`. This value indicates that this is a continuation of a prior `ListAllFeedbackLabels` call and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of all feedback labels per project.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}:listAllFeedbackLabels", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1ListAllFeedbackLabelsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "queryMetrics": { + "description": "Query metrics.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}:queryMetrics", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.queryMetrics", + "parameterOrder": [ + "location" + ], + "parameters": { + "location": { + "description": "Required. The location of the data. \"projects/{project}/locations/{location}\"", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+location}:queryMetrics", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1QueryMetricsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "updateSettings": { "description": "Updates project-level settings.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/settings", @@ -195,372 +320,212 @@ } }, "resources": { - "conversations": { + "analysisRules": { "methods": { - "bulkAnalyze": { - "description": "Analyzes multiple conversations in a single request.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:bulkAnalyze", + "create": { + "description": "Creates a analysis rule.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/analysisRules", "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.conversations.bulkAnalyze", + "id": "contactcenterinsights.projects.locations.analysisRules.create", "parameterOrder": [ "parent" ], "parameters": { "parent": { - "description": "Required. The parent resource to create analyses in.", + "description": "Required. The parent resource of the analysis rule. Required. The location to create a analysis rule for. Format: `projects//locations/` or `projects//locations/`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/conversations:bulkAnalyze", + "path": "v1/{+parent}/analysisRules", "request": { - "$ref": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest" + "$ref": "GoogleCloudContactcenterinsightsV1AnalysisRule" }, "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleCloudContactcenterinsightsV1AnalysisRule" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "bulkDelete": { - "description": "Deletes multiple conversations in a single request.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:bulkDelete", - "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.conversations.bulkDelete", + "delete": { + "description": "Deletes a analysis rule.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/analysisRules/{analysisRulesId}", + "httpMethod": "DELETE", + "id": "contactcenterinsights.projects.locations.analysisRules.delete", "parameterOrder": [ - "parent" + "name" ], "parameters": { - "parent": { - "description": "Required. The parent resource to delete conversations from. Format: projects/{project}/locations/{location}", + "name": { + "description": "Required. The name of the analysis rule to delete.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/analysisRules/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/conversations:bulkDelete", - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest" - }, + "path": "v1/{+name}", "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleProtobufEmpty" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "calculateStats": { - "description": "Gets conversation statistics.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:calculateStats", + "get": { + "description": "Get a analysis rule.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/analysisRules/{analysisRulesId}", "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.conversations.calculateStats", + "id": "contactcenterinsights.projects.locations.analysisRules.get", "parameterOrder": [ - "location" + "name" ], "parameters": { - "filter": { - "description": "A filter to reduce results to a specific subset. This field is useful for getting statistics about conversations with specific properties.", - "location": "query", - "type": "string" - }, - "location": { - "description": "Required. The location of the conversations.", + "name": { + "description": "Required. The name of the AnalysisRule to get.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/analysisRules/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+location}/conversations:calculateStats", + "path": "v1/{+name}", "response": { - "$ref": "GoogleCloudContactcenterinsightsV1CalculateStatsResponse" + "$ref": "GoogleCloudContactcenterinsightsV1AnalysisRule" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "create": { - "description": "Creates a conversation. Note that this method does not support audio transcription or redaction. Use `conversations.upload` instead.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations", - "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.conversations.create", + "list": { + "description": "Lists analysis rules.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/analysisRules", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.analysisRules.list", "parameterOrder": [ "parent" ], "parameters": { - "conversationId": { - "description": "A unique ID for the new conversation. This ID will become the final component of the conversation's resource name. If no ID is specified, a server-generated ID will be used. This value should be 4-64 characters and must match the regular expression `^[a-z0-9-]{4,64}$`. Valid characters are `a-z-`", + "pageSize": { + "description": "Optional. The maximum number of analysis rule to return in the response. If this value is zero, the service will select a default size. A call may return fewer objects than requested. A non-empty `next_page_token` in the response indicates that more data is available.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value returned by the last `ListAnalysisRulesResponse`; indicates that this is a continuation of a prior `ListAnalysisRules` call and the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The parent resource of the conversation.", + "description": "Required. The parent resource of the analysis rules.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/conversations", - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1Conversation" - }, - "response": { - "$ref": "GoogleCloudContactcenterinsightsV1Conversation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Deletes a conversation.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}", - "httpMethod": "DELETE", - "id": "contactcenterinsights.projects.locations.conversations.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "force": { - "description": "If set to true, all of this conversation's analyses will also be deleted. Otherwise, the request will only succeed if the conversation has no analyses.", - "location": "query", - "type": "boolean" - }, - "name": { - "description": "Required. The name of the conversation to delete.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+name}", + "path": "v1/{+parent}/analysisRules", "response": { - "$ref": "GoogleProtobufEmpty" + "$ref": "GoogleCloudContactcenterinsightsV1ListAnalysisRulesResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "get": { - "description": "Gets a conversation.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}", - "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.conversations.get", + "patch": { + "description": "Updates a analysis rule.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/analysisRules/{analysisRulesId}", + "httpMethod": "PATCH", + "id": "contactcenterinsights.projects.locations.analysisRules.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The name of the conversation to get.", + "description": "Identifier. The resource name of the analysis rule. Format: projects/{project}/locations/{location}/analysisRules/{analysis_rule}", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/analysisRules/[^/]+$", "required": true, "type": "string" }, - "view": { - "description": "The level of details of the conversation. Default is `FULL`.", - "enum": [ - "CONVERSATION_VIEW_UNSPECIFIED", - "FULL", - "BASIC" - ], - "enumDescriptions": [ - "The conversation view is not specified. * Defaults to `FULL` in `GetConversationRequest`. * Defaults to `BASIC` in `ListConversationsRequest`.", - "Populates all fields in the conversation.", - "Populates all fields in the conversation except the transcript." - ], + "updateMask": { + "description": "Optional. The list of fields to be updated. If the update_mask is not provided, the update will be applied to all fields.", + "format": "google-fieldmask", "location": "query", "type": "string" } }, "path": "v1/{+name}", - "response": { - "$ref": "GoogleCloudContactcenterinsightsV1Conversation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "ingest": { - "description": "Imports conversations and processes them according to the user's configuration.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:ingest", - "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.conversations.ingest", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The parent resource for new conversations.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+parent}/conversations:ingest", "request": { - "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequest" + "$ref": "GoogleCloudContactcenterinsightsV1AnalysisRule" }, "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists conversations.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations", - "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.conversations.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "A filter to reduce results to a specific subset. Useful for querying conversations with specific properties.", - "location": "query", - "type": "string" - }, - "orderBy": { - "description": "Optional. The attribute by which to order conversations in the response. If empty, conversations will be ordered by descending creation time. Supported values are one of the following: * create_time * customer_satisfaction_rating * duration * latest_analysis * start_time * turn_count The default sort order is ascending. To specify order, append `asc` or `desc` (`create_time desc`). For more details, see [Google AIPs Ordering](https://google.aip.dev/132#ordering).", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of conversations to return in the response. A valid page size ranges from 0 to 100,000 inclusive. If the page size is zero or unspecified, a default page size of 100 will be chosen. Note that a call might return fewer results than the requested page size.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "The value returned by the last `ListConversationsResponse`. This value indicates that this is a continuation of a prior `ListConversations` call and that the system should return the next page of data.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The parent resource of the conversation.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - }, - "view": { - "description": "The level of details of the conversation. Default is `BASIC`.", - "enum": [ - "CONVERSATION_VIEW_UNSPECIFIED", - "FULL", - "BASIC" - ], - "enumDescriptions": [ - "The conversation view is not specified. * Defaults to `FULL` in `GetConversationRequest`. * Defaults to `BASIC` in `ListConversationsRequest`.", - "Populates all fields in the conversation.", - "Populates all fields in the conversation except the transcript." - ], - "location": "query", - "type": "string" - } - }, - "path": "v1/{+parent}/conversations", - "response": { - "$ref": "GoogleCloudContactcenterinsightsV1ListConversationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "patch": { - "description": "Updates a conversation.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}", - "httpMethod": "PATCH", - "id": "contactcenterinsights.projects.locations.conversations.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Immutable. The resource name of the conversation. Format: projects/{project}/locations/{location}/conversations/{conversation}", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "The list of fields to be updated. All possible fields can be updated by passing `*`, or a subset of the following updateable fields can be provided: * `agent_id` * `language_code` * `labels` * `metadata` * `quality_metadata` * `call_metadata` * `start_time` * `expire_time` or `ttl` * `data_source.gcs_source.audio_uri` or `data_source.dialogflow_source.audio_uri`", - "format": "google-fieldmask", - "location": "query", - "type": "string" - } - }, - "path": "v1/{+name}", - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1Conversation" - }, - "response": { - "$ref": "GoogleCloudContactcenterinsightsV1Conversation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "upload": { - "description": "Create a long-running conversation upload operation. This method differs from `CreateConversation` by allowing audio transcription and optional DLP redaction.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:upload", - "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.conversations.upload", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The parent resource of the conversation.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+parent}/conversations:upload", - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1UploadConversationRequest" - }, - "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleCloudContactcenterinsightsV1AnalysisRule" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] } - }, + } + }, + "authorizedViewSet": { "resources": { - "analyses": { + "authorizedView": { "methods": { - "create": { - "description": "Creates an analysis. The long running operation is done when the analysis has completed.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}/analyses", + "calculateStats": { + "description": "Gets conversation statistics.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSet/{authorizedViewSetId}/authorizedView/{authorizedViewId}:calculateStats", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.authorizedViewSet.authorizedView.calculateStats", + "parameterOrder": [ + "location" + ], + "parameters": { + "filter": { + "description": "A filter to reduce results to a specific subset. This field is useful for getting statistics about conversations with specific properties.", + "location": "query", + "type": "string" + }, + "location": { + "description": "Required. The location of the conversations.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSet/[^/]+/authorizedView/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+location}:calculateStats", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1CalculateStatsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "queryMetrics": { + "description": "Query metrics.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSet/{authorizedViewSetId}/authorizedView/{authorizedViewId}:queryMetrics", "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.conversations.analyses.create", + "id": "contactcenterinsights.projects.locations.authorizedViewSet.authorizedView.queryMetrics", "parameterOrder": [ - "parent" + "location" ], "parameters": { - "parent": { - "description": "Required. The parent resource of the analysis.", + "location": { + "description": "Required. The location of the data. \"projects/{project}/locations/{location}\"", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSet/[^/]+/authorizedView/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/analyses", + "path": "v1/{+location}:queryMetrics", "request": { - "$ref": "GoogleCloudContactcenterinsightsV1Analysis" + "$ref": "GoogleCloudContactcenterinsightsV1QueryMetricsRequest" }, "response": { "$ref": "GoogleLongrunningOperation" @@ -568,124 +533,770 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - }, - "delete": { - "description": "Deletes an analysis.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}/analyses/{analysesId}", - "httpMethod": "DELETE", - "id": "contactcenterinsights.projects.locations.conversations.analyses.delete", + } + } + }, + "authorizedViews": { + "resources": { + "conversations": { + "resources": { + "feedbackLabels": { + "methods": { + "create": { + "description": "Create feedback label.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSet/{authorizedViewSetId}/authorizedViews/{authorizedViewsId}/conversations/{conversationsId}/feedbackLabels", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.authorizedViewSet.authorizedViews.conversations.feedbackLabels.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "feedbackLabelId": { + "description": "Optional. The ID of the feedback label to create. If one is not specified it will be generated by the server.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the feedback label.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSet/[^/]+/authorizedViews/[^/]+/conversations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/feedbackLabels", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1FeedbackLabel" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1FeedbackLabel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete feedback label.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSet/{authorizedViewSetId}/authorizedViews/{authorizedViewsId}/conversations/{conversationsId}/feedbackLabels/{feedbackLabelsId}", + "httpMethod": "DELETE", + "id": "contactcenterinsights.projects.locations.authorizedViewSet.authorizedViews.conversations.feedbackLabels.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the feedback label to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSet/[^/]+/authorizedViews/[^/]+/conversations/[^/]+/feedbackLabels/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Get feedback label.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSet/{authorizedViewSetId}/authorizedViews/{authorizedViewsId}/conversations/{conversationsId}/feedbackLabels/{feedbackLabelsId}", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.authorizedViewSet.authorizedViews.conversations.feedbackLabels.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the feedback label to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSet/[^/]+/authorizedViews/[^/]+/conversations/[^/]+/feedbackLabels/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1FeedbackLabel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "List feedback labels.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSet/{authorizedViewSetId}/authorizedViews/{authorizedViewsId}/conversations/{conversationsId}/feedbackLabels", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.authorizedViewSet.authorizedViews.conversations.feedbackLabels.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. A filter to reduce results to a specific subset. Supports disjunctions (OR) and conjunctions (AND). Automatically sorts by conversation ID. To sort by all feedback labels in a project see ListAllFeedbackLabels. Supported fields: * `issue_model_id` * `qa_question_id` * `qa_scorecard_id` * `min_create_time` * `max_create_time` * `min_update_time` * `max_update_time` * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of feedback labels to return in the response. A valid page size ranges from 0 to 100,000 inclusive. If the page size is zero or unspecified, a default page size of 100 will be chosen. Note that a call might return fewer results than the requested page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value returned by the last `ListFeedbackLabelsResponse`. This value indicates that this is a continuation of a prior `ListFeedbackLabels` call and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the feedback labels.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSet/[^/]+/authorizedViews/[^/]+/conversations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/feedbackLabels", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1ListFeedbackLabelsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update feedback label.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSet/{authorizedViewSetId}/authorizedViews/{authorizedViewsId}/conversations/{conversationsId}/feedbackLabels/{feedbackLabelsId}", + "httpMethod": "PATCH", + "id": "contactcenterinsights.projects.locations.authorizedViewSet.authorizedViews.conversations.feedbackLabels.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. Resource name of the FeedbackLabel. Format: projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSet/[^/]+/authorizedViews/[^/]+/conversations/[^/]+/feedbackLabels/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The list of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1FeedbackLabel" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1FeedbackLabel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + } + }, + "authorizedViewSets": { + "resources": { + "authorizedViews": { + "methods": { + "getIamPolicy": { + "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}:getIamPolicy", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.getIamPolicy", "parameterOrder": [ - "name" + "resource" ], "parameters": { - "name": { - "description": "Required. The name of the analysis to delete.", + "options.requestedPolicyVersion": { + "description": "Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+/analyses/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+name}", + "path": "v1/{+resource}:getIamPolicy", "response": { - "$ref": "GoogleProtobufEmpty" + "$ref": "GoogleIamV1Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "get": { - "description": "Gets an analysis.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}/analyses/{analysesId}", - "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.conversations.analyses.get", + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}:setIamPolicy", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.setIamPolicy", "parameterOrder": [ - "name" + "resource" ], "parameters": { - "name": { - "description": "Required. The name of the analysis to get.", + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+/analyses/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+name}", + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "GoogleIamV1SetIamPolicyRequest" + }, "response": { - "$ref": "GoogleCloudContactcenterinsightsV1Analysis" + "$ref": "GoogleIamV1Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "list": { - "description": "Lists analyses.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}/analyses", - "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.conversations.analyses.list", + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}:testIamPermissions", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.testIamPermissions", "parameterOrder": [ - "parent" + "resource" ], "parameters": { - "filter": { - "description": "A filter to reduce results to a specific subset. Useful for querying conversations with specific properties.", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of analyses to return in the response. If this value is zero, the service will select a default size. A call might return fewer objects than requested. A non-empty `next_page_token` in the response indicates that more data is available.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "The value returned by the last `ListAnalysesResponse`; indicates that this is a continuation of a prior `ListAnalyses` call and the system should return the next page of data.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The parent resource of the analyses.", + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/analyses", + "path": "v1/{+resource}:testIamPermissions", + "request": { + "$ref": "GoogleIamV1TestIamPermissionsRequest" + }, "response": { - "$ref": "GoogleCloudContactcenterinsightsV1ListAnalysesResponse" + "$ref": "GoogleIamV1TestIamPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] } + }, + "resources": { + "conversations": { + "methods": { + "create": { + "description": "Creates a conversation. Note that this method does not support audio transcription or redaction. Use `conversations.upload` instead.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}/conversations", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.conversations.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "conversationId": { + "description": "A unique ID for the new conversation. This ID will become the final component of the conversation's resource name. If no ID is specified, a server-generated ID will be used. This value should be 4-64 characters and must match the regular expression `^[a-z0-9-]{4,64}$`. Valid characters are `a-z-`", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the conversation.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/conversations", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1Conversation" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1Conversation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a conversation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}/conversations/{conversationsId}", + "httpMethod": "DELETE", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.conversations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "force": { + "description": "If set to true, all of this conversation's analyses will also be deleted. Otherwise, the request will only succeed if the conversation has no analyses.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the conversation to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/conversations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a conversation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}/conversations/{conversationsId}", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.conversations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the conversation to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/conversations/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "The level of details of the conversation. Default is `FULL`.", + "enum": [ + "CONVERSATION_VIEW_UNSPECIFIED", + "FULL", + "BASIC" + ], + "enumDescriptions": [ + "The conversation view is not specified. * Defaults to `FULL` in `GetConversationRequest`. * Defaults to `BASIC` in `ListConversationsRequest`.", + "Populates all fields in the conversation.", + "Populates all fields in the conversation except the transcript." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1Conversation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists conversations.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}/conversations", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.conversations.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "A filter to reduce results to a specific subset. Useful for querying conversations with specific properties.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. The attribute by which to order conversations in the response. If empty, conversations will be ordered by descending creation time. Supported values are one of the following: * create_time * customer_satisfaction_rating * duration * latest_analysis * start_time * turn_count The default sort order is ascending. To specify order, append `asc` or `desc` (`create_time desc`). For more details, see [Google AIPs Ordering](https://google.aip.dev/132#ordering).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of conversations to return in the response. A valid page size ranges from 0 to 100,000 inclusive. If the page size is zero or unspecified, a default page size of 100 will be chosen. Note that a call might return fewer results than the requested page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListConversationsResponse`. This value indicates that this is a continuation of a prior `ListConversations` call and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the conversation.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "The level of details of the conversation. Default is `BASIC`.", + "enum": [ + "CONVERSATION_VIEW_UNSPECIFIED", + "FULL", + "BASIC" + ], + "enumDescriptions": [ + "The conversation view is not specified. * Defaults to `FULL` in `GetConversationRequest`. * Defaults to `BASIC` in `ListConversationsRequest`.", + "Populates all fields in the conversation.", + "Populates all fields in the conversation except the transcript." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/conversations", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1ListConversationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a conversation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}/conversations/{conversationsId}", + "httpMethod": "PATCH", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.conversations.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. The resource name of the conversation. Format: projects/{project}/locations/{location}/conversations/{conversation}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/conversations/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "The list of fields to be updated. All possible fields can be updated by passing `*`, or a subset of the following updateable fields can be provided: * `agent_id` * `language_code` * `labels` * `metadata` * `quality_metadata` * `call_metadata` * `start_time` * `expire_time` or `ttl` * `data_source.gcs_source.audio_uri` or `data_source.dialogflow_source.audio_uri`", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1Conversation" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1Conversation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "upload": { + "description": "Create a long-running conversation upload operation. This method differs from `CreateConversation` by allowing audio transcription and optional DLP redaction.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}/conversations:upload", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.conversations.upload", + "parameterOrder": [ + "parent" + ], + "parameters": { + "conversationId": { + "description": "Optional. A unique ID for the new conversation. This ID will become the final component of the conversation's resource name. If no ID is specified, a server-generated ID will be used. This value should be 4-64 characters and must match the regular expression `^[a-z0-9-]{4,64}$`. Valid characters are `a-z-`", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the conversation.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+$", + "required": true, + "type": "string" + }, + "redactionConfig.deidentifyTemplate": { + "description": "The fully-qualified DLP deidentify template resource name. Format: `projects/{project}/deidentifyTemplates/{template}`", + "location": "query", + "type": "string" + }, + "redactionConfig.inspectTemplate": { + "description": "The fully-qualified DLP inspect template resource name. Format: `projects/{project}/locations/{location}/inspectTemplates/{template}`", + "location": "query", + "type": "string" + }, + "speechConfig.speechRecognizer": { + "description": "The fully-qualified Speech Recognizer resource name. Format: `projects/{project_id}/locations/{location}/recognizer/{recognizer}`", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/conversations:upload", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1Conversation" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "analyses": { + "methods": { + "create": { + "description": "Creates an analysis. The long running operation is done when the analysis has completed.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}/conversations/{conversationsId}/analyses", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.conversations.analyses.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource of the analysis.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/conversations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/analyses", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1Analysis" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes an analysis.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}/conversations/{conversationsId}/analyses/{analysesId}", + "httpMethod": "DELETE", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.conversations.analyses.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the analysis to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/conversations/[^/]+/analyses/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets an analysis.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}/conversations/{conversationsId}/analyses/{analysesId}", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.conversations.analyses.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the analysis to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/conversations/[^/]+/analyses/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1Analysis" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists analyses.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}/conversations/{conversationsId}/analyses", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.conversations.analyses.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "A filter to reduce results to a specific subset. Useful for querying conversations with specific properties.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of analyses to return in the response. If this value is zero, the service will select a default size. A call might return fewer objects than requested. A non-empty `next_page_token` in the response indicates that more data is available.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListAnalysesResponse`; indicates that this is a continuation of a prior `ListAnalyses` call and the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the analyses.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/conversations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/analyses", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1ListAnalysesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/authorizedViewSets/{authorizedViewSetsId}/authorizedViews/{authorizedViewsId}/operations", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.authorizedViewSets.authorizedViews.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } } } } }, - "encryptionSpec": { + "conversations": { "methods": { - "initialize": { - "description": "Initializes a location-level encryption key specification. An error will result if the location has resources already created before the initialization. After the encryption specification is initialized at a location, it is immutable and all newly created resources under the location will be encrypted with the existing specification.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/encryptionSpec:initialize", + "bulkAnalyze": { + "description": "Analyzes multiple conversations in a single request.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:bulkAnalyze", "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.encryptionSpec.initialize", + "id": "contactcenterinsights.projects.locations.conversations.bulkAnalyze", "parameterOrder": [ - "name" + "parent" ], "parameters": { - "name": { - "description": "Immutable. The resource name of the encryption key specification resource. Format: projects/{project}/locations/{location}/encryptionSpec", + "parent": { + "description": "Required. The parent resource to create analyses in.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/encryptionSpec$", + "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+name}:initialize", + "path": "v1/{+parent}/conversations:bulkAnalyze", "request": { - "$ref": "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest" + "$ref": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest" }, "response": { "$ref": "GoogleLongrunningOperation" @@ -693,31 +1304,27 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - } - } - }, - "insightsdata": { - "methods": { - "export": { - "description": "Export insights data to a destination defined in the request body.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/insightsdata:export", + }, + "bulkDelete": { + "description": "Deletes multiple conversations in a single request.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:bulkDelete", "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.insightsdata.export", + "id": "contactcenterinsights.projects.locations.conversations.bulkDelete", "parameterOrder": [ "parent" ], "parameters": { "parent": { - "description": "Required. The parent resource to export data from.", + "description": "Required. The parent resource to delete conversations from. Format: projects/{project}/locations/{location}", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/insightsdata:export", + "path": "v1/{+parent}/conversations:bulkDelete", "request": { - "$ref": "GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest" + "$ref": "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest" }, "response": { "$ref": "GoogleLongrunningOperation" @@ -725,190 +1332,160 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - } - } - }, - "issueModels": { - "methods": { - "calculateIssueModelStats": { - "description": "Gets an issue model's statistics.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}:calculateIssueModelStats", + }, + "calculateStats": { + "description": "Gets conversation statistics.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:calculateStats", "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.issueModels.calculateIssueModelStats", + "id": "contactcenterinsights.projects.locations.conversations.calculateStats", "parameterOrder": [ - "issueModel" + "location" ], "parameters": { - "issueModel": { - "description": "Required. The resource name of the issue model to query against.", + "filter": { + "description": "A filter to reduce results to a specific subset. This field is useful for getting statistics about conversations with specific properties.", + "location": "query", + "type": "string" + }, + "location": { + "description": "Required. The location of the conversations.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+issueModel}:calculateIssueModelStats", + "path": "v1/{+location}/conversations:calculateStats", "response": { - "$ref": "GoogleCloudContactcenterinsightsV1CalculateIssueModelStatsResponse" + "$ref": "GoogleCloudContactcenterinsightsV1CalculateStatsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "create": { - "description": "Creates an issue model.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels", + "description": "Creates a conversation. Note that this method does not support audio transcription or redaction. Use `conversations.upload` instead.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations", "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.issueModels.create", + "id": "contactcenterinsights.projects.locations.conversations.create", "parameterOrder": [ "parent" ], "parameters": { + "conversationId": { + "description": "A unique ID for the new conversation. This ID will become the final component of the conversation's resource name. If no ID is specified, a server-generated ID will be used. This value should be 4-64 characters and must match the regular expression `^[a-z0-9-]{4,64}$`. Valid characters are `a-z-`", + "location": "query", + "type": "string" + }, "parent": { - "description": "Required. The parent resource of the issue model.", + "description": "Required. The parent resource of the conversation.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/issueModels", + "path": "v1/{+parent}/conversations", "request": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueModel" + "$ref": "GoogleCloudContactcenterinsightsV1Conversation" }, "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleCloudContactcenterinsightsV1Conversation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "delete": { - "description": "Deletes an issue model.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}", + "description": "Deletes a conversation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}", "httpMethod": "DELETE", - "id": "contactcenterinsights.projects.locations.issueModels.delete", + "id": "contactcenterinsights.projects.locations.conversations.delete", "parameterOrder": [ "name" ], "parameters": { + "force": { + "description": "If set to true, all of this conversation's analyses will also be deleted. Otherwise, the request will only succeed if the conversation has no analyses.", + "location": "query", + "type": "boolean" + }, "name": { - "description": "Required. The name of the issue model to delete.", + "description": "Required. The name of the conversation to delete.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", "required": true, "type": "string" } }, "path": "v1/{+name}", "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "deploy": { - "description": "Deploys an issue model. Returns an error if a model is already deployed. An issue model can only be used in analysis after it has been deployed.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}:deploy", - "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.issueModels.deploy", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The issue model to deploy.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+name}:deploy", - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1DeployIssueModelRequest" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "export": { - "description": "Exports an issue model to the provided destination.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}:export", - "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.issueModels.export", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The issue model to export.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+name}:export", - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1ExportIssueModelRequest" - }, - "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "GoogleProtobufEmpty" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "get": { - "description": "Gets an issue model.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}", + "description": "Gets a conversation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}", "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.issueModels.get", + "id": "contactcenterinsights.projects.locations.conversations.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The name of the issue model to get.", + "description": "Required. The name of the conversation to get.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", "required": true, "type": "string" + }, + "view": { + "description": "The level of details of the conversation. Default is `FULL`.", + "enum": [ + "CONVERSATION_VIEW_UNSPECIFIED", + "FULL", + "BASIC" + ], + "enumDescriptions": [ + "The conversation view is not specified. * Defaults to `FULL` in `GetConversationRequest`. * Defaults to `BASIC` in `ListConversationsRequest`.", + "Populates all fields in the conversation.", + "Populates all fields in the conversation except the transcript." + ], + "location": "query", + "type": "string" } }, "path": "v1/{+name}", "response": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueModel" + "$ref": "GoogleCloudContactcenterinsightsV1Conversation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "import": { - "description": "Imports an issue model from a Cloud Storage bucket.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels:import", + "ingest": { + "description": "Imports conversations and processes them according to the user's configuration.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:ingest", "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.issueModels.import", + "id": "contactcenterinsights.projects.locations.conversations.ingest", "parameterOrder": [ "parent" ], "parameters": { "parent": { - "description": "Required. The parent resource of the issue model.", + "description": "Required. The parent resource for new conversations.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/issueModels:import", + "path": "v1/{+parent}/conversations:ingest", "request": { - "$ref": "GoogleCloudContactcenterinsightsV1ImportIssueModelRequest" + "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequest" }, "response": { "$ref": "GoogleLongrunningOperation" @@ -918,48 +1495,84 @@ ] }, "list": { - "description": "Lists issue models.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels", + "description": "Lists conversations.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations", "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.issueModels.list", + "id": "contactcenterinsights.projects.locations.conversations.list", "parameterOrder": [ "parent" ], "parameters": { + "filter": { + "description": "A filter to reduce results to a specific subset. Useful for querying conversations with specific properties.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. The attribute by which to order conversations in the response. If empty, conversations will be ordered by descending creation time. Supported values are one of the following: * create_time * customer_satisfaction_rating * duration * latest_analysis * start_time * turn_count The default sort order is ascending. To specify order, append `asc` or `desc` (`create_time desc`). For more details, see [Google AIPs Ordering](https://google.aip.dev/132#ordering).", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of conversations to return in the response. A valid page size ranges from 0 to 100,000 inclusive. If the page size is zero or unspecified, a default page size of 100 will be chosen. Note that a call might return fewer results than the requested page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListConversationsResponse`. This value indicates that this is a continuation of a prior `ListConversations` call and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, "parent": { - "description": "Required. The parent resource of the issue model.", + "description": "Required. The parent resource of the conversation.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" + }, + "view": { + "description": "The level of details of the conversation. Default is `BASIC`.", + "enum": [ + "CONVERSATION_VIEW_UNSPECIFIED", + "FULL", + "BASIC" + ], + "enumDescriptions": [ + "The conversation view is not specified. * Defaults to `FULL` in `GetConversationRequest`. * Defaults to `BASIC` in `ListConversationsRequest`.", + "Populates all fields in the conversation.", + "Populates all fields in the conversation except the transcript." + ], + "location": "query", + "type": "string" } }, - "path": "v1/{+parent}/issueModels", + "path": "v1/{+parent}/conversations", "response": { - "$ref": "GoogleCloudContactcenterinsightsV1ListIssueModelsResponse" + "$ref": "GoogleCloudContactcenterinsightsV1ListConversationsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "patch": { - "description": "Updates an issue model.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}", + "description": "Updates a conversation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}", "httpMethod": "PATCH", - "id": "contactcenterinsights.projects.locations.issueModels.patch", + "id": "contactcenterinsights.projects.locations.conversations.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Immutable. The resource name of the issue model. Format: projects/{project}/locations/{location}/issueModels/{issue_model}", + "description": "Immutable. The resource name of the conversation. Format: projects/{project}/locations/{location}/conversations/{conversation}", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", + "description": "The list of fields to be updated. All possible fields can be updated by passing `*`, or a subset of the following updateable fields can be provided: * `agent_id` * `language_code` * `labels` * `metadata` * `quality_metadata` * `call_metadata` * `start_time` * `expire_time` or `ttl` * `data_source.gcs_source.audio_uri` or `data_source.dialogflow_source.audio_uri`", "format": "google-fieldmask", "location": "query", "type": "string" @@ -967,35 +1580,35 @@ }, "path": "v1/{+name}", "request": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueModel" + "$ref": "GoogleCloudContactcenterinsightsV1Conversation" }, "response": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueModel" + "$ref": "GoogleCloudContactcenterinsightsV1Conversation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "undeploy": { - "description": "Undeploys an issue model. An issue model can not be used in analysis after it has been undeployed.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}:undeploy", + "upload": { + "description": "Create a long-running conversation upload operation. This method differs from `CreateConversation` by allowing audio transcription and optional DLP redaction.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations:upload", "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.issueModels.undeploy", + "id": "contactcenterinsights.projects.locations.conversations.upload", "parameterOrder": [ - "name" + "parent" ], "parameters": { - "name": { - "description": "Required. The issue model to undeploy.", + "parent": { + "description": "Required. The parent resource of the conversation.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+name}:undeploy", + "path": "v1/{+parent}/conversations:upload", "request": { - "$ref": "GoogleCloudContactcenterinsightsV1UndeployIssueModelRequest" + "$ref": "GoogleCloudContactcenterinsightsV1UploadConversationRequest" }, "response": { "$ref": "GoogleLongrunningOperation" @@ -1006,21 +1619,49 @@ } }, "resources": { - "issues": { + "analyses": { "methods": { - "delete": { - "description": "Deletes an issue.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}/issues/{issuesId}", - "httpMethod": "DELETE", - "id": "contactcenterinsights.projects.locations.issueModels.issues.delete", + "create": { + "description": "Creates an analysis. The long running operation is done when the analysis has completed.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}/analyses", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.conversations.analyses.create", "parameterOrder": [ - "name" + "parent" ], "parameters": { - "name": { - "description": "Required. The name of the issue to delete.", + "parent": { + "description": "Required. The parent resource of the analysis.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+/issues/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/analyses", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1Analysis" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes an analysis.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}/analyses/{analysesId}", + "httpMethod": "DELETE", + "id": "contactcenterinsights.projects.locations.conversations.analyses.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the analysis to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+/analyses/[^/]+$", "required": true, "type": "string" } @@ -1034,73 +1675,217 @@ ] }, "get": { - "description": "Gets an issue.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}/issues/{issuesId}", + "description": "Gets an analysis.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}/analyses/{analysesId}", "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.issueModels.issues.get", + "id": "contactcenterinsights.projects.locations.conversations.analyses.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The name of the issue to get.", + "description": "Required. The name of the analysis to get.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+/issues/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+/analyses/[^/]+$", "required": true, "type": "string" } }, "path": "v1/{+name}", "response": { - "$ref": "GoogleCloudContactcenterinsightsV1Issue" + "$ref": "GoogleCloudContactcenterinsightsV1Analysis" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "Lists issues.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}/issues", + "description": "Lists analyses.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}/analyses", "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.issueModels.issues.list", + "id": "contactcenterinsights.projects.locations.conversations.analyses.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "A filter to reduce results to a specific subset. Useful for querying conversations with specific properties.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of analyses to return in the response. If this value is zero, the service will select a default size. A call might return fewer objects than requested. A non-empty `next_page_token` in the response indicates that more data is available.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListAnalysesResponse`; indicates that this is a continuation of a prior `ListAnalyses` call and the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the analyses.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/analyses", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1ListAnalysesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "feedbackLabels": { + "methods": { + "create": { + "description": "Create feedback label.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}/feedbackLabels", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.conversations.feedbackLabels.create", "parameterOrder": [ "parent" ], "parameters": { + "feedbackLabelId": { + "description": "Optional. The ID of the feedback label to create. If one is not specified it will be generated by the server.", + "location": "query", + "type": "string" + }, "parent": { - "description": "Required. The parent resource of the issue.", + "description": "Required. The parent resource of the feedback label.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/issues", + "path": "v1/{+parent}/feedbackLabels", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1FeedbackLabel" + }, "response": { - "$ref": "GoogleCloudContactcenterinsightsV1ListIssuesResponse" + "$ref": "GoogleCloudContactcenterinsightsV1FeedbackLabel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Delete feedback label.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}/feedbackLabels/{feedbackLabelsId}", + "httpMethod": "DELETE", + "id": "contactcenterinsights.projects.locations.conversations.feedbackLabels.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the feedback label to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+/feedbackLabels/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Get feedback label.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}/feedbackLabels/{feedbackLabelsId}", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.conversations.feedbackLabels.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the feedback label to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+/feedbackLabels/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1FeedbackLabel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "List feedback labels.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}/feedbackLabels", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.conversations.feedbackLabels.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. A filter to reduce results to a specific subset. Supports disjunctions (OR) and conjunctions (AND). Automatically sorts by conversation ID. To sort by all feedback labels in a project see ListAllFeedbackLabels. Supported fields: * `issue_model_id` * `qa_question_id` * `qa_scorecard_id` * `min_create_time` * `max_create_time` * `min_update_time` * `max_update_time` * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of feedback labels to return in the response. A valid page size ranges from 0 to 100,000 inclusive. If the page size is zero or unspecified, a default page size of 100 will be chosen. Note that a call might return fewer results than the requested page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value returned by the last `ListFeedbackLabelsResponse`. This value indicates that this is a continuation of a prior `ListFeedbackLabels` call and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the feedback labels.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/feedbackLabels", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1ListFeedbackLabelsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "patch": { - "description": "Updates an issue.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}/issues/{issuesId}", + "description": "Update feedback label.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/conversations/{conversationsId}/feedbackLabels/{feedbackLabelsId}", "httpMethod": "PATCH", - "id": "contactcenterinsights.projects.locations.issueModels.issues.patch", + "id": "contactcenterinsights.projects.locations.conversations.feedbackLabels.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Immutable. The resource name of the issue. Format: projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}", + "description": "Immutable. Resource name of the FeedbackLabel. Format: projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label}", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+/issues/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/conversations/[^/]+/feedbackLabels/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", + "description": "Required. The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1108,10 +1893,10 @@ }, "path": "v1/{+name}", "request": { - "$ref": "GoogleCloudContactcenterinsightsV1Issue" + "$ref": "GoogleCloudContactcenterinsightsV1FeedbackLabel" }, "response": { - "$ref": "GoogleCloudContactcenterinsightsV1Issue" + "$ref": "GoogleCloudContactcenterinsightsV1FeedbackLabel" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -1121,387 +1906,297 @@ } } }, - "operations": { + "encryptionSpec": { "methods": { - "cancel": { - "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "initialize": { + "description": "Initializes a location-level encryption key specification. An error will result if the location has resources already created before the initialization. After the encryption specification is initialized at a location, it is immutable and all newly created resources under the location will be encrypted with the existing specification.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/encryptionSpec:initialize", "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.operations.cancel", + "id": "contactcenterinsights.projects.locations.encryptionSpec.initialize", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "The name of the operation resource to be cancelled.", + "description": "Immutable. The resource name of the encryption key specification resource. Format: projects/{project}/locations/{location}/encryptionSpec", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/encryptionSpec$", "required": true, "type": "string" } }, - "path": "v1/{+name}:cancel", + "path": "v1/{+name}:initialize", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest" + }, "response": { - "$ref": "GoogleProtobufEmpty" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - }, - "get": { - "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", - "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.operations.get", + } + } + }, + "insightsdata": { + "methods": { + "export": { + "description": "Export insights data to a destination defined in the request body.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/insightsdata:export", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.insightsdata.export", "parameterOrder": [ - "name" + "parent" ], "parameters": { - "name": { - "description": "The name of the operation resource.", + "parent": { + "description": "Required. The parent resource to export data from.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+name}", + "path": "v1/{+parent}/insightsdata:export", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest" + }, "response": { "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - }, - "list": { - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations", + } + } + }, + "issueModels": { + "methods": { + "calculateIssueModelStats": { + "description": "Gets an issue model's statistics.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}:calculateIssueModelStats", "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.operations.list", + "id": "contactcenterinsights.projects.locations.issueModels.calculateIssueModelStats", "parameterOrder": [ - "name" + "issueModel" ], "parameters": { - "filter": { - "description": "The standard list filter.", - "location": "query", - "type": "string" - }, - "name": { - "description": "The name of the operation's parent resource.", + "issueModel": { + "description": "Required. The resource name of the issue model to query against.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", "required": true, "type": "string" - }, - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "The standard list page token.", - "location": "query", - "type": "string" } }, - "path": "v1/{+name}/operations", + "path": "v1/{+issueModel}:calculateIssueModelStats", "response": { - "$ref": "GoogleLongrunningListOperationsResponse" + "$ref": "GoogleCloudContactcenterinsightsV1CalculateIssueModelStatsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - } - } - }, - "phraseMatchers": { - "methods": { + }, "create": { - "description": "Creates a phrase matcher.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/phraseMatchers", + "description": "Creates an issue model.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels", "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.phraseMatchers.create", + "id": "contactcenterinsights.projects.locations.issueModels.create", "parameterOrder": [ "parent" ], "parameters": { "parent": { - "description": "Required. The parent resource of the phrase matcher. Required. The location to create a phrase matcher for. Format: `projects//locations/` or `projects//locations/`", + "description": "Required. The parent resource of the issue model.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/phraseMatchers", + "path": "v1/{+parent}/issueModels", "request": { - "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatcher" + "$ref": "GoogleCloudContactcenterinsightsV1IssueModel" }, "response": { - "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatcher" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "delete": { - "description": "Deletes a phrase matcher.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/phraseMatchers/{phraseMatchersId}", + "description": "Deletes an issue model.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}", "httpMethod": "DELETE", - "id": "contactcenterinsights.projects.locations.phraseMatchers.delete", + "id": "contactcenterinsights.projects.locations.issueModels.delete", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The name of the phrase matcher to delete.", + "description": "Required. The name of the issue model to delete.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/phraseMatchers/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", "required": true, "type": "string" } }, "path": "v1/{+name}", "response": { - "$ref": "GoogleProtobufEmpty" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "get": { - "description": "Gets a phrase matcher.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/phraseMatchers/{phraseMatchersId}", - "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.phraseMatchers.get", + "deploy": { + "description": "Deploys an issue model. Returns an error if a model is already deployed. An issue model can only be used in analysis after it has been deployed.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}:deploy", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.issueModels.deploy", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The name of the phrase matcher to get.", + "description": "Required. The issue model to deploy.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/phraseMatchers/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+name}", - "response": { - "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatcher" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists phrase matchers.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/phraseMatchers", - "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.phraseMatchers.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "filter": { - "description": "A filter to reduce results to a specific subset. Useful for querying phrase matchers with specific properties.", - "location": "query", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of phrase matchers to return in the response. If this value is zero, the service will select a default size. A call might return fewer objects than requested. A non-empty `next_page_token` in the response indicates that more data is available.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "The value returned by the last `ListPhraseMatchersResponse`. This value indicates that this is a continuation of a prior `ListPhraseMatchers` call and that the system should return the next page of data.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The parent resource of the phrase matcher.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - } + "path": "v1/{+name}:deploy", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1DeployIssueModelRequest" }, - "path": "v1/{+parent}/phraseMatchers", "response": { - "$ref": "GoogleCloudContactcenterinsightsV1ListPhraseMatchersResponse" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "patch": { - "description": "Updates a phrase matcher.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/phraseMatchers/{phraseMatchersId}", - "httpMethod": "PATCH", - "id": "contactcenterinsights.projects.locations.phraseMatchers.patch", + "export": { + "description": "Exports an issue model to the provided destination.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}:export", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.issueModels.export", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "The resource name of the phrase matcher. Format: projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/phraseMatchers/[^/]+$", - "required": true, - "type": "string" - }, - "updateMask": { - "description": "The list of fields to be updated.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - } - }, - "path": "v1/{+name}", - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatcher" - }, - "response": { - "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatcher" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - }, - "views": { - "methods": { - "create": { - "description": "Creates a view.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/views", - "httpMethod": "POST", - "id": "contactcenterinsights.projects.locations.views.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The parent resource of the view. Required. The location to create a view for. Format: `projects//locations/` or `projects//locations/`", + "description": "Required. The issue model to export.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/views", + "path": "v1/{+name}:export", "request": { - "$ref": "GoogleCloudContactcenterinsightsV1View" + "$ref": "GoogleCloudContactcenterinsightsV1ExportIssueModelRequest" }, "response": { - "$ref": "GoogleCloudContactcenterinsightsV1View" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "delete": { - "description": "Deletes a view.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/views/{viewsId}", - "httpMethod": "DELETE", - "id": "contactcenterinsights.projects.locations.views.delete", + "get": { + "description": "Gets an issue model.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.issueModels.get", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Required. The name of the view to delete.", + "description": "Required. The name of the issue model to get.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/views/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", "required": true, "type": "string" } }, "path": "v1/{+name}", "response": { - "$ref": "GoogleProtobufEmpty" + "$ref": "GoogleCloudContactcenterinsightsV1IssueModel" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, - "get": { - "description": "Gets a view.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/views/{viewsId}", - "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.views.get", + "import": { + "description": "Imports an issue model from a Cloud Storage bucket.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels:import", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.issueModels.import", "parameterOrder": [ - "name" + "parent" ], "parameters": { - "name": { - "description": "Required. The name of the view to get.", + "parent": { + "description": "Required. The parent resource of the issue model.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/views/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+name}", + "path": "v1/{+parent}/issueModels:import", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1ImportIssueModelRequest" + }, "response": { - "$ref": "GoogleCloudContactcenterinsightsV1View" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "list": { - "description": "Lists views.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/views", + "description": "Lists issue models.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels", "httpMethod": "GET", - "id": "contactcenterinsights.projects.locations.views.list", + "id": "contactcenterinsights.projects.locations.issueModels.list", "parameterOrder": [ "parent" ], "parameters": { - "pageSize": { - "description": "The maximum number of views to return in the response. If this value is zero, the service will select a default size. A call may return fewer objects than requested. A non-empty `next_page_token` in the response indicates that more data is available.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "The value returned by the last `ListViewsResponse`; indicates that this is a continuation of a prior `ListViews` call and the system should return the next page of data.", - "location": "query", - "type": "string" - }, "parent": { - "description": "Required. The parent resource of the views.", + "description": "Required. The parent resource of the issue model.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, "type": "string" } }, - "path": "v1/{+parent}/views", + "path": "v1/{+parent}/issueModels", "response": { - "$ref": "GoogleCloudContactcenterinsightsV1ListViewsResponse" + "$ref": "GoogleCloudContactcenterinsightsV1ListIssueModelsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] }, "patch": { - "description": "Updates a view.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/views/{viewsId}", + "description": "Updates an issue model.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}", "httpMethod": "PATCH", - "id": "contactcenterinsights.projects.locations.views.patch", + "id": "contactcenterinsights.projects.locations.issueModels.patch", "parameterOrder": [ "name" ], "parameters": { "name": { - "description": "Immutable. The resource name of the view. Format: projects/{project}/locations/{location}/views/{view}", + "description": "Immutable. The resource name of the issue model. Format: projects/{project}/locations/{location}/issueModels/{issue_model}", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/views/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", "required": true, "type": "string" }, @@ -1514,1118 +2209,3115 @@ }, "path": "v1/{+name}", "request": { - "$ref": "GoogleCloudContactcenterinsightsV1View" + "$ref": "GoogleCloudContactcenterinsightsV1IssueModel" }, "response": { - "$ref": "GoogleCloudContactcenterinsightsV1View" + "$ref": "GoogleCloudContactcenterinsightsV1IssueModel" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - } - } - } - } - } - } - } - }, - "revision": "20241008", - "rootUrl": "https://contactcenterinsights.googleapis.com/", - "schemas": { - "GoogleCloudContactcenterinsightsV1Analysis": { + }, + "undeploy": { + "description": "Undeploys an issue model. An issue model can not be used in analysis after it has been undeployed.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}:undeploy", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.issueModels.undeploy", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The issue model to undeploy.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:undeploy", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1UndeployIssueModelRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "issues": { + "methods": { + "delete": { + "description": "Deletes an issue.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}/issues/{issuesId}", + "httpMethod": "DELETE", + "id": "contactcenterinsights.projects.locations.issueModels.issues.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the issue to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+/issues/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets an issue.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}/issues/{issuesId}", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.issueModels.issues.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the issue to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+/issues/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1Issue" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists issues.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}/issues", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.issueModels.issues.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource of the issue.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/issues", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1ListIssuesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates an issue.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/issueModels/{issueModelsId}/issues/{issuesId}", + "httpMethod": "PATCH", + "id": "contactcenterinsights.projects.locations.issueModels.issues.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. The resource name of the issue. Format: projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/issueModels/[^/]+/issues/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "The list of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1Issue" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1Issue" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/operations", + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "phraseMatchers": { + "methods": { + "create": { + "description": "Creates a phrase matcher.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/phraseMatchers", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.phraseMatchers.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource of the phrase matcher. Required. The location to create a phrase matcher for. Format: `projects//locations/` or `projects//locations/`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/phraseMatchers", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatcher" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatcher" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a phrase matcher.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/phraseMatchers/{phraseMatchersId}", + "httpMethod": "DELETE", + "id": "contactcenterinsights.projects.locations.phraseMatchers.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the phrase matcher to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/phraseMatchers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a phrase matcher.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/phraseMatchers/{phraseMatchersId}", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.phraseMatchers.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the phrase matcher to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/phraseMatchers/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatcher" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists phrase matchers.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/phraseMatchers", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.phraseMatchers.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "A filter to reduce results to a specific subset. Useful for querying phrase matchers with specific properties.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of phrase matchers to return in the response. If this value is zero, the service will select a default size. A call might return fewer objects than requested. A non-empty `next_page_token` in the response indicates that more data is available.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListPhraseMatchersResponse`. This value indicates that this is a continuation of a prior `ListPhraseMatchers` call and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the phrase matcher.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/phraseMatchers", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1ListPhraseMatchersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a phrase matcher.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/phraseMatchers/{phraseMatchersId}", + "httpMethod": "PATCH", + "id": "contactcenterinsights.projects.locations.phraseMatchers.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the phrase matcher. Format: projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/phraseMatchers/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "The list of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatcher" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatcher" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "qaScorecards": { + "methods": { + "create": { + "description": "Create a QaScorecard.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.qaScorecards.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource of the QaScorecard.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "qaScorecardId": { + "description": "Optional. A unique ID for the new QaScorecard. This ID will become the final component of the QaScorecard's resource name. If no ID is specified, a server-generated ID will be used. This value should be 4-64 characters and must match the regular expression `^[a-z0-9-]{4,64}$`. Valid characters are `a-z-`.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/qaScorecards", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecard" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecard" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a QaScorecard.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}", + "httpMethod": "DELETE", + "id": "contactcenterinsights.projects.locations.qaScorecards.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "force": { + "description": "Optional. If set to true, all of this QaScorecard's child resources will also be deleted. Otherwise, the request will only succeed if it has none.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the QaScorecard to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a QaScorecard.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.qaScorecards.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the QaScorecard to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecard" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists QaScorecards.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.qaScorecards.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of scorecards to return in the response. If the value is zero, the service will select a default size. A call might return fewer objects than requested. A non-empty `next_page_token` in the response indicates that more data is available.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value returned by the last `ListQaScorecardsResponse`. This value indicates that this is a continuation of a prior `ListQaScorecards` call and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the scorecards.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/qaScorecards", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1ListQaScorecardsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a QaScorecard.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}", + "httpMethod": "PATCH", + "id": "contactcenterinsights.projects.locations.qaScorecards.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The scorecard name. Format: projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The list of fields to be updated. All possible fields can be updated by passing `*`, or a subset of the following updateable fields can be provided: * `description` * `display_name`", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecard" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecard" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "revisions": { + "methods": { + "create": { + "description": "Creates a QaScorecardRevision.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}/revisions", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.qaScorecards.revisions.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource of the QaScorecardRevision.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+$", + "required": true, + "type": "string" + }, + "qaScorecardRevisionId": { + "description": "Optional. A unique ID for the new QaScorecardRevision. This ID will become the final component of the QaScorecardRevision's resource name. If no ID is specified, a server-generated ID will be used. This value should be 4-64 characters and must match the regular expression `^[a-z0-9-]{4,64}$`. Valid characters are `a-z-`.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/revisions", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecardRevision" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecardRevision" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a QaScorecardRevision.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}/revisions/{revisionsId}", + "httpMethod": "DELETE", + "id": "contactcenterinsights.projects.locations.qaScorecards.revisions.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "force": { + "description": "Optional. If set to true, all of this QaScorecardRevision's child resources will also be deleted. Otherwise, the request will only succeed if it has none.", + "location": "query", + "type": "boolean" + }, + "name": { + "description": "Required. The name of the QaScorecardRevision to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "deploy": { + "description": "Deploy a QaScorecardRevision.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}/revisions/{revisionsId}:deploy", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.qaScorecards.revisions.deploy", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the QaScorecardRevision to deploy.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:deploy", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1DeployQaScorecardRevisionRequest" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecardRevision" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a QaScorecardRevision.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}/revisions/{revisionsId}", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.qaScorecards.revisions.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the QaScorecardRevision to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecardRevision" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all revisions under the parent QaScorecard.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}/revisions", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.qaScorecards.revisions.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. A filter to reduce results to a specific subset. Useful for querying scorecard revisions with specific properties.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of scorecard revisions to return in the response. If the value is zero, the service will select a default size. A call might return fewer objects than requested. A non-empty `next_page_token` in the response indicates that more data is available.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value returned by the last `ListQaScorecardRevisionsResponse`. This value indicates that this is a continuation of a prior `ListQaScorecardRevisions` call and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the scorecard revisions. To list all revisions of all scorecards, substitute the QaScorecard ID with a '-' character.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/revisions", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1ListQaScorecardRevisionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "tuneQaScorecardRevision": { + "description": "Fine tune one or more QaModels.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}/revisions/{revisionsId}:tuneQaScorecardRevision", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.qaScorecards.revisions.tuneQaScorecardRevision", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource for new fine tuning job instance.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}:tuneQaScorecardRevision", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1TuneQaScorecardRevisionRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "undeploy": { + "description": "Undeploy a QaScorecardRevision.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}/revisions/{revisionsId}:undeploy", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.qaScorecards.revisions.undeploy", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the QaScorecardRevision to undeploy.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:undeploy", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1UndeployQaScorecardRevisionRequest" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecardRevision" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "qaQuestions": { + "methods": { + "create": { + "description": "Create a QaQuestion.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}/revisions/{revisionsId}/qaQuestions", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.qaScorecards.revisions.qaQuestions.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource of the QaQuestion.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+$", + "required": true, + "type": "string" + }, + "qaQuestionId": { + "description": "Optional. A unique ID for the new question. This ID will become the final component of the question's resource name. If no ID is specified, a server-generated ID will be used. This value should be 4-64 characters and must match the regular expression `^[a-z0-9-]{4,64}$`. Valid characters are `a-z-`.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/qaQuestions", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1QaQuestion" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1QaQuestion" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a QaQuestion.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}/revisions/{revisionsId}/qaQuestions/{qaQuestionsId}", + "httpMethod": "DELETE", + "id": "contactcenterinsights.projects.locations.qaScorecards.revisions.qaQuestions.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the QaQuestion to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+/qaQuestions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a QaQuestion.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}/revisions/{revisionsId}/qaQuestions/{qaQuestionsId}", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.qaScorecards.revisions.qaQuestions.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the QaQuestion to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+/qaQuestions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1QaQuestion" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists QaQuestions.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}/revisions/{revisionsId}/qaQuestions", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.qaScorecards.revisions.qaQuestions.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of questions to return in the response. If the value is zero, the service will select a default size. A call might return fewer objects than requested. A non-empty `next_page_token` in the response indicates that more data is available.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value returned by the last `ListQaQuestionsResponse`. This value indicates that this is a continuation of a prior `ListQaQuestions` call and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the questions.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/qaQuestions", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1ListQaQuestionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a QaQuestion.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/qaScorecards/{qaScorecardsId}/revisions/{revisionsId}/qaQuestions/{qaQuestionsId}", + "httpMethod": "PATCH", + "id": "contactcenterinsights.projects.locations.qaScorecards.revisions.qaQuestions.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name of the question. Format: projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}/qaQuestions/{qa_question}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+/qaQuestions/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The list of fields to be updated. All possible fields can be updated by passing `*`, or a subset of the following updateable fields can be provided: * `abbreviation` * `answer_choices` * `answer_instructions` * `order` * `question_body` * `tags`", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1QaQuestion" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1QaQuestion" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + }, + "views": { + "methods": { + "create": { + "description": "Creates a view.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/views", + "httpMethod": "POST", + "id": "contactcenterinsights.projects.locations.views.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource of the view. Required. The location to create a view for. Format: `projects//locations/` or `projects//locations/`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/views", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1View" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1View" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a view.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/views/{viewsId}", + "httpMethod": "DELETE", + "id": "contactcenterinsights.projects.locations.views.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the view to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/views/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a view.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/views/{viewsId}", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.views.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the view to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/views/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1View" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists views.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/views", + "httpMethod": "GET", + "id": "contactcenterinsights.projects.locations.views.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of views to return in the response. If this value is zero, the service will select a default size. A call may return fewer objects than requested. A non-empty `next_page_token` in the response indicates that more data is available.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListViewsResponse`; indicates that this is a continuation of a prior `ListViews` call and the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the views.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/views", + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1ListViewsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a view.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/views/{viewsId}", + "httpMethod": "PATCH", + "id": "contactcenterinsights.projects.locations.views.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. The resource name of the view. Format: projects/{project}/locations/{location}/views/{view}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/views/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "The list of fields to be updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1View" + }, + "response": { + "$ref": "GoogleCloudContactcenterinsightsV1View" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + }, + "revision": "20241015", + "rootUrl": "https://contactcenterinsights.googleapis.com/", + "schemas": { + "GoogleCloudContactcenterinsightsV1Analysis": { "description": "The analysis resource.", "id": "GoogleCloudContactcenterinsightsV1Analysis", "properties": { - "analysisResult": { - "$ref": "GoogleCloudContactcenterinsightsV1AnalysisResult", - "description": "Output only. The result of the analysis, which is populated when the analysis finishes.", - "readOnly": true + "analysisResult": { + "$ref": "GoogleCloudContactcenterinsightsV1AnalysisResult", + "description": "Output only. The result of the analysis, which is populated when the analysis finishes.", + "readOnly": true + }, + "annotatorSelector": { + "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelector", + "description": "To select the annotators to run and the phrase matchers to use (if any). If not specified, all annotators will be run." + }, + "createTime": { + "description": "Output only. The time at which the analysis was created, which occurs when the long-running operation completes.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Immutable. The resource name of the analysis. Format: projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis}", + "type": "string" + }, + "requestTime": { + "description": "Output only. The time at which the analysis was requested.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1AnalysisResult": { + "description": "The result of an analysis.", + "id": "GoogleCloudContactcenterinsightsV1AnalysisResult", + "properties": { + "callAnalysisMetadata": { + "$ref": "GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata", + "description": "Call-specific metadata created by the analysis." + }, + "endTime": { + "description": "The time at which the analysis ended.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata": { + "description": "Call-specific metadata created during analysis.", + "id": "GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata", + "properties": { + "annotations": { + "description": "A list of call annotations that apply to this call.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1CallAnnotation" + }, + "type": "array" + }, + "entities": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1Entity" + }, + "description": "All the entities in the call.", + "type": "object" + }, + "intents": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1Intent" + }, + "description": "All the matched intents in the call.", + "type": "object" + }, + "issueModelResult": { + "$ref": "GoogleCloudContactcenterinsightsV1IssueModelResult", + "description": "Overall conversation-level issue modeling result." + }, + "phraseMatchers": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatchData" + }, + "description": "All the matched phrase matchers in the call.", + "type": "object" + }, + "qaScorecardResults": { + "description": "Results of scoring QaScorecards.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecardResult" + }, + "type": "array" + }, + "sentiments": { + "description": "Overall conversation-level sentiment for each channel of the call.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1ConversationLevelSentiment" + }, + "type": "array" + }, + "silence": { + "$ref": "GoogleCloudContactcenterinsightsV1ConversationLevelSilence", + "description": "Overall conversation-level silence during the call." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1AnalysisRule": { + "description": "The CCAI Insights project wide analysis rule. This rule will be applied to all conversations that match the filter defined in the rule. For a conversation matches the filter, the annotators specified in the rule will be run. If a conversation matches multiple rules, a union of all the annotators will be run. One project can have multiple analysis rules.", + "id": "GoogleCloudContactcenterinsightsV1AnalysisRule", + "properties": { + "active": { + "description": "If true, apply this rule to conversations. Otherwise, this rule is inactive and saved as a draft.", + "type": "boolean" + }, + "analysisPercentage": { + "description": "Percentage of conversations that we should apply this analysis setting automatically, between [0, 1]. For example, 0.1 means 10%. Conversations are sampled in a determenestic way. The original runtime_percentage & upload percentage will be replaced by defining filters on the conversation.", + "format": "double", + "type": "number" + }, + "annotatorSelector": { + "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelector", + "description": "Selector of annotators to run and the phrase matchers to use for conversations that matches the conversation_filter. If not specified, NO annotators will be run." + }, + "conversationFilter": { + "description": "Filter for the conversations that should apply this analysis rule. An empty filter means this analysis rule applies to all conversations.", + "type": "string" + }, + "createTime": { + "description": "Output only. The time at which this analysis rule was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Display Name of the analysis rule.", + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the analysis rule. Format: projects/{project}/locations/{location}/analysisRules/{analysis_rule}", + "type": "string" + }, + "updateTime": { + "description": "Output only. The most recent time at which this analysis rule was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1AnnotationBoundary": { + "description": "A point in a conversation that marks the start or the end of an annotation.", + "id": "GoogleCloudContactcenterinsightsV1AnnotationBoundary", + "properties": { + "transcriptIndex": { + "description": "The index in the sequence of transcribed pieces of the conversation where the boundary is located. This index starts at zero.", + "format": "int32", + "type": "integer" + }, + "wordIndex": { + "description": "The word index of this boundary with respect to the first word in the transcript piece. This index starts at zero.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1AnnotatorSelector": { + "description": "Selector of all available annotators and phrase matchers to run.", + "id": "GoogleCloudContactcenterinsightsV1AnnotatorSelector", + "properties": { + "issueModels": { + "description": "The issue model to run. If not provided, the most recently deployed topic model will be used. The provided issue model will only be used for inference if the issue model is deployed and if run_issue_model_annotator is set to true. If more than one issue model is provided, only the first provided issue model will be used for inference.", + "items": { + "type": "string" + }, + "type": "array" + }, + "phraseMatchers": { + "description": "The list of phrase matchers to run. If not provided, all active phrase matchers will be used. If inactive phrase matchers are provided, they will not be used. Phrase matchers will be run only if run_phrase_matcher_annotator is set to true. Format: projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}", + "items": { + "type": "string" + }, + "type": "array" + }, + "qaConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelectorQaConfig", + "description": "Configuration for the QA annotator." + }, + "runEntityAnnotator": { + "description": "Whether to run the entity annotator.", + "type": "boolean" + }, + "runIntentAnnotator": { + "description": "Whether to run the intent annotator.", + "type": "boolean" + }, + "runInterruptionAnnotator": { + "description": "Whether to run the interruption annotator.", + "type": "boolean" + }, + "runIssueModelAnnotator": { + "description": "Whether to run the issue model annotator. A model should have already been deployed for this to take effect.", + "type": "boolean" + }, + "runPhraseMatcherAnnotator": { + "description": "Whether to run the active phrase matcher annotator(s).", + "type": "boolean" + }, + "runQaAnnotator": { + "description": "Whether to run the QA annotator.", + "type": "boolean" + }, + "runSentimentAnnotator": { + "description": "Whether to run the sentiment annotator.", + "type": "boolean" + }, + "runSilenceAnnotator": { + "description": "Whether to run the silence annotator.", + "type": "boolean" + }, + "runSummarizationAnnotator": { + "description": "Whether to run the summarization annotator.", + "type": "boolean" + }, + "summarizationConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfig", + "description": "Configuration for the summarization annotator." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1AnnotatorSelectorQaConfig": { + "description": "Configuration for the QA feature.", + "id": "GoogleCloudContactcenterinsightsV1AnnotatorSelectorQaConfig", + "properties": { + "scorecardList": { + "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelectorQaConfigScorecardList", + "description": "A manual list of scorecards to score." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1AnnotatorSelectorQaConfigScorecardList": { + "description": "Container for a list of scorecards.", + "id": "GoogleCloudContactcenterinsightsV1AnnotatorSelectorQaConfigScorecardList", + "properties": { + "qaScorecardRevisions": { + "description": "List of QaScorecardRevisions.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfig": { + "description": "Configuration for summarization.", + "id": "GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfig", + "properties": { + "conversationProfile": { + "description": "Resource name of the Dialogflow conversation profile. Format: projects/{project}/locations/{location}/conversationProfiles/{conversation_profile}", + "type": "string" + }, + "summarizationModel": { + "description": "Default summarization model to be used.", + "enum": [ + "SUMMARIZATION_MODEL_UNSPECIFIED", + "BASELINE_MODEL", + "BASELINE_MODEL_V2_0" + ], + "enumDescriptions": [ + "Unspecified summarization model.", + "The CCAI baseline model.", + "The CCAI baseline model, V2.0." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1AnswerFeedback": { + "description": "The feedback that the customer has about a certain answer in the conversation.", + "id": "GoogleCloudContactcenterinsightsV1AnswerFeedback", + "properties": { + "clicked": { + "description": "Indicates whether an answer or item was clicked by the human agent.", + "type": "boolean" + }, + "correctnessLevel": { + "description": "The correctness level of an answer.", + "enum": [ + "CORRECTNESS_LEVEL_UNSPECIFIED", + "NOT_CORRECT", + "PARTIALLY_CORRECT", + "FULLY_CORRECT" + ], + "enumDescriptions": [ + "Correctness level unspecified.", + "Answer is totally wrong.", + "Answer is partially correct.", + "Answer is fully correct." + ], + "type": "string" + }, + "displayed": { + "description": "Indicates whether an answer or item was displayed to the human agent in the agent desktop UI.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1ArticleSuggestionData": { + "description": "Agent Assist Article Suggestion data.", + "id": "GoogleCloudContactcenterinsightsV1ArticleSuggestionData", + "properties": { + "confidenceScore": { + "description": "The system's confidence score that this article is a good match for this conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely certain).", + "format": "float", + "type": "number" + }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "Map that contains metadata about the Article Suggestion and the document that it originates from.", + "type": "object" + }, + "queryRecord": { + "description": "The name of the answer record. Format: projects/{project}/locations/{location}/answerRecords/{answer_record}", + "type": "string" + }, + "source": { + "description": "The knowledge document that this answer was extracted from. Format: projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}", + "type": "string" + }, + "title": { + "description": "Article title.", + "type": "string" + }, + "uri": { + "description": "Article URI.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsMetadata": { + "description": "The metadata for a bulk analyze conversations operation.", + "id": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsMetadata", + "properties": { + "completedAnalysesCount": { + "description": "The number of requested analyses that have completed successfully so far.", + "format": "int32", + "type": "integer" + }, + "createTime": { + "description": "The time the operation was created.", + "format": "google-datetime", + "type": "string" + }, + "endTime": { + "description": "The time the operation finished running.", + "format": "google-datetime", + "type": "string" + }, + "failedAnalysesCount": { + "description": "The number of requested analyses that have failed so far.", + "format": "int32", + "type": "integer" + }, + "partialErrors": { + "description": "Output only. Partial errors during bulk analyze operation that might cause the operation output to be incomplete.", + "items": { + "$ref": "GoogleRpcStatus" + }, + "readOnly": true, + "type": "array" + }, + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest", + "description": "The original request for bulk analyze." + }, + "totalRequestedAnalysesCount": { + "description": "Total number of analyses requested. Computed by the number of conversations returned by `filter` multiplied by `analysis_percentage` in the request.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest": { + "description": "The request to analyze conversations in bulk.", + "id": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest", + "properties": { + "analysisPercentage": { + "description": "Required. Percentage of selected conversation to analyze, between [0, 100].", + "format": "float", + "type": "number" + }, + "annotatorSelector": { + "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelector", + "description": "To select the annotators to run and the phrase matchers to use (if any). If not specified, all annotators will be run." + }, + "filter": { + "description": "Required. Filter used to select the subset of conversations to analyze.", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource to create analyses in.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsResponse": { + "description": "The response for a bulk analyze conversations operation.", + "id": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsResponse", + "properties": { + "failedAnalysisCount": { + "description": "Count of failed analyses.", + "format": "int32", + "type": "integer" + }, + "successfulAnalysisCount": { + "description": "Count of successful analyses.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsMetadata": { + "description": "The metadata for a bulk delete conversations operation.", + "id": "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsMetadata", + "properties": { + "createTime": { + "description": "The time the operation was created.", + "format": "google-datetime", + "type": "string" + }, + "endTime": { + "description": "The time the operation finished running.", + "format": "google-datetime", + "type": "string" + }, + "partialErrors": { + "description": "Partial errors during bulk delete conversations operation that might cause the operation output to be incomplete.", + "items": { + "$ref": "GoogleRpcStatus" + }, + "type": "array" + }, + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest", + "description": "The original request for bulk delete." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest": { + "description": "The request to delete conversations in bulk.", + "id": "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest", + "properties": { + "filter": { + "description": "Filter used to select the subset of conversations to delete.", + "type": "string" + }, + "force": { + "description": "If set to true, all of this conversation's analyses will also be deleted. Otherwise, the request will only succeed if the conversation has no analyses.", + "type": "boolean" + }, + "maxDeleteCount": { + "description": "Maximum number of conversations to delete.", + "format": "int32", + "type": "integer" + }, + "parent": { + "description": "Required. The parent resource to delete conversations from. Format: projects/{project}/locations/{location}", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsResponse": { + "description": "The response for a bulk delete conversations operation.", + "id": "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsResponse", + "properties": {}, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsMetadata": { + "description": "Metadata for the BulkDownloadFeedbackLabel endpoint.", + "id": "GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsMetadata", + "properties": { + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "downloadStats": { + "$ref": "GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsMetadataDownloadStats", + "description": "Output only. Statistics for BulkDownloadFeedbackLabels operation.", + "readOnly": true + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "partialErrors": { + "description": "Partial errors during ingest operation that might cause the operation output to be incomplete.", + "items": { + "$ref": "GoogleRpcStatus" + }, + "type": "array" + }, + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequest", + "description": "Output only. The original request for download.", + "readOnly": true + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsMetadataDownloadStats": { + "description": "Statistics for BulkDownloadFeedbackLabels operation.", + "id": "GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsMetadataDownloadStats", + "properties": { + "fileNames": { + "description": "Output only. Full name of the files written to Cloud storage.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "processedObjectCount": { + "description": "The number of objects processed during the download operation.", + "format": "int32", + "type": "integer" + }, + "successfulDownloadCount": { + "description": "The number of new feedback labels downloaded during this operation. Different from \"processed\" because some labels might not be downloaded because an error.", + "format": "int32", + "type": "integer" + }, + "totalFilesWritten": { + "description": "Total number of files written to the provided Cloud Storage bucket.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequest": { + "description": "Request for the BulkDownloadFeedbackLabel endpoint.", + "id": "GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequest", + "properties": { + "conversationFilter": { + "description": "Optional. Filter parent conversations to download feedback labels for. When specified, the feedback labels will be downloaded for the conversations that match the filter. If `template_qa_scorecard_id` is set, all the conversations that match the filter will be paired with the questions under the scorecard for labeling.", + "type": "string" + }, + "feedbackLabelType": { + "description": "Optional. The type of feedback labels that will be downloaded.", + "enum": [ + "FEEDBACK_LABEL_TYPE_UNSPECIFIED", + "QUALITY_AI", + "TOPIC_MODELING" + ], + "enumDescriptions": [ + "Unspecified format", + "Downloaded file will contain all Quality AI labels from the latest scorecard revision.", + "Downloaded file will contain only Topic Modeling labels." + ], + "type": "string" + }, + "filter": { + "description": "Optional. A filter to reduce results to a specific subset. Supports disjunctions (OR) and conjunctions (AND). Supported fields: * `issue_model_id` * `qa_question_id` * `qa_scorecard_id` * `min_create_time` * `max_create_time` * `min_update_time` * `max_update_time` * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING", + "type": "string" + }, + "gcsDestination": { + "$ref": "GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequestGcsDestination", + "description": "A cloud storage bucket destination." + }, + "maxDownloadCount": { + "description": "Optional. Limits the maximum number of feedback labels that will be downloaded. The first `N` feedback labels will be downloaded.", + "format": "int32", + "type": "integer" + }, + "parent": { + "description": "Required. The parent resource for new feedback labels.", + "type": "string" + }, + "templateQaScorecardId": { + "description": "Optional. If set, a template for labeling conversations and scorecard questions will be created from the conversation_filter and the questions under the scorecard(s). The feedback label `filter` will be ignored.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequestGcsDestination": { + "description": "Google Cloud Storage Object details to write the feedback labels to.", + "id": "GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequestGcsDestination", + "properties": { + "addWhitespace": { + "description": "Optional. Add whitespace to the JSON file. Makes easier to read, but increases file size. Only applicable for JSON format.", + "type": "boolean" + }, + "alwaysPrintEmptyFields": { + "description": "Optional. Always print fields with no presence. This is useful for printing fields that are not set, like implicit 0 value or empty lists/maps. Only applicable for JSON format.", + "type": "boolean" + }, + "format": { + "description": "Required. File format in which the labels will be exported.", + "enum": [ + "FORMAT_UNSPECIFIED", + "CSV", + "JSON" + ], + "enumDescriptions": [ + "Unspecified format.", + "CSV format. 1,000 labels are stored per CSV file by default.", + "JSON format. 1 label stored per JSON file by default." + ], + "type": "string" + }, + "objectUri": { + "description": "Required. The Google Cloud Storage URI to write the feedback labels to. The file name will be used as a prefix for the files written to the bucket if the output needs to be split across multiple files, otherwise it will be used as is. The file extension will be appended to the file name based on the format selected. E.g. `gs://bucket_name/object_uri_prefix`", + "type": "string" + }, + "recordsPerFileCount": { + "description": "Optional. The number of records per file. Applicable for either format.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsResponse": { + "description": "Response for the BulkDownloadFeedbackLabel endpoint.", + "id": "GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsResponse", + "properties": {}, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequest": { + "description": "The request for bulk uploading feedback labels.", + "id": "GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequest", + "properties": { + "gcsSource": { + "$ref": "GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequestGcsSource", + "description": "A cloud storage bucket source." + }, + "validateOnly": { + "description": "Optional. If set, upload will not happen and the labels will be validated. If not set, then default behavior will be to upload the labels after validation is complete.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequestGcsSource": { + "description": "Google Cloud Storage Object details to get the feedback label file from.", + "id": "GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequestGcsSource", + "properties": { + "format": { + "description": "Required. File format which will be ingested.", + "enum": [ + "FORMAT_UNSPECIFIED", + "CSV", + "JSON" + ], + "enumDescriptions": [ + "Unspecified format.", + "CSV format.", + "JSON format." + ], + "type": "string" + }, + "objectUri": { + "description": "Required. The Google Cloud Storage URI of the file to import. Format: `gs://bucket_name/object_name`", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1CalculateIssueModelStatsResponse": { + "description": "Response of querying an issue model's statistics.", + "id": "GoogleCloudContactcenterinsightsV1CalculateIssueModelStatsResponse", + "properties": { + "currentStats": { + "$ref": "GoogleCloudContactcenterinsightsV1IssueModelLabelStats", + "description": "The latest label statistics for the queried issue model. Includes results on both training data and data labeled after deployment." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1CalculateStatsResponse": { + "description": "The response for calculating conversation statistics.", + "id": "GoogleCloudContactcenterinsightsV1CalculateStatsResponse", + "properties": { + "averageDuration": { + "description": "The average duration of all conversations. The average is calculated using only conversations that have a time duration.", + "format": "google-duration", + "type": "string" }, - "annotatorSelector": { - "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelector", - "description": "To select the annotators to run and the phrase matchers to use (if any). If not specified, all annotators will be run." + "averageTurnCount": { + "description": "The average number of turns per conversation.", + "format": "int32", + "type": "integer" }, - "createTime": { - "description": "Output only. The time at which the analysis was created, which occurs when the long-running operation completes.", - "format": "google-datetime", - "readOnly": true, - "type": "string" + "conversationCount": { + "description": "The total number of conversations.", + "format": "int32", + "type": "integer" }, - "name": { - "description": "Immutable. The resource name of the analysis. Format: projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis}", - "type": "string" + "conversationCountTimeSeries": { + "$ref": "GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeries", + "description": "A time series representing the count of conversations created over time that match that requested filter criteria." }, - "requestTime": { - "description": "Output only. The time at which the analysis was requested.", - "format": "google-datetime", - "readOnly": true, + "customHighlighterMatches": { + "additionalProperties": { + "format": "int32", + "type": "integer" + }, + "description": "A map associating each custom highlighter resource name with its respective number of matches in the set of conversations.", + "type": "object" + }, + "issueMatches": { + "additionalProperties": { + "format": "int32", + "type": "integer" + }, + "deprecated": true, + "description": "A map associating each issue resource name with its respective number of matches in the set of conversations. Key has the format: `projects//locations//issueModels//issues/` Deprecated, use `issue_matches_stats` field instead.", + "type": "object" + }, + "issueMatchesStats": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1IssueModelLabelStatsIssueStats" + }, + "description": "A map associating each issue resource name with its respective number of matches in the set of conversations. Key has the format: `projects//locations//issueModels//issues/`", + "type": "object" + }, + "smartHighlighterMatches": { + "additionalProperties": { + "format": "int32", + "type": "integer" + }, + "description": "A map associating each smart highlighter display name with its respective number of matches in the set of conversations.", + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeries": { + "description": "A time series representing conversations over time.", + "id": "GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeries", + "properties": { + "intervalDuration": { + "description": "The duration of each interval.", + "format": "google-duration", "type": "string" + }, + "points": { + "description": "An ordered list of intervals from earliest to latest, where each interval represents the number of conversations that transpired during the time window.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeriesInterval" + }, + "type": "array" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1AnalysisResult": { - "description": "The result of an analysis.", - "id": "GoogleCloudContactcenterinsightsV1AnalysisResult", + "GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeriesInterval": { + "description": "A single interval in a time series.", + "id": "GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeriesInterval", "properties": { - "callAnalysisMetadata": { - "$ref": "GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata", - "description": "Call-specific metadata created by the analysis." + "conversationCount": { + "description": "The number of conversations created in this interval.", + "format": "int32", + "type": "integer" }, - "endTime": { - "description": "The time at which the analysis ended.", + "startTime": { + "description": "The start time of this interval.", "format": "google-datetime", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata": { - "description": "Call-specific metadata created during analysis.", - "id": "GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata", + "GoogleCloudContactcenterinsightsV1CallAnnotation": { + "description": "A piece of metadata that applies to a window of a call.", + "id": "GoogleCloudContactcenterinsightsV1CallAnnotation", "properties": { - "annotations": { - "description": "A list of call annotations that apply to this call.", - "items": { - "$ref": "GoogleCloudContactcenterinsightsV1CallAnnotation" - }, - "type": "array" + "annotationEndBoundary": { + "$ref": "GoogleCloudContactcenterinsightsV1AnnotationBoundary", + "description": "The boundary in the conversation where the annotation ends, inclusive." }, - "entities": { - "additionalProperties": { - "$ref": "GoogleCloudContactcenterinsightsV1Entity" - }, - "description": "All the entities in the call.", - "type": "object" + "annotationStartBoundary": { + "$ref": "GoogleCloudContactcenterinsightsV1AnnotationBoundary", + "description": "The boundary in the conversation where the annotation starts, inclusive." }, - "intents": { + "channelTag": { + "description": "The channel of the audio where the annotation occurs. For single-channel audio, this field is not populated.", + "format": "int32", + "type": "integer" + }, + "entityMentionData": { + "$ref": "GoogleCloudContactcenterinsightsV1EntityMentionData", + "description": "Data specifying an entity mention." + }, + "holdData": { + "$ref": "GoogleCloudContactcenterinsightsV1HoldData", + "description": "Data specifying a hold." + }, + "intentMatchData": { + "$ref": "GoogleCloudContactcenterinsightsV1IntentMatchData", + "description": "Data specifying an intent match." + }, + "interruptionData": { + "$ref": "GoogleCloudContactcenterinsightsV1InterruptionData", + "description": "Data specifying an interruption." + }, + "issueMatchData": { + "$ref": "GoogleCloudContactcenterinsightsV1IssueMatchData", + "description": "Data specifying an issue match." + }, + "phraseMatchData": { + "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatchData", + "description": "Data specifying a phrase match." + }, + "sentimentData": { + "$ref": "GoogleCloudContactcenterinsightsV1SentimentData", + "description": "Data specifying sentiment." + }, + "silenceData": { + "$ref": "GoogleCloudContactcenterinsightsV1SilenceData", + "description": "Data specifying silence." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1Conversation": { + "description": "The conversation resource.", + "id": "GoogleCloudContactcenterinsightsV1Conversation", + "properties": { + "agentId": { + "description": "An opaque, user-specified string representing the human agent who handled the conversation.", + "type": "string" + }, + "callMetadata": { + "$ref": "GoogleCloudContactcenterinsightsV1ConversationCallMetadata", + "description": "Call-specific metadata." + }, + "createTime": { + "description": "Output only. The time at which the conversation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "dataSource": { + "$ref": "GoogleCloudContactcenterinsightsV1ConversationDataSource", + "description": "The source of the audio and transcription for the conversation." + }, + "dialogflowIntents": { "additionalProperties": { - "$ref": "GoogleCloudContactcenterinsightsV1Intent" + "$ref": "GoogleCloudContactcenterinsightsV1DialogflowIntent" }, - "description": "All the matched intents in the call.", + "description": "Output only. All the matched Dialogflow intents in the call. The key corresponds to a Dialogflow intent, format: projects/{project}/agent/{agent}/intents/{intent}", + "readOnly": true, "type": "object" }, - "issueModelResult": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueModelResult", - "description": "Overall conversation-level issue modeling result." + "duration": { + "description": "Output only. The duration of the conversation.", + "format": "google-duration", + "readOnly": true, + "type": "string" }, - "phraseMatchers": { + "expireTime": { + "description": "The time at which this conversation should expire. After this time, the conversation data and any associated analyses will be deleted.", + "format": "google-datetime", + "type": "string" + }, + "labels": { "additionalProperties": { - "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatchData" + "type": "string" }, - "description": "All the matched phrase matchers in the call.", + "description": "A map for the user to specify any custom fields. A maximum of 20 labels per conversation is allowed, with a maximum of 256 characters per entry.", "type": "object" }, - "sentiments": { - "description": "Overall conversation-level sentiment for each channel of the call.", + "languageCode": { + "description": "A user-specified language code for the conversation.", + "type": "string" + }, + "latestAnalysis": { + "$ref": "GoogleCloudContactcenterinsightsV1Analysis", + "description": "Output only. The conversation's latest analysis, if one exists.", + "readOnly": true + }, + "latestSummary": { + "$ref": "GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData", + "description": "Output only. Latest summary of the conversation.", + "readOnly": true + }, + "medium": { + "description": "Immutable. The conversation medium, if unspecified will default to PHONE_CALL.", + "enum": [ + "MEDIUM_UNSPECIFIED", + "PHONE_CALL", + "CHAT" + ], + "enumDescriptions": [ + "Default value, if unspecified will default to PHONE_CALL.", + "The format for conversations that took place over the phone.", + "The format for conversations that took place over chat." + ], + "type": "string" + }, + "metadataJson": { + "description": "Input only. JSON metadata encoded as a string. This field is primarily used by Insights integrations with various telphony systems and must be in one of Insight's supported formats.", + "type": "string" + }, + "name": { + "description": "Immutable. The resource name of the conversation. Format: projects/{project}/locations/{location}/conversations/{conversation}", + "type": "string" + }, + "obfuscatedUserId": { + "description": "Obfuscated user ID which the customer sent to us.", + "type": "string" + }, + "qualityMetadata": { + "$ref": "GoogleCloudContactcenterinsightsV1ConversationQualityMetadata", + "description": "Conversation metadata related to quality management." + }, + "runtimeAnnotations": { + "description": "Output only. The annotations that were generated during the customer and agent interaction.", "items": { - "$ref": "GoogleCloudContactcenterinsightsV1ConversationLevelSentiment" + "$ref": "GoogleCloudContactcenterinsightsV1RuntimeAnnotation" }, + "readOnly": true, "type": "array" }, - "silence": { - "$ref": "GoogleCloudContactcenterinsightsV1ConversationLevelSilence", - "description": "Overall conversation-level silence during the call." + "startTime": { + "description": "The time at which the conversation started.", + "format": "google-datetime", + "type": "string" + }, + "transcript": { + "$ref": "GoogleCloudContactcenterinsightsV1ConversationTranscript", + "description": "Output only. The conversation transcript.", + "readOnly": true + }, + "ttl": { + "description": "Input only. The TTL for this resource. If specified, then this TTL will be used to calculate the expire time.", + "format": "google-duration", + "type": "string" + }, + "turnCount": { + "description": "Output only. The number of turns in the conversation.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "updateTime": { + "description": "Output only. The most recent time at which the conversation was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1AnnotationBoundary": { - "description": "A point in a conversation that marks the start or the end of an annotation.", - "id": "GoogleCloudContactcenterinsightsV1AnnotationBoundary", + "GoogleCloudContactcenterinsightsV1ConversationCallMetadata": { + "description": "Call-specific metadata.", + "id": "GoogleCloudContactcenterinsightsV1ConversationCallMetadata", "properties": { - "transcriptIndex": { - "description": "The index in the sequence of transcribed pieces of the conversation where the boundary is located. This index starts at zero.", + "agentChannel": { + "description": "The audio channel that contains the agent.", "format": "int32", "type": "integer" }, - "wordIndex": { - "description": "The word index of this boundary with respect to the first word in the transcript piece. This index starts at zero.", + "customerChannel": { + "description": "The audio channel that contains the customer.", "format": "int32", "type": "integer" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1AnnotatorSelector": { - "description": "Selector of all available annotators and phrase matchers to run.", - "id": "GoogleCloudContactcenterinsightsV1AnnotatorSelector", + "GoogleCloudContactcenterinsightsV1ConversationDataSource": { + "description": "The conversation source, which is a combination of transcript and audio.", + "id": "GoogleCloudContactcenterinsightsV1ConversationDataSource", "properties": { - "issueModels": { - "description": "The issue model to run. If not provided, the most recently deployed topic model will be used. The provided issue model will only be used for inference if the issue model is deployed and if run_issue_model_annotator is set to true. If more than one issue model is provided, only the first provided issue model will be used for inference.", - "items": { - "type": "string" - }, - "type": "array" - }, - "phraseMatchers": { - "description": "The list of phrase matchers to run. If not provided, all active phrase matchers will be used. If inactive phrase matchers are provided, they will not be used. Phrase matchers will be run only if run_phrase_matcher_annotator is set to true. Format: projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}", - "items": { - "type": "string" - }, - "type": "array" - }, - "runEntityAnnotator": { - "description": "Whether to run the entity annotator.", - "type": "boolean" - }, - "runIntentAnnotator": { - "description": "Whether to run the intent annotator.", - "type": "boolean" - }, - "runInterruptionAnnotator": { - "description": "Whether to run the interruption annotator.", - "type": "boolean" - }, - "runIssueModelAnnotator": { - "description": "Whether to run the issue model annotator. A model should have already been deployed for this to take effect.", - "type": "boolean" - }, - "runPhraseMatcherAnnotator": { - "description": "Whether to run the active phrase matcher annotator(s).", - "type": "boolean" - }, - "runSentimentAnnotator": { - "description": "Whether to run the sentiment annotator.", - "type": "boolean" - }, - "runSilenceAnnotator": { - "description": "Whether to run the silence annotator.", - "type": "boolean" - }, - "runSummarizationAnnotator": { - "description": "Whether to run the summarization annotator.", - "type": "boolean" + "dialogflowSource": { + "$ref": "GoogleCloudContactcenterinsightsV1DialogflowSource", + "description": "The source when the conversation comes from Dialogflow." }, - "summarizationConfig": { - "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfig", - "description": "Configuration for the summarization annotator." + "gcsSource": { + "$ref": "GoogleCloudContactcenterinsightsV1GcsSource", + "description": "A Cloud Storage location specification for the audio and transcript." } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfig": { - "description": "Configuration for summarization.", - "id": "GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfig", + "GoogleCloudContactcenterinsightsV1ConversationLevelSentiment": { + "description": "One channel of conversation-level sentiment data.", + "id": "GoogleCloudContactcenterinsightsV1ConversationLevelSentiment", "properties": { - "conversationProfile": { - "description": "Resource name of the Dialogflow conversation profile. Format: projects/{project}/locations/{location}/conversationProfiles/{conversation_profile}", - "type": "string" + "channelTag": { + "description": "The channel of the audio that the data applies to.", + "format": "int32", + "type": "integer" }, - "summarizationModel": { - "description": "Default summarization model to be used.", - "enum": [ - "SUMMARIZATION_MODEL_UNSPECIFIED", - "BASELINE_MODEL", - "BASELINE_MODEL_V2_0" - ], - "enumDescriptions": [ - "Unspecified summarization model.", - "The CCAI baseline model.", - "The CCAI baseline model, V2.0." - ], - "type": "string" + "sentimentData": { + "$ref": "GoogleCloudContactcenterinsightsV1SentimentData", + "description": "Data specifying sentiment." } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1AnswerFeedback": { - "description": "The feedback that the customer has about a certain answer in the conversation.", - "id": "GoogleCloudContactcenterinsightsV1AnswerFeedback", + "GoogleCloudContactcenterinsightsV1ConversationLevelSilence": { + "description": "Conversation-level silence data.", + "id": "GoogleCloudContactcenterinsightsV1ConversationLevelSilence", "properties": { - "clicked": { - "description": "Indicates whether an answer or item was clicked by the human agent.", - "type": "boolean" - }, - "correctnessLevel": { - "description": "The correctness level of an answer.", - "enum": [ - "CORRECTNESS_LEVEL_UNSPECIFIED", - "NOT_CORRECT", - "PARTIALLY_CORRECT", - "FULLY_CORRECT" - ], - "enumDescriptions": [ - "Correctness level unspecified.", - "Answer is totally wrong.", - "Answer is partially correct.", - "Answer is fully correct." - ], + "silenceDuration": { + "description": "Amount of time calculated to be in silence.", + "format": "google-duration", "type": "string" }, - "displayed": { - "description": "Indicates whether an answer or item was displayed to the human agent in the agent desktop UI.", - "type": "boolean" + "silencePercentage": { + "description": "Percentage of the total conversation spent in silence.", + "format": "float", + "type": "number" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ArticleSuggestionData": { - "description": "Agent Assist Article Suggestion data.", - "id": "GoogleCloudContactcenterinsightsV1ArticleSuggestionData", + "GoogleCloudContactcenterinsightsV1ConversationParticipant": { + "description": "The call participant speaking for a given utterance.", + "id": "GoogleCloudContactcenterinsightsV1ConversationParticipant", "properties": { - "confidenceScore": { - "description": "The system's confidence score that this article is a good match for this conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely certain).", - "format": "float", - "type": "number" - }, - "metadata": { - "additionalProperties": { - "type": "string" - }, - "description": "Map that contains metadata about the Article Suggestion and the document that it originates from.", - "type": "object" - }, - "queryRecord": { - "description": "The name of the answer record. Format: projects/{project}/locations/{location}/answerRecords/{answer_record}", - "type": "string" - }, - "source": { - "description": "The knowledge document that this answer was extracted from. Format: projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}", + "dialogflowParticipant": { + "deprecated": true, + "description": "Deprecated. Use `dialogflow_participant_name` instead. The name of the Dialogflow participant. Format: projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}", "type": "string" }, - "title": { - "description": "Article title.", + "dialogflowParticipantName": { + "description": "The name of the participant provided by Dialogflow. Format: projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}", "type": "string" }, - "uri": { - "description": "Article URI.", + "obfuscatedExternalUserId": { + "description": "Obfuscated user ID from Dialogflow.", "type": "string" - } - }, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsMetadata": { - "description": "The metadata for a bulk analyze conversations operation.", - "id": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsMetadata", - "properties": { - "completedAnalysesCount": { - "description": "The number of requested analyses that have completed successfully so far.", - "format": "int32", - "type": "integer" }, - "createTime": { - "description": "The time the operation was created.", - "format": "google-datetime", + "role": { + "description": "The role of the participant.", + "enum": [ + "ROLE_UNSPECIFIED", + "HUMAN_AGENT", + "AUTOMATED_AGENT", + "END_USER", + "ANY_AGENT" + ], + "enumDescriptions": [ + "Participant's role is not set.", + "Participant is a human agent.", + "Participant is an automated agent.", + "Participant is an end user who conversed with the contact center.", + "Participant is either a human or automated agent." + ], "type": "string" }, - "endTime": { - "description": "The time the operation finished running.", - "format": "google-datetime", + "userId": { + "description": "A user-specified ID representing the participant.", "type": "string" - }, - "failedAnalysesCount": { - "description": "The number of requested analyses that have failed so far.", - "format": "int32", - "type": "integer" - }, - "partialErrors": { - "description": "Output only. Partial errors during bulk analyze operation that might cause the operation output to be incomplete.", + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1ConversationQualityMetadata": { + "description": "Conversation metadata related to quality management.", + "id": "GoogleCloudContactcenterinsightsV1ConversationQualityMetadata", + "properties": { + "agentInfo": { + "description": "Information about agents involved in the call.", "items": { - "$ref": "GoogleRpcStatus" + "$ref": "GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfo" }, - "readOnly": true, "type": "array" }, - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest", - "description": "The original request for bulk analyze." - }, - "totalRequestedAnalysesCount": { - "description": "Total number of analyses requested. Computed by the number of conversations returned by `filter` multiplied by `analysis_percentage` in the request.", + "customerSatisfactionRating": { + "description": "An arbitrary integer value indicating the customer's satisfaction rating.", "format": "int32", "type": "integer" + }, + "menuPath": { + "description": "An arbitrary string value specifying the menu path the customer took.", + "type": "string" + }, + "waitDuration": { + "description": "The amount of time the customer waited to connect with an agent.", + "format": "google-duration", + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest": { - "description": "The request to analyze conversations in bulk.", - "id": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest", + "GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfo": { + "description": "Information about an agent involved in the conversation.", + "id": "GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfo", "properties": { - "analysisPercentage": { - "description": "Required. Percentage of selected conversation to analyze, between [0, 100].", - "format": "float", - "type": "number" + "agentId": { + "description": "A user-specified string representing the agent.", + "type": "string" }, - "annotatorSelector": { - "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelector", - "description": "To select the annotators to run and the phrase matchers to use (if any). If not specified, all annotators will be run." + "displayName": { + "description": "The agent's name.", + "type": "string" }, - "filter": { - "description": "Required. Filter used to select the subset of conversations to analyze.", + "dispositionCode": { + "description": "A user-provided string indicating the outcome of the agent's segment of the call.", "type": "string" }, - "parent": { - "description": "Required. The parent resource to create analyses in.", + "team": { + "description": "A user-specified string representing the agent's team.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsResponse": { - "description": "The response for a bulk analyze conversations operation.", - "id": "GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsResponse", + "GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData": { + "description": "Conversation summarization suggestion data.", + "id": "GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData", "properties": { - "failedAnalysisCount": { - "description": "Count of failed analyses.", - "format": "int32", - "type": "integer" + "answerRecord": { + "description": "The name of the answer record. Format: projects/{project}/locations/{location}/answerRecords/{answer_record}", + "type": "string" }, - "successfulAnalysisCount": { - "description": "Count of successful analyses.", - "format": "int32", - "type": "integer" + "confidence": { + "description": "The confidence score of the summarization.", + "format": "float", + "type": "number" + }, + "conversationModel": { + "description": "The name of the model that generates this summary. Format: projects/{project}/locations/{location}/conversationModels/{conversation_model}", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "A map that contains metadata about the summarization and the document from which it originates.", + "type": "object" + }, + "text": { + "description": "The summarization content that is concatenated into one string.", + "type": "string" + }, + "textSections": { + "additionalProperties": { + "type": "string" + }, + "description": "The summarization content that is divided into sections. The key is the section's name and the value is the section's content. There is no specific format for the key or value.", + "type": "object" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsMetadata": { - "description": "The metadata for a bulk delete conversations operation.", - "id": "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsMetadata", + "GoogleCloudContactcenterinsightsV1ConversationTranscript": { + "description": "A message representing the transcript of a conversation.", + "id": "GoogleCloudContactcenterinsightsV1ConversationTranscript", "properties": { - "createTime": { - "description": "The time the operation was created.", - "format": "google-datetime", - "type": "string" - }, - "endTime": { - "description": "The time the operation finished running.", - "format": "google-datetime", - "type": "string" - }, - "partialErrors": { - "description": "Partial errors during bulk delete conversations operation that might cause the operation output to be incomplete.", + "transcriptSegments": { + "description": "A list of sequential transcript segments that comprise the conversation.", "items": { - "$ref": "GoogleRpcStatus" + "$ref": "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegment" }, "type": "array" - }, - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest", - "description": "The original request for bulk delete." } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest": { - "description": "The request to delete conversations in bulk.", - "id": "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest", + "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegment": { + "description": "A segment of a full transcript.", + "id": "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegment", "properties": { - "filter": { - "description": "Filter used to select the subset of conversations to delete.", + "channelTag": { + "description": "For conversations derived from multi-channel audio, this is the channel number corresponding to the audio from that channel. For audioChannelCount = N, its output values can range from '1' to 'N'. A channel tag of 0 indicates that the audio is mono.", + "format": "int32", + "type": "integer" + }, + "confidence": { + "description": "A confidence estimate between 0.0 and 1.0 of the fidelity of this segment. A default value of 0.0 indicates that the value is unset.", + "format": "float", + "type": "number" + }, + "dialogflowSegmentMetadata": { + "$ref": "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentDialogflowSegmentMetadata", + "description": "CCAI metadata relating to the current transcript segment." + }, + "languageCode": { + "description": "The language code of this segment as a [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. Example: \"en-US\".", "type": "string" }, - "force": { - "description": "If set to true, all of this conversation's analyses will also be deleted. Otherwise, the request will only succeed if the conversation has no analyses.", - "type": "boolean" + "messageTime": { + "description": "The time that the message occurred, if provided.", + "format": "google-datetime", + "type": "string" }, - "maxDeleteCount": { - "description": "Maximum number of conversations to delete.", - "format": "int32", - "type": "integer" + "segmentParticipant": { + "$ref": "GoogleCloudContactcenterinsightsV1ConversationParticipant", + "description": "The participant of this segment." }, - "parent": { - "description": "Required. The parent resource to delete conversations from. Format: projects/{project}/locations/{location}", + "sentiment": { + "$ref": "GoogleCloudContactcenterinsightsV1SentimentData", + "description": "The sentiment for this transcript segment." + }, + "text": { + "description": "The text of this segment.", "type": "string" + }, + "words": { + "description": "A list of the word-specific information for each word in the segment.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentWordInfo" + }, + "type": "array" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsResponse": { - "description": "The response for a bulk delete conversations operation.", - "id": "GoogleCloudContactcenterinsightsV1BulkDeleteConversationsResponse", - "properties": {}, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1CalculateIssueModelStatsResponse": { - "description": "Response of querying an issue model's statistics.", - "id": "GoogleCloudContactcenterinsightsV1CalculateIssueModelStatsResponse", + "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentDialogflowSegmentMetadata": { + "description": "Metadata from Dialogflow relating to the current transcript segment.", + "id": "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentDialogflowSegmentMetadata", "properties": { - "currentStats": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueModelLabelStats", - "description": "The latest label statistics for the queried issue model. Includes results on both training data and data labeled after deployment." + "smartReplyAllowlistCovered": { + "description": "Whether the transcript segment was covered under the configured smart reply allowlist in Agent Assist.", + "type": "boolean" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1CalculateStatsResponse": { - "description": "The response for calculating conversation statistics.", - "id": "GoogleCloudContactcenterinsightsV1CalculateStatsResponse", + "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentWordInfo": { + "description": "Word-level info for words in a transcript.", + "id": "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentWordInfo", "properties": { - "averageDuration": { - "description": "The average duration of all conversations. The average is calculated using only conversations that have a time duration.", + "confidence": { + "description": "A confidence estimate between 0.0 and 1.0 of the fidelity of this word. A default value of 0.0 indicates that the value is unset.", + "format": "float", + "type": "number" + }, + "endOffset": { + "description": "Time offset of the end of this word relative to the beginning of the total conversation.", "format": "google-duration", "type": "string" }, - "averageTurnCount": { - "description": "The average number of turns per conversation.", - "format": "int32", - "type": "integer" - }, - "conversationCount": { - "description": "The total number of conversations.", - "format": "int32", - "type": "integer" - }, - "conversationCountTimeSeries": { - "$ref": "GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeries", - "description": "A time series representing the count of conversations created over time that match that requested filter criteria." - }, - "customHighlighterMatches": { - "additionalProperties": { - "format": "int32", - "type": "integer" - }, - "description": "A map associating each custom highlighter resource name with its respective number of matches in the set of conversations.", - "type": "object" - }, - "issueMatches": { - "additionalProperties": { - "format": "int32", - "type": "integer" - }, - "deprecated": true, - "description": "A map associating each issue resource name with its respective number of matches in the set of conversations. Key has the format: `projects//locations//issueModels//issues/` Deprecated, use `issue_matches_stats` field instead.", - "type": "object" - }, - "issueMatchesStats": { - "additionalProperties": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueModelLabelStatsIssueStats" - }, - "description": "A map associating each issue resource name with its respective number of matches in the set of conversations. Key has the format: `projects//locations//issueModels//issues/`", - "type": "object" - }, - "smartHighlighterMatches": { - "additionalProperties": { - "format": "int32", - "type": "integer" - }, - "description": "A map associating each smart highlighter display name with its respective number of matches in the set of conversations.", - "type": "object" + "startOffset": { + "description": "Time offset of the start of this word relative to the beginning of the total conversation.", + "format": "google-duration", + "type": "string" + }, + "word": { + "description": "The word itself. Includes punctuation marks that surround the word.", + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeries": { - "description": "A time series representing conversations over time.", - "id": "GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeries", + "GoogleCloudContactcenterinsightsV1CreateAnalysisOperationMetadata": { + "description": "Metadata for a create analysis operation.", + "id": "GoogleCloudContactcenterinsightsV1CreateAnalysisOperationMetadata", "properties": { - "intervalDuration": { - "description": "The duration of each interval.", - "format": "google-duration", + "annotatorSelector": { + "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelector", + "description": "Output only. The annotator selector used for the analysis (if any).", + "readOnly": true + }, + "conversation": { + "description": "Output only. The Conversation that this Analysis Operation belongs to.", + "readOnly": true, "type": "string" }, - "points": { - "description": "An ordered list of intervals from earliest to latest, where each interval represents the number of conversations that transpired during the time window.", - "items": { - "$ref": "GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeriesInterval" - }, - "type": "array" + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeriesInterval": { - "description": "A single interval in a time series.", - "id": "GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeriesInterval", + "GoogleCloudContactcenterinsightsV1CreateIssueModelMetadata": { + "description": "Metadata for creating an issue model.", + "id": "GoogleCloudContactcenterinsightsV1CreateIssueModelMetadata", "properties": { - "conversationCount": { - "description": "The number of conversations created in this interval.", - "format": "int32", - "type": "integer" + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" }, - "startTime": { - "description": "The start time of this interval.", + "endTime": { + "description": "Output only. The time the operation finished running.", "format": "google-datetime", + "readOnly": true, "type": "string" + }, + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1CreateIssueModelRequest", + "description": "The original request for creation." } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1CallAnnotation": { - "description": "A piece of metadata that applies to a window of a call.", - "id": "GoogleCloudContactcenterinsightsV1CallAnnotation", + "GoogleCloudContactcenterinsightsV1CreateIssueModelRequest": { + "description": "The request to create an issue model.", + "id": "GoogleCloudContactcenterinsightsV1CreateIssueModelRequest", "properties": { - "annotationEndBoundary": { - "$ref": "GoogleCloudContactcenterinsightsV1AnnotationBoundary", - "description": "The boundary in the conversation where the annotation ends, inclusive." - }, - "annotationStartBoundary": { - "$ref": "GoogleCloudContactcenterinsightsV1AnnotationBoundary", - "description": "The boundary in the conversation where the annotation starts, inclusive." - }, - "channelTag": { - "description": "The channel of the audio where the annotation occurs. For single-channel audio, this field is not populated.", - "format": "int32", - "type": "integer" - }, - "entityMentionData": { - "$ref": "GoogleCloudContactcenterinsightsV1EntityMentionData", - "description": "Data specifying an entity mention." - }, - "holdData": { - "$ref": "GoogleCloudContactcenterinsightsV1HoldData", - "description": "Data specifying a hold." - }, - "intentMatchData": { - "$ref": "GoogleCloudContactcenterinsightsV1IntentMatchData", - "description": "Data specifying an intent match." - }, - "interruptionData": { - "$ref": "GoogleCloudContactcenterinsightsV1InterruptionData", - "description": "Data specifying an interruption." - }, - "issueMatchData": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueMatchData", - "description": "Data specifying an issue match." - }, - "phraseMatchData": { - "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatchData", - "description": "Data specifying a phrase match." - }, - "sentimentData": { - "$ref": "GoogleCloudContactcenterinsightsV1SentimentData", - "description": "Data specifying sentiment." + "issueModel": { + "$ref": "GoogleCloudContactcenterinsightsV1IssueModel", + "description": "Required. The issue model to create." }, - "silenceData": { - "$ref": "GoogleCloudContactcenterinsightsV1SilenceData", - "description": "Data specifying silence." + "parent": { + "description": "Required. The parent resource of the issue model.", + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1Conversation": { - "description": "The conversation resource.", - "id": "GoogleCloudContactcenterinsightsV1Conversation", + "GoogleCloudContactcenterinsightsV1DeleteIssueModelMetadata": { + "description": "Metadata for deleting an issue model.", + "id": "GoogleCloudContactcenterinsightsV1DeleteIssueModelMetadata", "properties": { - "agentId": { - "description": "An opaque, user-specified string representing the human agent who handled the conversation.", - "type": "string" - }, - "callMetadata": { - "$ref": "GoogleCloudContactcenterinsightsV1ConversationCallMetadata", - "description": "Call-specific metadata." - }, "createTime": { - "description": "Output only. The time at which the conversation was created.", + "description": "Output only. The time the operation was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, - "dataSource": { - "$ref": "GoogleCloudContactcenterinsightsV1ConversationDataSource", - "description": "The source of the audio and transcription for the conversation." - }, - "dialogflowIntents": { - "additionalProperties": { - "$ref": "GoogleCloudContactcenterinsightsV1DialogflowIntent" - }, - "description": "Output only. All the matched Dialogflow intents in the call. The key corresponds to a Dialogflow intent, format: projects/{project}/agent/{agent}/intents/{intent}", + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", "readOnly": true, - "type": "object" + "type": "string" }, - "duration": { - "description": "Output only. The duration of the conversation.", - "format": "google-duration", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1DeleteIssueModelRequest", + "description": "The original request for deletion." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DeleteIssueModelRequest": { + "description": "The request to delete an issue model.", + "id": "GoogleCloudContactcenterinsightsV1DeleteIssueModelRequest", + "properties": { + "name": { + "description": "Required. The name of the issue model to delete.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DeployIssueModelMetadata": { + "description": "Metadata for deploying an issue model.", + "id": "GoogleCloudContactcenterinsightsV1DeployIssueModelMetadata", + "properties": { + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", "readOnly": true, "type": "string" }, - "expireTime": { - "description": "The time at which this conversation should expire. After this time, the conversation data and any associated analyses will be deleted.", + "endTime": { + "description": "Output only. The time the operation finished running.", "format": "google-datetime", + "readOnly": true, "type": "string" }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "A map for the user to specify any custom fields. A maximum of 20 labels per conversation is allowed, with a maximum of 256 characters per entry.", - "type": "object" - }, - "languageCode": { - "description": "A user-specified language code for the conversation.", + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1DeployIssueModelRequest", + "description": "The original request for deployment." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DeployIssueModelRequest": { + "description": "The request to deploy an issue model.", + "id": "GoogleCloudContactcenterinsightsV1DeployIssueModelRequest", + "properties": { + "name": { + "description": "Required. The issue model to deploy.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DeployIssueModelResponse": { + "description": "The response to deploy an issue model.", + "id": "GoogleCloudContactcenterinsightsV1DeployIssueModelResponse", + "properties": {}, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DeployQaScorecardRevisionRequest": { + "description": "The request to deploy a QaScorecardRevision", + "id": "GoogleCloudContactcenterinsightsV1DeployQaScorecardRevisionRequest", + "properties": {}, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DialogflowIntent": { + "description": "The data for a Dialogflow intent. Represents a detected intent in the conversation, e.g. MAKES_PROMISE.", + "id": "GoogleCloudContactcenterinsightsV1DialogflowIntent", + "properties": { + "displayName": { + "description": "The human-readable name of the intent.", "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DialogflowInteractionData": { + "description": "Dialogflow interaction data.", + "id": "GoogleCloudContactcenterinsightsV1DialogflowInteractionData", + "properties": { + "confidence": { + "description": "The confidence of the match ranging from 0.0 (completely uncertain) to 1.0 (completely certain).", + "format": "float", + "type": "number" }, - "latestAnalysis": { - "$ref": "GoogleCloudContactcenterinsightsV1Analysis", - "description": "Output only. The conversation's latest analysis, if one exists.", - "readOnly": true + "dialogflowIntentId": { + "description": "The Dialogflow intent resource path. Format: projects/{project}/agent/{agent}/intents/{intent}", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DialogflowSource": { + "description": "A Dialogflow source of conversation data.", + "id": "GoogleCloudContactcenterinsightsV1DialogflowSource", + "properties": { + "audioUri": { + "description": "Cloud Storage URI that points to a file that contains the conversation audio.", + "type": "string" }, - "latestSummary": { - "$ref": "GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData", - "description": "Output only. Latest summary of the conversation.", + "dialogflowConversation": { + "description": "Output only. The name of the Dialogflow conversation that this conversation resource is derived from. Format: projects/{project}/locations/{location}/conversations/{conversation}", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1Dimension": { + "description": "A dimension determines the grouping key for the query. In SQL terms, these would be part of both the \"SELECT\" and \"GROUP BY\" clauses.", + "id": "GoogleCloudContactcenterinsightsV1Dimension", + "properties": { + "agentDimensionMetadata": { + "$ref": "GoogleCloudContactcenterinsightsV1DimensionAgentDimensionMetadata", + "description": "Output only. Metadata about the agent dimension.", "readOnly": true }, - "medium": { - "description": "Immutable. The conversation medium, if unspecified will default to PHONE_CALL.", + "dimensionKey": { + "description": "The key of the dimension.", "enum": [ - "MEDIUM_UNSPECIFIED", - "PHONE_CALL", - "CHAT" + "DIMENSION_KEY_UNSPECIFIED", + "ISSUE", + "AGENT", + "AGENT_TEAM", + "QA_QUESTION_ID", + "QA_QUESTION_ANSWER_VALUE", + "CONVERSATION_PROFILE_ID" ], "enumDescriptions": [ - "Default value, if unspecified will default to PHONE_CALL.", - "The format for conversations that took place over the phone.", - "The format for conversations that took place over chat." + "The key of the dimension is unspecified.", + "The dimension is keyed by issues.", + "The dimension is keyed by agents.", + "The dimension is keyed by agent teams.", + "The dimension is keyed by QaQuestionIds. Note that: We only group by the QuestionId and not the revision-id of the scorecard this question is a part of. This allows for showing stats for the same question across different scorecard revisions.", + "The dimension is keyed by QaQuestionIds-Answer value pairs. Note that: We only group by the QuestionId and not the revision-id of the scorecard this question is a part of. This allows for showing distribution of answers per question across different scorecard revisions.", + "The dimension is keyed by the conversation profile ID." ], "type": "string" }, - "metadataJson": { - "description": "Input only. JSON metadata encoded as a string. This field is primarily used by Insights integrations with various telphony systems and must be in one of Insight's supported formats.", - "type": "string" + "issueDimensionMetadata": { + "$ref": "GoogleCloudContactcenterinsightsV1DimensionIssueDimensionMetadata", + "description": "Output only. Metadata about the issue dimension.", + "readOnly": true }, - "name": { - "description": "Immutable. The resource name of the conversation. Format: projects/{project}/locations/{location}/conversations/{conversation}", - "type": "string" + "qaQuestionAnswerDimensionMetadata": { + "$ref": "GoogleCloudContactcenterinsightsV1DimensionQaQuestionAnswerDimensionMetadata", + "description": "Output only. Metadata about the QA question-answer dimension.", + "readOnly": true }, - "obfuscatedUserId": { - "description": "Obfuscated user ID which the customer sent to us.", + "qaQuestionDimensionMetadata": { + "$ref": "GoogleCloudContactcenterinsightsV1DimensionQaQuestionDimensionMetadata", + "description": "Output only. Metadata about the QA question dimension.", + "readOnly": true + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DimensionAgentDimensionMetadata": { + "description": "Metadata about the agent dimension.", + "id": "GoogleCloudContactcenterinsightsV1DimensionAgentDimensionMetadata", + "properties": { + "agentDisplayName": { + "description": "Optional. The agent's name", "type": "string" }, - "qualityMetadata": { - "$ref": "GoogleCloudContactcenterinsightsV1ConversationQualityMetadata", - "description": "Conversation metadata related to quality management." - }, - "runtimeAnnotations": { - "description": "Output only. The annotations that were generated during the customer and agent interaction.", - "items": { - "$ref": "GoogleCloudContactcenterinsightsV1RuntimeAnnotation" - }, - "readOnly": true, - "type": "array" - }, - "startTime": { - "description": "The time at which the conversation started.", - "format": "google-datetime", + "agentId": { + "description": "Optional. A user-specified string representing the agent.", "type": "string" }, - "transcript": { - "$ref": "GoogleCloudContactcenterinsightsV1ConversationTranscript", - "description": "Output only. The conversation transcript.", - "readOnly": true - }, - "ttl": { - "description": "Input only. The TTL for this resource. If specified, then this TTL will be used to calculate the expire time.", - "format": "google-duration", + "agentTeam": { + "description": "Optional. A user-specified string representing the agent's team.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1DimensionIssueDimensionMetadata": { + "description": "Metadata about the issue dimension.", + "id": "GoogleCloudContactcenterinsightsV1DimensionIssueDimensionMetadata", + "properties": { + "issueDisplayName": { + "description": "The issue display name.", "type": "string" }, - "turnCount": { - "description": "Output only. The number of turns in the conversation.", - "format": "int32", - "readOnly": true, - "type": "integer" + "issueId": { + "description": "The issue ID.", + "type": "string" }, - "updateTime": { - "description": "Output only. The most recent time at which the conversation was updated.", - "format": "google-datetime", - "readOnly": true, + "issueModelId": { + "description": "The parent issue model ID.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ConversationCallMetadata": { - "description": "Call-specific metadata.", - "id": "GoogleCloudContactcenterinsightsV1ConversationCallMetadata", + "GoogleCloudContactcenterinsightsV1DimensionQaQuestionAnswerDimensionMetadata": { + "description": "Metadata about the QA question-answer dimension. This is useful for showing the answer distribution for questions for a given scorecard.", + "id": "GoogleCloudContactcenterinsightsV1DimensionQaQuestionAnswerDimensionMetadata", "properties": { - "agentChannel": { - "description": "The audio channel that contains the agent.", - "format": "int32", - "type": "integer" + "answerValue": { + "description": "Optional. The full body of the question.", + "type": "string" }, - "customerChannel": { - "description": "The audio channel that contains the customer.", - "format": "int32", - "type": "integer" + "qaQuestionId": { + "description": "Optional. The QA question ID.", + "type": "string" + }, + "qaScorecardId": { + "description": "Optional. The QA scorecard ID.", + "type": "string" + }, + "questionBody": { + "description": "Optional. The full body of the question.", + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ConversationDataSource": { - "description": "The conversation source, which is a combination of transcript and audio.", - "id": "GoogleCloudContactcenterinsightsV1ConversationDataSource", + "GoogleCloudContactcenterinsightsV1DimensionQaQuestionDimensionMetadata": { + "description": "Metadata about the QA question dimension.", + "id": "GoogleCloudContactcenterinsightsV1DimensionQaQuestionDimensionMetadata", "properties": { - "dialogflowSource": { - "$ref": "GoogleCloudContactcenterinsightsV1DialogflowSource", - "description": "The source when the conversation comes from Dialogflow." + "qaQuestionId": { + "description": "Optional. The QA question ID.", + "type": "string" }, - "gcsSource": { - "$ref": "GoogleCloudContactcenterinsightsV1GcsSource", - "description": "A Cloud Storage location specification for the audio and transcript." + "qaScorecardId": { + "description": "Optional. The QA scorecard ID.", + "type": "string" + }, + "questionBody": { + "description": "Optional. The full body of the question.", + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ConversationLevelSentiment": { - "description": "One channel of conversation-level sentiment data.", - "id": "GoogleCloudContactcenterinsightsV1ConversationLevelSentiment", + "GoogleCloudContactcenterinsightsV1EncryptionSpec": { + "description": "A customer-managed encryption key specification that can be applied to all created resources (e.g. `Conversation`).", + "id": "GoogleCloudContactcenterinsightsV1EncryptionSpec", "properties": { - "channelTag": { - "description": "The channel of the audio that the data applies to.", - "format": "int32", - "type": "integer" + "kmsKey": { + "description": "Required. The name of customer-managed encryption key that is used to secure a resource and its sub-resources. If empty, the resource is secured by our default encryption key. Only the key in the same location as this resource is allowed to be used for encryption. Format: `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{key}`", + "type": "string" }, - "sentimentData": { - "$ref": "GoogleCloudContactcenterinsightsV1SentimentData", - "description": "Data specifying sentiment." + "name": { + "description": "Immutable. The resource name of the encryption key specification resource. Format: projects/{project}/locations/{location}/encryptionSpec", + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ConversationLevelSilence": { - "description": "Conversation-level silence data.", - "id": "GoogleCloudContactcenterinsightsV1ConversationLevelSilence", + "GoogleCloudContactcenterinsightsV1Entity": { + "description": "The data for an entity annotation. Represents a phrase in the conversation that is a known entity, such as a person, an organization, or location.", + "id": "GoogleCloudContactcenterinsightsV1Entity", "properties": { - "silenceDuration": { - "description": "Amount of time calculated to be in silence.", - "format": "google-duration", + "displayName": { + "description": "The representative name for the entity.", "type": "string" }, - "silencePercentage": { - "description": "Percentage of the total conversation spent in silence.", + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "Metadata associated with the entity. For most entity types, the metadata is a Wikipedia URL (`wikipedia_url`) and Knowledge Graph MID (`mid`), if they are available. For the metadata associated with other entity types, see the Type table below.", + "type": "object" + }, + "salience": { + "description": "The salience score associated with the entity in the [0, 1.0] range. The salience score for an entity provides information about the importance or centrality of that entity to the entire document text. Scores closer to 0 are less salient, while scores closer to 1.0 are highly salient.", "format": "float", "type": "number" + }, + "sentiment": { + "$ref": "GoogleCloudContactcenterinsightsV1SentimentData", + "description": "The aggregate sentiment expressed for this entity in the conversation." + }, + "type": { + "description": "The entity type.", + "enum": [ + "TYPE_UNSPECIFIED", + "PERSON", + "LOCATION", + "ORGANIZATION", + "EVENT", + "WORK_OF_ART", + "CONSUMER_GOOD", + "OTHER", + "PHONE_NUMBER", + "ADDRESS", + "DATE", + "NUMBER", + "PRICE" + ], + "enumDescriptions": [ + "Unspecified.", + "Person.", + "Location.", + "Organization.", + "Event.", + "Artwork.", + "Consumer product.", + "Other types of entities.", + "Phone number. The metadata lists the phone number (formatted according to local convention), plus whichever additional elements appear in the text: * `number` - The actual number, broken down into sections according to local convention. * `national_prefix` - Country code, if detected. * `area_code` - Region or area code, if detected. * `extension` - Phone extension (to be dialed after connection), if detected.", + "Address. The metadata identifies the street number and locality plus whichever additional elements appear in the text: * `street_number` - Street number. * `locality` - City or town. * `street_name` - Street/route name, if detected. * `postal_code` - Postal code, if detected. * `country` - Country, if detected. * `broad_region` - Administrative area, such as the state, if detected. * `narrow_region` - Smaller administrative area, such as county, if detected. * `sublocality` - Used in Asian addresses to demark a district within a city, if detected.", + "Date. The metadata identifies the components of the date: * `year` - Four digit year, if detected. * `month` - Two digit month number, if detected. * `day` - Two digit day number, if detected.", + "Number. The metadata is the number itself.", + "Price. The metadata identifies the `value` and `currency`." + ], + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ConversationParticipant": { - "description": "The call participant speaking for a given utterance.", - "id": "GoogleCloudContactcenterinsightsV1ConversationParticipant", + "GoogleCloudContactcenterinsightsV1EntityMentionData": { + "description": "The data for an entity mention annotation. This represents a mention of an `Entity` in the conversation.", + "id": "GoogleCloudContactcenterinsightsV1EntityMentionData", "properties": { - "dialogflowParticipant": { - "deprecated": true, - "description": "Deprecated. Use `dialogflow_participant_name` instead. The name of the Dialogflow participant. Format: projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}", - "type": "string" - }, - "dialogflowParticipantName": { - "description": "The name of the participant provided by Dialogflow. Format: projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}", + "entityUniqueId": { + "description": "The key of this entity in conversation entities. Can be used to retrieve the exact `Entity` this mention is attached to.", "type": "string" }, - "obfuscatedExternalUserId": { - "description": "Obfuscated user ID from Dialogflow.", - "type": "string" + "sentiment": { + "$ref": "GoogleCloudContactcenterinsightsV1SentimentData", + "description": "Sentiment expressed for this mention of the entity." }, - "role": { - "description": "The role of the participant.", + "type": { + "description": "The type of the entity mention.", "enum": [ - "ROLE_UNSPECIFIED", - "HUMAN_AGENT", - "AUTOMATED_AGENT", - "END_USER", - "ANY_AGENT" + "MENTION_TYPE_UNSPECIFIED", + "PROPER", + "COMMON" ], "enumDescriptions": [ - "Participant's role is not set.", - "Participant is a human agent.", - "Participant is an automated agent.", - "Participant is an end user who conversed with the contact center.", - "Participant is either a human or automated agent." + "Unspecified.", + "Proper noun.", + "Common noun (or noun compound)." ], "type": "string" - }, - "userId": { - "description": "A user-specified ID representing the participant.", - "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ConversationQualityMetadata": { - "description": "Conversation metadata related to quality management.", - "id": "GoogleCloudContactcenterinsightsV1ConversationQualityMetadata", + "GoogleCloudContactcenterinsightsV1ExactMatchConfig": { + "description": "Exact match configuration.", + "id": "GoogleCloudContactcenterinsightsV1ExactMatchConfig", "properties": { - "agentInfo": { - "description": "Information about agents involved in the call.", + "caseSensitive": { + "description": "Whether to consider case sensitivity when performing an exact match.", + "type": "boolean" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1ExportInsightsDataMetadata": { + "description": "Metadata for an export insights operation.", + "id": "GoogleCloudContactcenterinsightsV1ExportInsightsDataMetadata", + "properties": { + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "partialErrors": { + "description": "Partial errors during export operation that might cause the operation output to be incomplete.", "items": { - "$ref": "GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfo" + "$ref": "GoogleRpcStatus" }, "type": "array" }, - "customerSatisfactionRating": { - "description": "An arbitrary integer value indicating the customer's satisfaction rating.", - "format": "int32", - "type": "integer" - }, - "menuPath": { - "description": "An arbitrary string value specifying the menu path the customer took.", - "type": "string" - }, - "waitDuration": { - "description": "The amount of time the customer waited to connect with an agent.", - "format": "google-duration", - "type": "string" + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest", + "description": "The original request for export." } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfo": { - "description": "Information about an agent involved in the conversation.", - "id": "GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfo", + "GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest": { + "description": "The request to export insights.", + "id": "GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest", "properties": { - "agentId": { - "description": "A user-specified string representing the agent.", + "bigQueryDestination": { + "$ref": "GoogleCloudContactcenterinsightsV1ExportInsightsDataRequestBigQueryDestination", + "description": "Specified if sink is a BigQuery table." + }, + "filter": { + "description": "A filter to reduce results to a specific subset. Useful for exporting conversations with specific properties.", "type": "string" }, - "displayName": { - "description": "The agent's name.", + "kmsKey": { + "description": "A fully qualified KMS key name for BigQuery tables protected by CMEK. Format: projects/{project}/locations/{location}/keyRings/{keyring}/cryptoKeys/{key}/cryptoKeyVersions/{version}", "type": "string" }, - "dispositionCode": { - "description": "A user-provided string indicating the outcome of the agent's segment of the call.", + "parent": { + "description": "Required. The parent resource to export data from.", "type": "string" }, - "team": { - "description": "A user-specified string representing the agent's team.", + "writeDisposition": { + "description": "Options for what to do if the destination table already exists.", + "enum": [ + "WRITE_DISPOSITION_UNSPECIFIED", + "WRITE_TRUNCATE", + "WRITE_APPEND" + ], + "enumDescriptions": [ + "Write disposition is not specified. Defaults to WRITE_TRUNCATE.", + "If the table already exists, BigQuery will overwrite the table data and use the schema from the load.", + "If the table already exists, BigQuery will append data to the table." + ], "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData": { - "description": "Conversation summarization suggestion data.", - "id": "GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData", + "GoogleCloudContactcenterinsightsV1ExportInsightsDataRequestBigQueryDestination": { + "description": "A BigQuery Table Reference.", + "id": "GoogleCloudContactcenterinsightsV1ExportInsightsDataRequestBigQueryDestination", "properties": { - "answerRecord": { - "description": "The name of the answer record. Format: projects/{project}/locations/{location}/answerRecords/{answer_record}", + "dataset": { + "description": "Required. The name of the BigQuery dataset that the snapshot result should be exported to. If this dataset does not exist, the export call returns an INVALID_ARGUMENT error.", "type": "string" }, - "confidence": { - "description": "The confidence score of the summarization.", - "format": "float", - "type": "number" - }, - "conversationModel": { - "description": "The name of the model that generates this summary. Format: projects/{project}/locations/{location}/conversationModels/{conversation_model}", + "projectId": { + "description": "A project ID or number. If specified, then export will attempt to write data to this project instead of the resource project. Otherwise, the resource project will be used.", "type": "string" }, - "metadata": { - "additionalProperties": { - "type": "string" - }, - "description": "A map that contains metadata about the summarization and the document from which it originates.", - "type": "object" - }, - "text": { - "description": "The summarization content that is concatenated into one string.", + "table": { + "description": "The BigQuery table name to which the insights data should be written. If this table does not exist, the export call returns an INVALID_ARGUMENT error.", "type": "string" - }, - "textSections": { - "additionalProperties": { - "type": "string" - }, - "description": "The summarization content that is divided into sections. The key is the section's name and the value is the section's content. There is no specific format for the key or value.", - "type": "object" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ConversationTranscript": { - "description": "A message representing the transcript of a conversation.", - "id": "GoogleCloudContactcenterinsightsV1ConversationTranscript", - "properties": { - "transcriptSegments": { - "description": "A list of sequential transcript segments that comprise the conversation.", - "items": { - "$ref": "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegment" - }, - "type": "array" - } - }, + "GoogleCloudContactcenterinsightsV1ExportInsightsDataResponse": { + "description": "Response for an export insights operation.", + "id": "GoogleCloudContactcenterinsightsV1ExportInsightsDataResponse", + "properties": {}, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegment": { - "description": "A segment of a full transcript.", - "id": "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegment", + "GoogleCloudContactcenterinsightsV1ExportIssueModelMetadata": { + "description": "Metadata used for export issue model.", + "id": "GoogleCloudContactcenterinsightsV1ExportIssueModelMetadata", "properties": { - "channelTag": { - "description": "For conversations derived from multi-channel audio, this is the channel number corresponding to the audio from that channel. For audioChannelCount = N, its output values can range from '1' to 'N'. A channel tag of 0 indicates that the audio is mono.", - "format": "int32", - "type": "integer" - }, - "confidence": { - "description": "A confidence estimate between 0.0 and 1.0 of the fidelity of this segment. A default value of 0.0 indicates that the value is unset.", - "format": "float", - "type": "number" - }, - "dialogflowSegmentMetadata": { - "$ref": "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentDialogflowSegmentMetadata", - "description": "CCAI metadata relating to the current transcript segment." - }, - "languageCode": { - "description": "The language code of this segment as a [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. Example: \"en-US\".", - "type": "string" - }, - "messageTime": { - "description": "The time that the message occurred, if provided.", + "createTime": { + "description": "The time the operation was created.", "format": "google-datetime", "type": "string" }, - "segmentParticipant": { - "$ref": "GoogleCloudContactcenterinsightsV1ConversationParticipant", - "description": "The participant of this segment." - }, - "sentiment": { - "$ref": "GoogleCloudContactcenterinsightsV1SentimentData", - "description": "The sentiment for this transcript segment." - }, - "text": { - "description": "The text of this segment.", + "endTime": { + "description": "The time the operation finished running.", + "format": "google-datetime", "type": "string" }, - "words": { - "description": "A list of the word-specific information for each word in the segment.", - "items": { - "$ref": "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentWordInfo" - }, - "type": "array" + "request": { + "$ref": "GoogleCloudContactcenterinsightsV1ExportIssueModelRequest", + "description": "The original export request." } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentDialogflowSegmentMetadata": { - "description": "Metadata from Dialogflow relating to the current transcript segment.", - "id": "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentDialogflowSegmentMetadata", + "GoogleCloudContactcenterinsightsV1ExportIssueModelRequest": { + "description": "Request to export an issue model.", + "id": "GoogleCloudContactcenterinsightsV1ExportIssueModelRequest", "properties": { - "smartReplyAllowlistCovered": { - "description": "Whether the transcript segment was covered under the configured smart reply allowlist in Agent Assist.", - "type": "boolean" + "gcsDestination": { + "$ref": "GoogleCloudContactcenterinsightsV1ExportIssueModelRequestGcsDestination", + "description": "Google Cloud Storage URI to export the issue model to." + }, + "name": { + "description": "Required. The issue model to export.", + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentWordInfo": { - "description": "Word-level info for words in a transcript.", - "id": "GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentWordInfo", + "GoogleCloudContactcenterinsightsV1ExportIssueModelRequestGcsDestination": { + "description": "Google Cloud Storage Object URI to save the issue model to.", + "id": "GoogleCloudContactcenterinsightsV1ExportIssueModelRequestGcsDestination", "properties": { - "confidence": { - "description": "A confidence estimate between 0.0 and 1.0 of the fidelity of this word. A default value of 0.0 indicates that the value is unset.", - "format": "float", - "type": "number" - }, - "endOffset": { - "description": "Time offset of the end of this word relative to the beginning of the total conversation.", - "format": "google-duration", - "type": "string" - }, - "startOffset": { - "description": "Time offset of the start of this word relative to the beginning of the total conversation.", - "format": "google-duration", - "type": "string" - }, - "word": { - "description": "The word itself. Includes punctuation marks that surround the word.", + "objectUri": { + "description": "Required. Format: `gs:///`", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1CreateAnalysisOperationMetadata": { - "description": "Metadata for a create analysis operation.", - "id": "GoogleCloudContactcenterinsightsV1CreateAnalysisOperationMetadata", + "GoogleCloudContactcenterinsightsV1ExportIssueModelResponse": { + "description": "Response from export issue model", + "id": "GoogleCloudContactcenterinsightsV1ExportIssueModelResponse", + "properties": {}, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1FaqAnswerData": { + "description": "Agent Assist frequently-asked-question answer data.", + "id": "GoogleCloudContactcenterinsightsV1FaqAnswerData", "properties": { - "annotatorSelector": { - "$ref": "GoogleCloudContactcenterinsightsV1AnnotatorSelector", - "description": "Output only. The annotator selector used for the analysis (if any).", - "readOnly": true + "answer": { + "description": "The piece of text from the `source` knowledge base document.", + "type": "string" }, - "conversation": { - "description": "Output only. The Conversation that this Analysis Operation belongs to.", - "readOnly": true, + "confidenceScore": { + "description": "The system's confidence score that this answer is a good match for this conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely certain).", + "format": "float", + "type": "number" + }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "Map that contains metadata about the FAQ answer and the document that it originates from.", + "type": "object" + }, + "queryRecord": { + "description": "The name of the answer record. Format: projects/{project}/locations/{location}/answerRecords/{answer_record}", "type": "string" }, - "createTime": { - "description": "Output only. The time the operation was created.", - "format": "google-datetime", - "readOnly": true, + "question": { + "description": "The corresponding FAQ question.", "type": "string" }, - "endTime": { - "description": "Output only. The time the operation finished running.", - "format": "google-datetime", - "readOnly": true, + "source": { + "description": "The knowledge document that this answer was extracted from. Format: projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1CreateIssueModelMetadata": { - "description": "Metadata for creating an issue model.", - "id": "GoogleCloudContactcenterinsightsV1CreateIssueModelMetadata", + "GoogleCloudContactcenterinsightsV1FeedbackLabel": { + "description": "Represents a conversation, resource, and label provided by the user.", + "id": "GoogleCloudContactcenterinsightsV1FeedbackLabel", "properties": { "createTime": { - "description": "Output only. The time the operation was created.", + "description": "Output only. Create time of the label.", "format": "google-datetime", "readOnly": true, "type": "string" }, - "endTime": { - "description": "Output only. The time the operation finished running.", + "label": { + "description": "String label.", + "type": "string" + }, + "labeledResource": { + "description": "Resource name of the resource to be labeled.", + "type": "string" + }, + "name": { + "description": "Immutable. Resource name of the FeedbackLabel. Format: projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label}", + "type": "string" + }, + "qaAnswerLabel": { + "$ref": "GoogleCloudContactcenterinsightsV1QaAnswerAnswerValue", + "description": "QaAnswer label." + }, + "updateTime": { + "description": "Output only. Update time of the label.", "format": "google-datetime", "readOnly": true, "type": "string" - }, - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1CreateIssueModelRequest", - "description": "The original request for creation." } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1CreateIssueModelRequest": { - "description": "The request to create an issue model.", - "id": "GoogleCloudContactcenterinsightsV1CreateIssueModelRequest", + "GoogleCloudContactcenterinsightsV1GcsSource": { + "description": "A Cloud Storage source of conversation data.", + "id": "GoogleCloudContactcenterinsightsV1GcsSource", "properties": { - "issueModel": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueModel", - "description": "Required. The issue model to create." + "audioUri": { + "description": "Cloud Storage URI that points to a file that contains the conversation audio.", + "type": "string" }, - "parent": { - "description": "Required. The parent resource of the issue model.", + "transcriptUri": { + "description": "Immutable. Cloud Storage URI that points to a file that contains the conversation transcript.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1DeleteIssueModelMetadata": { - "description": "Metadata for deleting an issue model.", - "id": "GoogleCloudContactcenterinsightsV1DeleteIssueModelMetadata", + "GoogleCloudContactcenterinsightsV1HoldData": { + "description": "The data for a hold annotation.", + "id": "GoogleCloudContactcenterinsightsV1HoldData", + "properties": {}, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1ImportIssueModelMetadata": { + "description": "Metadata used for import issue model.", + "id": "GoogleCloudContactcenterinsightsV1ImportIssueModelMetadata", "properties": { "createTime": { - "description": "Output only. The time the operation was created.", + "description": "The time the operation was created.", "format": "google-datetime", - "readOnly": true, "type": "string" }, "endTime": { - "description": "Output only. The time the operation finished running.", + "description": "The time the operation finished running.", "format": "google-datetime", - "readOnly": true, "type": "string" }, "request": { - "$ref": "GoogleCloudContactcenterinsightsV1DeleteIssueModelRequest", - "description": "The original request for deletion." + "$ref": "GoogleCloudContactcenterinsightsV1ImportIssueModelRequest", + "description": "The original import request." } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1DeleteIssueModelRequest": { - "description": "The request to delete an issue model.", - "id": "GoogleCloudContactcenterinsightsV1DeleteIssueModelRequest", + "GoogleCloudContactcenterinsightsV1ImportIssueModelRequest": { + "description": "Request to import an issue model.", + "id": "GoogleCloudContactcenterinsightsV1ImportIssueModelRequest", "properties": { - "name": { - "description": "Required. The name of the issue model to delete.", + "createNewModel": { + "description": "Optional. If set to true, will create an issue model from the imported file with randomly generated IDs for the issue model and corresponding issues. Otherwise, replaces an existing model with the same ID as the file.", + "type": "boolean" + }, + "gcsSource": { + "$ref": "GoogleCloudContactcenterinsightsV1ImportIssueModelRequestGcsSource", + "description": "Google Cloud Storage source message." + }, + "parent": { + "description": "Required. The parent resource of the issue model.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1DeployIssueModelMetadata": { - "description": "Metadata for deploying an issue model.", - "id": "GoogleCloudContactcenterinsightsV1DeployIssueModelMetadata", + "GoogleCloudContactcenterinsightsV1ImportIssueModelRequestGcsSource": { + "description": "Google Cloud Storage Object URI to get the issue model file from.", + "id": "GoogleCloudContactcenterinsightsV1ImportIssueModelRequestGcsSource", + "properties": { + "objectUri": { + "description": "Required. Format: `gs:///`", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1ImportIssueModelResponse": { + "description": "Response from import issue model", + "id": "GoogleCloudContactcenterinsightsV1ImportIssueModelResponse", + "properties": {}, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1IngestConversationsMetadata": { + "description": "The metadata for an IngestConversations operation.", + "id": "GoogleCloudContactcenterinsightsV1IngestConversationsMetadata", "properties": { "createTime": { "description": "Output only. The time the operation was created.", @@ -2639,192 +5331,181 @@ "readOnly": true, "type": "string" }, + "ingestConversationsStats": { + "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsMetadataIngestConversationsStats", + "description": "Output only. Statistics for IngestConversations operation.", + "readOnly": true + }, + "partialErrors": { + "description": "Output only. Partial errors during ingest operation that might cause the operation output to be incomplete.", + "items": { + "$ref": "GoogleRpcStatus" + }, + "readOnly": true, + "type": "array" + }, "request": { - "$ref": "GoogleCloudContactcenterinsightsV1DeployIssueModelRequest", - "description": "The original request for deployment." - } - }, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1DeployIssueModelRequest": { - "description": "The request to deploy an issue model.", - "id": "GoogleCloudContactcenterinsightsV1DeployIssueModelRequest", - "properties": { - "name": { - "description": "Required. The issue model to deploy.", - "type": "string" + "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequest", + "description": "Output only. The original request for ingest.", + "readOnly": true } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1DeployIssueModelResponse": { - "description": "The response to deploy an issue model.", - "id": "GoogleCloudContactcenterinsightsV1DeployIssueModelResponse", - "properties": {}, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1DialogflowIntent": { - "description": "The data for a Dialogflow intent. Represents a detected intent in the conversation, e.g. MAKES_PROMISE.", - "id": "GoogleCloudContactcenterinsightsV1DialogflowIntent", + "GoogleCloudContactcenterinsightsV1IngestConversationsMetadataIngestConversationsStats": { + "description": "Statistics for IngestConversations operation.", + "id": "GoogleCloudContactcenterinsightsV1IngestConversationsMetadataIngestConversationsStats", "properties": { - "displayName": { - "description": "The human-readable name of the intent.", - "type": "string" + "duplicatesSkippedCount": { + "description": "Output only. The number of objects skipped because another conversation with the same transcript uri had already been ingested.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "failedIngestCount": { + "description": "Output only. The number of objects which were unable to be ingested due to errors. The errors are populated in the partial_errors field.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "processedObjectCount": { + "description": "Output only. The number of objects processed during the ingest operation.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "successfulIngestCount": { + "description": "Output only. The number of new conversations added during this ingest operation.", + "format": "int32", + "readOnly": true, + "type": "integer" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1DialogflowInteractionData": { - "description": "Dialogflow interaction data.", - "id": "GoogleCloudContactcenterinsightsV1DialogflowInteractionData", + "GoogleCloudContactcenterinsightsV1IngestConversationsRequest": { + "description": "The request to ingest conversations.", + "id": "GoogleCloudContactcenterinsightsV1IngestConversationsRequest", "properties": { - "confidence": { - "description": "The confidence of the match ranging from 0.0 (completely uncertain) to 1.0 (completely certain).", - "format": "float", - "type": "number" + "conversationConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig", + "description": "Configuration that applies to all conversations." }, - "dialogflowIntentId": { - "description": "The Dialogflow intent resource path. Format: projects/{project}/agent/{agent}/intents/{intent}", + "gcsSource": { + "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource", + "description": "A cloud storage bucket source. Note that any previously ingested objects from the source will be skipped to avoid duplication." + }, + "parent": { + "description": "Required. The parent resource for new conversations.", "type": "string" + }, + "redactionConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1RedactionConfig", + "description": "Optional. DLP settings for transcript redaction. Optional, will default to the config specified in Settings." + }, + "sampleSize": { + "description": "Optional. If set, this fields indicates the number of objects to ingest from the Cloud Storage bucket. If empty, the entire bucket will be ingested. Unless they are first deleted, conversations produced through sampling won't be ingested by subsequent ingest requests.", + "format": "int32", + "type": "integer" + }, + "speechConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1SpeechConfig", + "description": "Optional. Default Speech-to-Text configuration. Optional, will default to the config specified in Settings." + }, + "transcriptObjectConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig", + "description": "Configuration for when `source` contains conversation transcripts." } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1DialogflowSource": { - "description": "A Dialogflow source of conversation data.", - "id": "GoogleCloudContactcenterinsightsV1DialogflowSource", + "GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig": { + "description": "Configuration that applies to all conversations.", + "id": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig", "properties": { - "audioUri": { - "description": "Cloud Storage URI that points to a file that contains the conversation audio.", - "type": "string" + "agentChannel": { + "description": "Optional. Indicates which of the channels, 1 or 2, contains the agent. Note that this must be set for conversations to be properly displayed and analyzed.", + "format": "int32", + "type": "integer" }, - "dialogflowConversation": { - "description": "Output only. The name of the Dialogflow conversation that this conversation resource is derived from. Format: projects/{project}/locations/{location}/conversations/{conversation}", - "readOnly": true, + "agentId": { + "description": "Optional. An opaque, user-specified string representing a human agent who handled all conversations in the import. Note that this will be overridden if per-conversation metadata is provided through the `metadata_bucket_uri`.", "type": "string" + }, + "customerChannel": { + "description": "Optional. Indicates which of the channels, 1 or 2, contains the agent. Note that this must be set for conversations to be properly displayed and analyzed.", + "format": "int32", + "type": "integer" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1EncryptionSpec": { - "description": "A customer-managed encryption key specification that can be applied to all created resources (e.g. `Conversation`).", - "id": "GoogleCloudContactcenterinsightsV1EncryptionSpec", + "GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource": { + "description": "Configuration for Cloud Storage bucket sources.", + "id": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource", "properties": { - "kmsKey": { - "description": "Required. The name of customer-managed encryption key that is used to secure a resource and its sub-resources. If empty, the resource is secured by our default encryption key. Only the key in the same location as this resource is allowed to be used for encryption. Format: `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{key}`", + "bucketObjectType": { + "description": "Optional. Specifies the type of the objects in `bucket_uri`.", + "enum": [ + "BUCKET_OBJECT_TYPE_UNSPECIFIED", + "TRANSCRIPT", + "AUDIO" + ], + "enumDescriptions": [ + "The object type is unspecified and will default to `TRANSCRIPT`.", + "The object is a transcript.", + "The object is an audio file." + ], "type": "string" }, - "name": { - "description": "Immutable. The resource name of the encryption key specification resource. Format: projects/{project}/locations/{location}/encryptionSpec", - "type": "string" - } - }, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1Entity": { - "description": "The data for an entity annotation. Represents a phrase in the conversation that is a known entity, such as a person, an organization, or location.", - "id": "GoogleCloudContactcenterinsightsV1Entity", - "properties": { - "displayName": { - "description": "The representative name for the entity.", + "bucketUri": { + "description": "Required. The Cloud Storage bucket containing source objects.", "type": "string" }, - "metadata": { - "additionalProperties": { + "customMetadataKeys": { + "description": "Optional. Custom keys to extract as conversation labels from metadata files in `metadata_bucket_uri`. Keys not included in this field will be ignored. Note that there is a limit of 20 labels per conversation.", + "items": { "type": "string" }, - "description": "Metadata associated with the entity. For most entity types, the metadata is a Wikipedia URL (`wikipedia_url`) and Knowledge Graph MID (`mid`), if they are available. For the metadata associated with other entity types, see the Type table below.", - "type": "object" - }, - "salience": { - "description": "The salience score associated with the entity in the [0, 1.0] range. The salience score for an entity provides information about the importance or centrality of that entity to the entire document text. Scores closer to 0 are less salient, while scores closer to 1.0 are highly salient.", - "format": "float", - "type": "number" - }, - "sentiment": { - "$ref": "GoogleCloudContactcenterinsightsV1SentimentData", - "description": "The aggregate sentiment expressed for this entity in the conversation." + "type": "array" }, - "type": { - "description": "The entity type.", - "enum": [ - "TYPE_UNSPECIFIED", - "PERSON", - "LOCATION", - "ORGANIZATION", - "EVENT", - "WORK_OF_ART", - "CONSUMER_GOOD", - "OTHER", - "PHONE_NUMBER", - "ADDRESS", - "DATE", - "NUMBER", - "PRICE" - ], - "enumDescriptions": [ - "Unspecified.", - "Person.", - "Location.", - "Organization.", - "Event.", - "Artwork.", - "Consumer product.", - "Other types of entities.", - "Phone number. The metadata lists the phone number (formatted according to local convention), plus whichever additional elements appear in the text: * `number` - The actual number, broken down into sections according to local convention. * `national_prefix` - Country code, if detected. * `area_code` - Region or area code, if detected. * `extension` - Phone extension (to be dialed after connection), if detected.", - "Address. The metadata identifies the street number and locality plus whichever additional elements appear in the text: * `street_number` - Street number. * `locality` - City or town. * `street_name` - Street/route name, if detected. * `postal_code` - Postal code, if detected. * `country` - Country, if detected. * `broad_region` - Administrative area, such as the state, if detected. * `narrow_region` - Smaller administrative area, such as county, if detected. * `sublocality` - Used in Asian addresses to demark a district within a city, if detected.", - "Date. The metadata identifies the components of the date: * `year` - Four digit year, if detected. * `month` - Two digit month number, if detected. * `day` - Two digit day number, if detected.", - "Number. The metadata is the number itself.", - "Price. The metadata identifies the `value` and `currency`." - ], + "metadataBucketUri": { + "description": "Optional. The Cloud Storage path to the conversation metadata. Note that: [1] Metadata files are expected to be in JSON format. [2] Metadata and source files (transcripts or audio) must be in separate buckets. [3] A source file and its corresponding metadata file must share the same name to be properly ingested, E.g. `gs://bucket/audio/conversation1.mp3` and `gs://bucket/metadata/conversation1.json`.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1EntityMentionData": { - "description": "The data for an entity mention annotation. This represents a mention of an `Entity` in the conversation.", - "id": "GoogleCloudContactcenterinsightsV1EntityMentionData", + "GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig": { + "description": "Configuration for processing transcript objects.", + "id": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig", "properties": { - "entityUniqueId": { - "description": "The key of this entity in conversation entities. Can be used to retrieve the exact `Entity` this mention is attached to.", - "type": "string" - }, - "sentiment": { - "$ref": "GoogleCloudContactcenterinsightsV1SentimentData", - "description": "Sentiment expressed for this mention of the entity." - }, - "type": { - "description": "The type of the entity mention.", + "medium": { + "description": "Required. The medium transcript objects represent.", "enum": [ - "MENTION_TYPE_UNSPECIFIED", - "PROPER", - "COMMON" + "MEDIUM_UNSPECIFIED", + "PHONE_CALL", + "CHAT" ], "enumDescriptions": [ - "Unspecified.", - "Proper noun.", - "Common noun (or noun compound)." + "Default value, if unspecified will default to PHONE_CALL.", + "The format for conversations that took place over the phone.", + "The format for conversations that took place over chat." ], "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ExactMatchConfig": { - "description": "Exact match configuration.", - "id": "GoogleCloudContactcenterinsightsV1ExactMatchConfig", - "properties": { - "caseSensitive": { - "description": "Whether to consider case sensitivity when performing an exact match.", - "type": "boolean" - } - }, + "GoogleCloudContactcenterinsightsV1IngestConversationsResponse": { + "description": "The response to an IngestConversations operation.", + "id": "GoogleCloudContactcenterinsightsV1IngestConversationsResponse", + "properties": {}, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ExportInsightsDataMetadata": { - "description": "Metadata for an export insights operation.", - "id": "GoogleCloudContactcenterinsightsV1ExportInsightsDataMetadata", + "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecMetadata": { + "description": "Metadata for initializing a location-level encryption specification.", + "id": "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecMetadata", "properties": { "createTime": { "description": "Output only. The time the operation was created.", @@ -2839,1018 +5520,1344 @@ "type": "string" }, "partialErrors": { - "description": "Partial errors during export operation that might cause the operation output to be incomplete.", + "description": "Partial errors during initializing operation that might cause the operation output to be incomplete.", "items": { "$ref": "GoogleRpcStatus" }, "type": "array" }, "request": { - "$ref": "GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest", - "description": "The original request for export." - } - }, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest": { - "description": "The request to export insights.", - "id": "GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest", - "properties": { - "bigQueryDestination": { - "$ref": "GoogleCloudContactcenterinsightsV1ExportInsightsDataRequestBigQueryDestination", - "description": "Specified if sink is a BigQuery table." - }, - "filter": { - "description": "A filter to reduce results to a specific subset. Useful for exporting conversations with specific properties.", - "type": "string" - }, - "kmsKey": { - "description": "A fully qualified KMS key name for BigQuery tables protected by CMEK. Format: projects/{project}/locations/{location}/keyRings/{keyring}/cryptoKeys/{key}/cryptoKeyVersions/{version}", - "type": "string" - }, - "parent": { - "description": "Required. The parent resource to export data from.", - "type": "string" - }, - "writeDisposition": { - "description": "Options for what to do if the destination table already exists.", - "enum": [ - "WRITE_DISPOSITION_UNSPECIFIED", - "WRITE_TRUNCATE", - "WRITE_APPEND" - ], - "enumDescriptions": [ - "Write disposition is not specified. Defaults to WRITE_TRUNCATE.", - "If the table already exists, BigQuery will overwrite the table data and use the schema from the load.", - "If the table already exists, BigQuery will append data to the table." - ], - "type": "string" + "$ref": "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest", + "description": "Output only. The original request for initialization.", + "readOnly": true } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ExportInsightsDataRequestBigQueryDestination": { - "description": "A BigQuery Table Reference.", - "id": "GoogleCloudContactcenterinsightsV1ExportInsightsDataRequestBigQueryDestination", + "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest": { + "description": "The request to initialize a location-level encryption specification.", + "id": "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest", "properties": { - "dataset": { - "description": "Required. The name of the BigQuery dataset that the snapshot result should be exported to. If this dataset does not exist, the export call returns an INVALID_ARGUMENT error.", - "type": "string" - }, - "projectId": { - "description": "A project ID or number. If specified, then export will attempt to write data to this project instead of the resource project. Otherwise, the resource project will be used.", - "type": "string" - }, - "table": { - "description": "The BigQuery table name to which the insights data should be written. If this table does not exist, the export call returns an INVALID_ARGUMENT error.", - "type": "string" + "encryptionSpec": { + "$ref": "GoogleCloudContactcenterinsightsV1EncryptionSpec", + "description": "Required. The encryption spec used for CMEK encryption. It is required that the kms key is in the same region as the endpoint. The same key will be used for all provisioned resources, if encryption is available. If the `kms_key_name` field is left empty, no encryption will be enforced." } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ExportInsightsDataResponse": { - "description": "Response for an export insights operation.", - "id": "GoogleCloudContactcenterinsightsV1ExportInsightsDataResponse", + "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecResponse": { + "description": "The response to initialize a location-level encryption specification.", + "id": "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecResponse", "properties": {}, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ExportIssueModelMetadata": { - "description": "Metadata used for export issue model.", - "id": "GoogleCloudContactcenterinsightsV1ExportIssueModelMetadata", + "GoogleCloudContactcenterinsightsV1Intent": { + "description": "The data for an intent. Represents a detected intent in the conversation, for example MAKES_PROMISE.", + "id": "GoogleCloudContactcenterinsightsV1Intent", "properties": { - "createTime": { - "description": "The time the operation was created.", - "format": "google-datetime", - "type": "string" - }, - "endTime": { - "description": "The time the operation finished running.", - "format": "google-datetime", + "displayName": { + "description": "The human-readable name of the intent.", "type": "string" }, - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1ExportIssueModelRequest", - "description": "The original export request." - } - }, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1ExportIssueModelRequest": { - "description": "Request to export an issue model.", - "id": "GoogleCloudContactcenterinsightsV1ExportIssueModelRequest", - "properties": { - "gcsDestination": { - "$ref": "GoogleCloudContactcenterinsightsV1ExportIssueModelRequestGcsDestination", - "description": "Google Cloud Storage URI to export the issue model to." - }, - "name": { - "description": "Required. The issue model to export.", + "id": { + "description": "The unique identifier of the intent.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ExportIssueModelRequestGcsDestination": { - "description": "Google Cloud Storage Object URI to save the issue model to.", - "id": "GoogleCloudContactcenterinsightsV1ExportIssueModelRequestGcsDestination", + "GoogleCloudContactcenterinsightsV1IntentMatchData": { + "description": "The data for an intent match. Represents an intent match for a text segment in the conversation. A text segment can be part of a sentence, a complete sentence, or an utterance with multiple sentences.", + "id": "GoogleCloudContactcenterinsightsV1IntentMatchData", "properties": { - "objectUri": { - "description": "Required. Format: `gs:///`", + "intentUniqueId": { + "description": "The id of the matched intent. Can be used to retrieve the corresponding intent information.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ExportIssueModelResponse": { - "description": "Response from export issue model", - "id": "GoogleCloudContactcenterinsightsV1ExportIssueModelResponse", + "GoogleCloudContactcenterinsightsV1InterruptionData": { + "description": "The data for an interruption annotation.", + "id": "GoogleCloudContactcenterinsightsV1InterruptionData", "properties": {}, "type": "object" }, - "GoogleCloudContactcenterinsightsV1FaqAnswerData": { - "description": "Agent Assist frequently-asked-question answer data.", - "id": "GoogleCloudContactcenterinsightsV1FaqAnswerData", + "GoogleCloudContactcenterinsightsV1Issue": { + "description": "The issue resource.", + "id": "GoogleCloudContactcenterinsightsV1Issue", "properties": { - "answer": { - "description": "The piece of text from the `source` knowledge base document.", + "createTime": { + "description": "Output only. The time at which this issue was created.", + "format": "google-datetime", + "readOnly": true, "type": "string" }, - "confidenceScore": { - "description": "The system's confidence score that this answer is a good match for this conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely certain).", - "format": "float", - "type": "number" - }, - "metadata": { - "additionalProperties": { - "type": "string" - }, - "description": "Map that contains metadata about the FAQ answer and the document that it originates from.", - "type": "object" + "displayDescription": { + "description": "Representative description of the issue.", + "type": "string" }, - "queryRecord": { - "description": "The name of the answer record. Format: projects/{project}/locations/{location}/answerRecords/{answer_record}", + "displayName": { + "description": "The representative name for the issue.", "type": "string" }, - "question": { - "description": "The corresponding FAQ question.", + "name": { + "description": "Immutable. The resource name of the issue. Format: projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}", "type": "string" }, - "source": { - "description": "The knowledge document that this answer was extracted from. Format: projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}.", + "sampleUtterances": { + "description": "Output only. Resource names of the sample representative utterances that match to this issue.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "updateTime": { + "description": "Output only. The most recent time that this issue was updated.", + "format": "google-datetime", + "readOnly": true, "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1GcsSource": { - "description": "A Cloud Storage source of conversation data.", - "id": "GoogleCloudContactcenterinsightsV1GcsSource", + "GoogleCloudContactcenterinsightsV1IssueAssignment": { + "description": "Information about the issue.", + "id": "GoogleCloudContactcenterinsightsV1IssueAssignment", "properties": { - "audioUri": { - "description": "Cloud Storage URI that points to a file that contains the conversation audio.", + "displayName": { + "description": "Immutable. Display name of the assigned issue. This field is set at time of analyis and immutable since then.", "type": "string" }, - "transcriptUri": { - "description": "Immutable. Cloud Storage URI that points to a file that contains the conversation transcript.", + "issue": { + "description": "Resource name of the assigned issue.", "type": "string" + }, + "score": { + "description": "Score indicating the likelihood of the issue assignment. currently bounded on [0,1].", + "format": "double", + "type": "number" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1HoldData": { - "description": "The data for a hold annotation.", - "id": "GoogleCloudContactcenterinsightsV1HoldData", - "properties": {}, + "GoogleCloudContactcenterinsightsV1IssueMatchData": { + "description": "The data for an issue match annotation.", + "id": "GoogleCloudContactcenterinsightsV1IssueMatchData", + "properties": { + "issueAssignment": { + "$ref": "GoogleCloudContactcenterinsightsV1IssueAssignment", + "description": "Information about the issue's assignment." + } + }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ImportIssueModelMetadata": { - "description": "Metadata used for import issue model.", - "id": "GoogleCloudContactcenterinsightsV1ImportIssueModelMetadata", + "GoogleCloudContactcenterinsightsV1IssueModel": { + "description": "The issue model resource.", + "id": "GoogleCloudContactcenterinsightsV1IssueModel", "properties": { "createTime": { - "description": "The time the operation was created.", + "description": "Output only. The time at which this issue model was created.", "format": "google-datetime", + "readOnly": true, "type": "string" }, - "endTime": { - "description": "The time the operation finished running.", - "format": "google-datetime", + "displayName": { + "description": "The representative name for the issue model.", "type": "string" }, - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1ImportIssueModelRequest", - "description": "The original import request." - } - }, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1ImportIssueModelRequest": { - "description": "Request to import an issue model.", - "id": "GoogleCloudContactcenterinsightsV1ImportIssueModelRequest", - "properties": { - "createNewModel": { - "description": "Optional. If set to true, will create an issue model from the imported file with randomly generated IDs for the issue model and corresponding issues. Otherwise, replaces an existing model with the same ID as the file.", - "type": "boolean" + "inputDataConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1IssueModelInputDataConfig", + "description": "Configs for the input data that used to create the issue model." }, - "gcsSource": { - "$ref": "GoogleCloudContactcenterinsightsV1ImportIssueModelRequestGcsSource", - "description": "Google Cloud Storage source message." + "issueCount": { + "description": "Output only. Number of issues in this issue model.", + "format": "int64", + "readOnly": true, + "type": "string" }, - "parent": { - "description": "Required. The parent resource of the issue model.", + "languageCode": { + "description": "Language of the model.", + "type": "string" + }, + "modelType": { + "description": "Type of the model.", + "enum": [ + "MODEL_TYPE_UNSPECIFIED", + "TYPE_V1", + "TYPE_V2" + ], + "enumDescriptions": [ + "Unspecified model type.", + "Type V1.", + "Type V2." + ], + "type": "string" + }, + "name": { + "description": "Immutable. The resource name of the issue model. Format: projects/{project}/locations/{location}/issueModels/{issue_model}", + "type": "string" + }, + "state": { + "description": "Output only. State of the model.", + "enum": [ + "STATE_UNSPECIFIED", + "UNDEPLOYED", + "DEPLOYING", + "DEPLOYED", + "UNDEPLOYING", + "DELETING" + ], + "enumDescriptions": [ + "Unspecified.", + "Model is not deployed but is ready to deploy.", + "Model is being deployed.", + "Model is deployed and is ready to be used. A model can only be used in analysis if it's in this state.", + "Model is being undeployed.", + "Model is being deleted." + ], + "readOnly": true, + "type": "string" + }, + "trainingStats": { + "$ref": "GoogleCloudContactcenterinsightsV1IssueModelLabelStats", + "description": "Output only. Immutable. The issue model's label statistics on its training data.", + "readOnly": true + }, + "updateTime": { + "description": "Output only. The most recent time at which the issue model was updated.", + "format": "google-datetime", + "readOnly": true, "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ImportIssueModelRequestGcsSource": { - "description": "Google Cloud Storage Object URI to get the issue model file from.", - "id": "GoogleCloudContactcenterinsightsV1ImportIssueModelRequestGcsSource", + "GoogleCloudContactcenterinsightsV1IssueModelInputDataConfig": { + "description": "Configs for the input data used to create the issue model.", + "id": "GoogleCloudContactcenterinsightsV1IssueModelInputDataConfig", "properties": { - "objectUri": { - "description": "Required. Format: `gs:///`", + "filter": { + "description": "A filter to reduce the conversations used for training the model to a specific subset.", + "type": "string" + }, + "medium": { + "deprecated": true, + "description": "Medium of conversations used in training data. This field is being deprecated. To specify the medium to be used in training a new issue model, set the `medium` field on `filter`.", + "enum": [ + "MEDIUM_UNSPECIFIED", + "PHONE_CALL", + "CHAT" + ], + "enumDescriptions": [ + "Default value, if unspecified will default to PHONE_CALL.", + "The format for conversations that took place over the phone.", + "The format for conversations that took place over chat." + ], + "type": "string" + }, + "trainingConversationsCount": { + "description": "Output only. Number of conversations used in training. Output only.", + "format": "int64", + "readOnly": true, "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ImportIssueModelResponse": { - "description": "Response from import issue model", - "id": "GoogleCloudContactcenterinsightsV1ImportIssueModelResponse", - "properties": {}, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1IngestConversationsMetadata": { - "description": "The metadata for an IngestConversations operation.", - "id": "GoogleCloudContactcenterinsightsV1IngestConversationsMetadata", + "GoogleCloudContactcenterinsightsV1IssueModelLabelStats": { + "description": "Aggregated statistics about an issue model.", + "id": "GoogleCloudContactcenterinsightsV1IssueModelLabelStats", "properties": { - "createTime": { - "description": "Output only. The time the operation was created.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - }, - "endTime": { - "description": "Output only. The time the operation finished running.", - "format": "google-datetime", - "readOnly": true, + "analyzedConversationsCount": { + "description": "Number of conversations the issue model has analyzed at this point in time.", + "format": "int64", "type": "string" }, - "ingestConversationsStats": { - "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsMetadataIngestConversationsStats", - "description": "Output only. Statistics for IngestConversations operation.", - "readOnly": true - }, - "partialErrors": { - "description": "Output only. Partial errors during ingest operation that might cause the operation output to be incomplete.", - "items": { - "$ref": "GoogleRpcStatus" + "issueStats": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1IssueModelLabelStatsIssueStats" }, - "readOnly": true, - "type": "array" + "description": "Statistics on each issue. Key is the issue's resource name.", + "type": "object" }, - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequest", - "description": "Output only. The original request for ingest.", - "readOnly": true + "unclassifiedConversationsCount": { + "description": "Number of analyzed conversations for which no issue was applicable at this point in time.", + "format": "int64", + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1IngestConversationsMetadataIngestConversationsStats": { - "description": "Statistics for IngestConversations operation.", - "id": "GoogleCloudContactcenterinsightsV1IngestConversationsMetadataIngestConversationsStats", + "GoogleCloudContactcenterinsightsV1IssueModelLabelStatsIssueStats": { + "description": "Aggregated statistics about an issue.", + "id": "GoogleCloudContactcenterinsightsV1IssueModelLabelStatsIssueStats", "properties": { - "duplicatesSkippedCount": { - "description": "Output only. The number of objects skipped because another conversation with the same transcript uri had already been ingested.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "failedIngestCount": { - "description": "Output only. The number of objects which were unable to be ingested due to errors. The errors are populated in the partial_errors field.", - "format": "int32", - "readOnly": true, - "type": "integer" + "displayName": { + "description": "Display name of the issue.", + "type": "string" }, - "processedObjectCount": { - "description": "Output only. The number of objects processed during the ingest operation.", - "format": "int32", - "readOnly": true, - "type": "integer" + "issue": { + "description": "Issue resource. Format: projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}", + "type": "string" }, - "successfulIngestCount": { - "description": "Output only. The number of new conversations added during this ingest operation.", - "format": "int32", - "readOnly": true, - "type": "integer" + "labeledConversationsCount": { + "description": "Number of conversations attached to the issue at this point in time.", + "format": "int64", + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1IngestConversationsRequest": { - "description": "The request to ingest conversations.", - "id": "GoogleCloudContactcenterinsightsV1IngestConversationsRequest", + "GoogleCloudContactcenterinsightsV1IssueModelResult": { + "description": "Issue Modeling result on a conversation.", + "id": "GoogleCloudContactcenterinsightsV1IssueModelResult", "properties": { - "conversationConfig": { - "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig", - "description": "Configuration that applies to all conversations." - }, - "gcsSource": { - "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource", - "description": "A cloud storage bucket source. Note that any previously ingested objects from the source will be skipped to avoid duplication." - }, - "parent": { - "description": "Required. The parent resource for new conversations.", + "issueModel": { + "description": "Issue model that generates the result. Format: projects/{project}/locations/{location}/issueModels/{issue_model}", "type": "string" }, - "redactionConfig": { - "$ref": "GoogleCloudContactcenterinsightsV1RedactionConfig", - "description": "Optional. DLP settings for transcript redaction. Optional, will default to the config specified in Settings." - }, - "sampleSize": { - "description": "Optional. If set, this fields indicates the number of objects to ingest from the Cloud Storage bucket. If empty, the entire bucket will be ingested. Unless they are first deleted, conversations produced through sampling won't be ingested by subsequent ingest requests.", - "format": "int32", - "type": "integer" - }, - "speechConfig": { - "$ref": "GoogleCloudContactcenterinsightsV1SpeechConfig", - "description": "Optional. Default Speech-to-Text configuration. Optional, will default to the config specified in Settings." - }, - "transcriptObjectConfig": { - "$ref": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig", - "description": "Configuration for when `source` contains conversation transcripts." + "issues": { + "description": "All the matched issues.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1IssueAssignment" + }, + "type": "array" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig": { - "description": "Configuration that applies to all conversations.", - "id": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig", + "GoogleCloudContactcenterinsightsV1ListAllFeedbackLabelsResponse": { + "description": "The response for listing all feedback labels.", + "id": "GoogleCloudContactcenterinsightsV1ListAllFeedbackLabelsResponse", "properties": { - "agentChannel": { - "description": "Optional. Indicates which of the channels, 1 or 2, contains the agent. Note that this must be set for conversations to be properly displayed and analyzed.", - "format": "int32", - "type": "integer" + "feedbackLabels": { + "description": "The feedback labels that match the request.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1FeedbackLabel" + }, + "type": "array" }, - "agentId": { - "description": "Optional. An opaque, user-specified string representing a human agent who handled all conversations in the import. Note that this will be overridden if per-conversation metadata is provided through the `metadata_bucket_uri`.", + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" - }, - "customerChannel": { - "description": "Optional. Indicates which of the channels, 1 or 2, contains the agent. Note that this must be set for conversations to be properly displayed and analyzed.", - "format": "int32", - "type": "integer" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource": { - "description": "Configuration for Cloud Storage bucket sources.", - "id": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource", + "GoogleCloudContactcenterinsightsV1ListAnalysesResponse": { + "description": "The response to list analyses.", + "id": "GoogleCloudContactcenterinsightsV1ListAnalysesResponse", "properties": { - "bucketObjectType": { - "description": "Optional. Specifies the type of the objects in `bucket_uri`.", - "enum": [ - "BUCKET_OBJECT_TYPE_UNSPECIFIED", - "TRANSCRIPT", - "AUDIO" - ], - "enumDescriptions": [ - "The object type is unspecified and will default to `TRANSCRIPT`.", - "The object is a transcript.", - "The object is an audio file." - ], - "type": "string" - }, - "bucketUri": { - "description": "Required. The Cloud Storage bucket containing source objects.", - "type": "string" - }, - "customMetadataKeys": { - "description": "Optional. Custom keys to extract as conversation labels from metadata files in `metadata_bucket_uri`. Keys not included in this field will be ignored. Note that there is a limit of 20 labels per conversation.", + "analyses": { + "description": "The analyses that match the request.", "items": { - "type": "string" + "$ref": "GoogleCloudContactcenterinsightsV1Analysis" }, "type": "array" }, - "metadataBucketUri": { - "description": "Optional. The Cloud Storage path to the conversation metadata. Note that: [1] Metadata files are expected to be in JSON format. [2] Metadata and source files (transcripts or audio) must be in separate buckets. [3] A source file and its corresponding metadata file must share the same name to be properly ingested, E.g. `gs://bucket/audio/conversation1.mp3` and `gs://bucket/metadata/conversation1.json`.", + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig": { - "description": "Configuration for processing transcript objects.", - "id": "GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig", + "GoogleCloudContactcenterinsightsV1ListAnalysisRulesResponse": { + "description": "The response of listing views.", + "id": "GoogleCloudContactcenterinsightsV1ListAnalysisRulesResponse", "properties": { - "medium": { - "description": "Required. The medium transcript objects represent.", - "enum": [ - "MEDIUM_UNSPECIFIED", - "PHONE_CALL", - "CHAT" - ], - "enumDescriptions": [ - "Default value, if unspecified will default to PHONE_CALL.", - "The format for conversations that took place over the phone.", - "The format for conversations that took place over chat." - ], + "analysisRules": { + "description": "The analysis_rule that match the request.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1AnalysisRule" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1IngestConversationsResponse": { - "description": "The response to an IngestConversations operation.", - "id": "GoogleCloudContactcenterinsightsV1IngestConversationsResponse", - "properties": {}, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecMetadata": { - "description": "Metadata for initializing a location-level encryption specification.", - "id": "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecMetadata", + "GoogleCloudContactcenterinsightsV1ListConversationsResponse": { + "description": "The response of listing conversations.", + "id": "GoogleCloudContactcenterinsightsV1ListConversationsResponse", "properties": { - "createTime": { - "description": "Output only. The time the operation was created.", - "format": "google-datetime", - "readOnly": true, - "type": "string" + "conversations": { + "description": "The conversations that match the request.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1Conversation" + }, + "type": "array" }, - "endTime": { - "description": "Output only. The time the operation finished running.", - "format": "google-datetime", - "readOnly": true, + "nextPageToken": { + "description": "A token which can be sent as `page_token` to retrieve the next page. If this field is set, it means there is another page available. If it is not set, it means no other pages are available.", "type": "string" - }, - "partialErrors": { - "description": "Partial errors during initializing operation that might cause the operation output to be incomplete.", + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1ListFeedbackLabelsResponse": { + "description": "The response for listing feedback labels.", + "id": "GoogleCloudContactcenterinsightsV1ListFeedbackLabelsResponse", + "properties": { + "feedbackLabels": { + "description": "The feedback labels that match the request.", "items": { - "$ref": "GoogleRpcStatus" + "$ref": "GoogleCloudContactcenterinsightsV1FeedbackLabel" }, "type": "array" }, - "request": { - "$ref": "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest", - "description": "Output only. The original request for initialization.", - "readOnly": true + "nextPageToken": { + "description": "The next page token.", + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest": { - "description": "The request to initialize a location-level encryption specification.", - "id": "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest", + "GoogleCloudContactcenterinsightsV1ListIssueModelsResponse": { + "description": "The response of listing issue models.", + "id": "GoogleCloudContactcenterinsightsV1ListIssueModelsResponse", "properties": { - "encryptionSpec": { - "$ref": "GoogleCloudContactcenterinsightsV1EncryptionSpec", - "description": "Required. The encryption spec used for CMEK encryption. It is required that the kms key is in the same region as the endpoint. The same key will be used for all provisioned resources, if encryption is available. If the `kms_key_name` field is left empty, no encryption will be enforced." + "issueModels": { + "description": "The issue models that match the request.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1IssueModel" + }, + "type": "array" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecResponse": { - "description": "The response to initialize a location-level encryption specification.", - "id": "GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecResponse", - "properties": {}, + "GoogleCloudContactcenterinsightsV1ListIssuesResponse": { + "description": "The response of listing issues.", + "id": "GoogleCloudContactcenterinsightsV1ListIssuesResponse", + "properties": { + "issues": { + "description": "The issues that match the request.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1Issue" + }, + "type": "array" + } + }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1Intent": { - "description": "The data for an intent. Represents a detected intent in the conversation, for example MAKES_PROMISE.", - "id": "GoogleCloudContactcenterinsightsV1Intent", + "GoogleCloudContactcenterinsightsV1ListPhraseMatchersResponse": { + "description": "The response of listing phrase matchers.", + "id": "GoogleCloudContactcenterinsightsV1ListPhraseMatchersResponse", "properties": { - "displayName": { - "description": "The human-readable name of the intent.", + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" }, - "id": { - "description": "The unique identifier of the intent.", - "type": "string" + "phraseMatchers": { + "description": "The phrase matchers that match the request.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatcher" + }, + "type": "array" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1IntentMatchData": { - "description": "The data for an intent match. Represents an intent match for a text segment in the conversation. A text segment can be part of a sentence, a complete sentence, or an utterance with multiple sentences.", - "id": "GoogleCloudContactcenterinsightsV1IntentMatchData", + "GoogleCloudContactcenterinsightsV1ListQaQuestionsResponse": { + "description": "The response from a ListQaQuestions request.", + "id": "GoogleCloudContactcenterinsightsV1ListQaQuestionsResponse", "properties": { - "intentUniqueId": { - "description": "The id of the matched intent. Can be used to retrieve the corresponding intent information.", + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" + }, + "qaQuestions": { + "description": "The QaQuestions under the parent.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1QaQuestion" + }, + "type": "array" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1InterruptionData": { - "description": "The data for an interruption annotation.", - "id": "GoogleCloudContactcenterinsightsV1InterruptionData", - "properties": {}, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1Issue": { - "description": "The issue resource.", - "id": "GoogleCloudContactcenterinsightsV1Issue", + "GoogleCloudContactcenterinsightsV1ListQaScorecardRevisionsResponse": { + "description": "The response from a ListQaScorecardRevisions request.", + "id": "GoogleCloudContactcenterinsightsV1ListQaScorecardRevisionsResponse", "properties": { - "createTime": { - "description": "Output only. The time at which this issue was created.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - }, - "displayDescription": { - "description": "Representative description of the issue.", - "type": "string" - }, - "displayName": { - "description": "The representative name for the issue.", + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" }, - "name": { - "description": "Immutable. The resource name of the issue. Format: projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}", + "qaScorecardRevisions": { + "description": "The QaScorecards under the parent.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecardRevision" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1ListQaScorecardsResponse": { + "description": "The response from a ListQaScorecards request.", + "id": "GoogleCloudContactcenterinsightsV1ListQaScorecardsResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" }, - "sampleUtterances": { - "description": "Output only. Resource names of the sample representative utterances that match to this issue.", + "qaScorecards": { + "description": "The QaScorecards under the parent.", "items": { - "type": "string" + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecard" }, - "readOnly": true, "type": "array" - }, - "updateTime": { - "description": "Output only. The most recent time that this issue was updated.", - "format": "google-datetime", - "readOnly": true, + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1ListViewsResponse": { + "description": "The response of listing views.", + "id": "GoogleCloudContactcenterinsightsV1ListViewsResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" + }, + "views": { + "description": "The views that match the request.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1View" + }, + "type": "array" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1IssueAssignment": { - "description": "Information about the issue.", - "id": "GoogleCloudContactcenterinsightsV1IssueAssignment", + "GoogleCloudContactcenterinsightsV1PhraseMatchData": { + "description": "The data for a matched phrase matcher. Represents information identifying a phrase matcher for a given match.", + "id": "GoogleCloudContactcenterinsightsV1PhraseMatchData", "properties": { "displayName": { - "description": "Immutable. Display name of the assigned issue. This field is set at time of analyis and immutable since then.", + "description": "The human-readable name of the phrase matcher.", "type": "string" }, - "issue": { - "description": "Resource name of the assigned issue.", + "phraseMatcher": { + "description": "The unique identifier (the resource name) of the phrase matcher.", "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1PhraseMatchRule": { + "description": "The data for a phrase match rule.", + "id": "GoogleCloudContactcenterinsightsV1PhraseMatchRule", + "properties": { + "config": { + "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatchRuleConfig", + "description": "Provides additional information about the rule that specifies how to apply the rule." }, - "score": { - "description": "Score indicating the likelihood of the issue assignment. currently bounded on [0,1].", - "format": "double", - "type": "number" + "negated": { + "description": "Specifies whether the phrase must be missing from the transcript segment or present in the transcript segment.", + "type": "boolean" + }, + "query": { + "description": "Required. The phrase to be matched.", + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1IssueMatchData": { - "description": "The data for an issue match annotation.", - "id": "GoogleCloudContactcenterinsightsV1IssueMatchData", + "GoogleCloudContactcenterinsightsV1PhraseMatchRuleConfig": { + "description": "Configuration information of a phrase match rule.", + "id": "GoogleCloudContactcenterinsightsV1PhraseMatchRuleConfig", "properties": { - "issueAssignment": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueAssignment", - "description": "Information about the issue's assignment." + "exactMatchConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1ExactMatchConfig", + "description": "The configuration for the exact match rule." } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1IssueModel": { - "description": "The issue model resource.", - "id": "GoogleCloudContactcenterinsightsV1IssueModel", + "GoogleCloudContactcenterinsightsV1PhraseMatchRuleGroup": { + "description": "A message representing a rule in the phrase matcher.", + "id": "GoogleCloudContactcenterinsightsV1PhraseMatchRuleGroup", "properties": { - "createTime": { - "description": "Output only. The time at which this issue model was created.", + "phraseMatchRules": { + "description": "A list of phrase match rules that are included in this group.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatchRule" + }, + "type": "array" + }, + "type": { + "description": "Required. The type of this phrase match rule group.", + "enum": [ + "PHRASE_MATCH_RULE_GROUP_TYPE_UNSPECIFIED", + "ALL_OF", + "ANY_OF" + ], + "enumDescriptions": [ + "Unspecified.", + "Must meet all phrase match rules or there is no match.", + "If any of the phrase match rules are met, there is a match." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1PhraseMatcher": { + "description": "The phrase matcher resource.", + "id": "GoogleCloudContactcenterinsightsV1PhraseMatcher", + "properties": { + "activationUpdateTime": { + "description": "Output only. The most recent time at which the activation status was updated.", "format": "google-datetime", "readOnly": true, "type": "string" }, + "active": { + "description": "Applies the phrase matcher only when it is active.", + "type": "boolean" + }, "displayName": { - "description": "The representative name for the issue model.", + "description": "The human-readable name of the phrase matcher.", "type": "string" }, - "inputDataConfig": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueModelInputDataConfig", - "description": "Configs for the input data that used to create the issue model." + "name": { + "description": "The resource name of the phrase matcher. Format: projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}", + "type": "string" }, - "issueCount": { - "description": "Output only. Number of issues in this issue model.", - "format": "int64", + "phraseMatchRuleGroups": { + "description": "A list of phase match rule groups that are included in this matcher.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatchRuleGroup" + }, + "type": "array" + }, + "revisionCreateTime": { + "description": "Output only. The timestamp of when the revision was created. It is also the create time when a new matcher is added.", + "format": "google-datetime", "readOnly": true, "type": "string" }, - "languageCode": { - "description": "Language of the model.", + "revisionId": { + "description": "Output only. Immutable. The revision ID of the phrase matcher. A new revision is committed whenever the matcher is changed, except when it is activated or deactivated. A server generated random ID will be used. Example: locations/global/phraseMatchers/my-first-matcher@1234567", + "readOnly": true, "type": "string" }, - "modelType": { - "description": "Type of the model.", + "roleMatch": { + "description": "The role whose utterances the phrase matcher should be matched against. If the role is ROLE_UNSPECIFIED it will be matched against any utterances in the transcript.", "enum": [ - "MODEL_TYPE_UNSPECIFIED", - "TYPE_V1", - "TYPE_V2" + "ROLE_UNSPECIFIED", + "HUMAN_AGENT", + "AUTOMATED_AGENT", + "END_USER", + "ANY_AGENT" ], "enumDescriptions": [ - "Unspecified model type.", - "Type V1.", - "Type V2." + "Participant's role is not set.", + "Participant is a human agent.", + "Participant is an automated agent.", + "Participant is an end user who conversed with the contact center.", + "Participant is either a human or automated agent." ], "type": "string" }, - "name": { - "description": "Immutable. The resource name of the issue model. Format: projects/{project}/locations/{location}/issueModels/{issue_model}", - "type": "string" - }, - "state": { - "description": "Output only. State of the model.", + "type": { + "description": "Required. The type of this phrase matcher.", "enum": [ - "STATE_UNSPECIFIED", - "UNDEPLOYED", - "DEPLOYING", - "DEPLOYED", - "UNDEPLOYING", - "DELETING" + "PHRASE_MATCHER_TYPE_UNSPECIFIED", + "ALL_OF", + "ANY_OF" ], "enumDescriptions": [ "Unspecified.", - "Model is not deployed but is ready to deploy.", - "Model is being deployed.", - "Model is deployed and is ready to be used. A model can only be used in analysis if it's in this state.", - "Model is being undeployed.", - "Model is being deleted." + "Must meet all phrase match rule groups or there is no match.", + "If any of the phrase match rule groups are met, there is a match." ], - "readOnly": true, "type": "string" }, - "trainingStats": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueModelLabelStats", - "description": "Output only. Immutable. The issue model's label statistics on its training data.", - "readOnly": true - }, "updateTime": { - "description": "Output only. The most recent time at which the issue model was updated.", + "description": "Output only. The most recent time at which the phrase matcher was updated.", "format": "google-datetime", "readOnly": true, "type": "string" + }, + "versionTag": { + "description": "The customized version tag to use for the phrase matcher. If not specified, it will default to `revision_id`.", + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1IssueModelInputDataConfig": { - "description": "Configs for the input data used to create the issue model.", - "id": "GoogleCloudContactcenterinsightsV1IssueModelInputDataConfig", + "GoogleCloudContactcenterinsightsV1QaAnswer": { + "description": "An answer to a QaQuestion.", + "id": "GoogleCloudContactcenterinsightsV1QaAnswer", "properties": { - "filter": { - "description": "A filter to reduce the conversations used for training the model to a specific subset.", + "answerSources": { + "description": "List of all individual answers given to the question.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1QaAnswerAnswerSource" + }, + "type": "array" + }, + "answerValue": { + "$ref": "GoogleCloudContactcenterinsightsV1QaAnswerAnswerValue", + "description": "The main answer value, incorporating any manual edits if they exist." + }, + "conversation": { + "description": "The conversation the answer applies to.", "type": "string" }, - "medium": { - "deprecated": true, - "description": "Medium of conversations used in training data. This field is being deprecated. To specify the medium to be used in training a new issue model, set the `medium` field on `filter`.", - "enum": [ - "MEDIUM_UNSPECIFIED", - "PHONE_CALL", - "CHAT" - ], - "enumDescriptions": [ - "Default value, if unspecified will default to PHONE_CALL.", - "The format for conversations that took place over the phone.", - "The format for conversations that took place over chat." - ], + "potentialScore": { + "description": "The maximum potential score of the question. If the question was answered using `na_value`, this field will be zero.", + "format": "double", + "type": "number" + }, + "qaQuestion": { + "description": "The QaQuestion answered by this answer.", "type": "string" }, - "trainingConversationsCount": { - "description": "Output only. Number of conversations used in training. Output only.", - "format": "int64", - "readOnly": true, + "questionBody": { + "description": "Question text. E.g., \"Did the agent greet the customer?\"", "type": "string" + }, + "tags": { + "description": "User-defined list of arbitrary tags. Matches the value from QaScorecard.ScorecardQuestion.tags. Used for grouping/organization and for weighting the score of each answer.", + "items": { + "type": "string" + }, + "type": "array" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1IssueModelLabelStats": { - "description": "Aggregated statistics about an issue model.", - "id": "GoogleCloudContactcenterinsightsV1IssueModelLabelStats", + "GoogleCloudContactcenterinsightsV1QaAnswerAnswerSource": { + "description": "A question may have multiple answers from varying sources, one of which becomes the \"main\" answer above. AnswerSource represents each individual answer.", + "id": "GoogleCloudContactcenterinsightsV1QaAnswerAnswerSource", "properties": { - "analyzedConversationsCount": { - "description": "Number of conversations the issue model has analyzed at this point in time.", - "format": "int64", - "type": "string" - }, - "issueStats": { - "additionalProperties": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueModelLabelStatsIssueStats" - }, - "description": "Statistics on each issue. Key is the issue's resource name.", - "type": "object" + "answerValue": { + "$ref": "GoogleCloudContactcenterinsightsV1QaAnswerAnswerValue", + "description": "The answer value from this source." }, - "unclassifiedConversationsCount": { - "description": "Number of analyzed conversations for which no issue was applicable at this point in time.", - "format": "int64", + "sourceType": { + "description": "What created the answer.", + "enum": [ + "SOURCE_TYPE_UNSPECIFIED", + "SYSTEM_GENERATED", + "MANUAL_EDIT" + ], + "enumDescriptions": [ + "Source type is unspecified.", + "Answer was system-generated; created during an Insights analysis.", + "Answer was created by a human via manual edit." + ], "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1IssueModelLabelStatsIssueStats": { - "description": "Aggregated statistics about an issue.", - "id": "GoogleCloudContactcenterinsightsV1IssueModelLabelStatsIssueStats", + "GoogleCloudContactcenterinsightsV1QaAnswerAnswerValue": { + "description": "Message for holding the value of the answer. QaQuestion.AnswerChoice defines the possible answer values for a question.", + "id": "GoogleCloudContactcenterinsightsV1QaAnswerAnswerValue", "properties": { - "displayName": { - "description": "Display name of the issue.", - "type": "string" + "boolValue": { + "description": "Boolean value.", + "type": "boolean" }, - "issue": { - "description": "Issue resource. Format: projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}", + "key": { + "description": "A short string used as an identifier. Matches the value used in QaQuestion.AnswerChoice.key.", "type": "string" }, - "labeledConversationsCount": { - "description": "Number of conversations attached to the issue at this point in time.", - "format": "int64", + "naValue": { + "description": "A value of \"Not Applicable (N/A)\".", + "type": "boolean" + }, + "numValue": { + "description": "Numerical value.", + "format": "double", + "type": "number" + }, + "score": { + "description": "Numerical score of the answer.", + "format": "double", + "type": "number" + }, + "strValue": { + "description": "String value.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1IssueModelResult": { - "description": "Issue Modeling result on a conversation.", - "id": "GoogleCloudContactcenterinsightsV1IssueModelResult", + "GoogleCloudContactcenterinsightsV1QaQuestion": { + "description": "A single question to be scored by the Insights QA feature.", + "id": "GoogleCloudContactcenterinsightsV1QaQuestion", "properties": { - "issueModel": { - "description": "Issue model that generates the result. Format: projects/{project}/locations/{location}/issueModels/{issue_model}", + "abbreviation": { + "description": "Short, descriptive string, used in the UI where it's not practical to display the full question body. E.g., \"Greeting\".", "type": "string" }, - "issues": { - "description": "All the matched issues.", + "answerChoices": { + "description": "A list of valid answers to the question, which the LLM must choose from.", "items": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueAssignment" + "$ref": "GoogleCloudContactcenterinsightsV1QaQuestionAnswerChoice" }, "type": "array" - } - }, - "type": "object" - }, - "GoogleCloudContactcenterinsightsV1ListAnalysesResponse": { - "description": "The response to list analyses.", - "id": "GoogleCloudContactcenterinsightsV1ListAnalysesResponse", - "properties": { - "analyses": { - "description": "The analyses that match the request.", + }, + "answerInstructions": { + "description": "Instructions describing how to determine the answer.", + "type": "string" + }, + "createTime": { + "description": "Output only. The time at which this question was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "metrics": { + "$ref": "GoogleCloudContactcenterinsightsV1QaQuestionMetrics", + "description": "Metrics of the underlying tuned LLM over a holdout/test set while fine tuning the underlying LLM for the given question. This field will only be populated if and only if the question is part of a scorecard revision that has been tuned." + }, + "name": { + "description": "Identifier. The resource name of the question. Format: projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}/qaQuestions/{qa_question}", + "type": "string" + }, + "order": { + "description": "Defines the order of the question within its parent scorecard revision.", + "format": "int32", + "type": "integer" + }, + "questionBody": { + "description": "Question text. E.g., \"Did the agent greet the customer?\"", + "type": "string" + }, + "tags": { + "description": "User-defined list of arbitrary tags for the question. Used for grouping/organization and for weighting the score of each question.", "items": { - "$ref": "GoogleCloudContactcenterinsightsV1Analysis" + "type": "string" }, "type": "array" }, - "nextPageToken": { - "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "tuningMetadata": { + "$ref": "GoogleCloudContactcenterinsightsV1QaQuestionTuningMetadata", + "description": "Metadata about the tuning operation for the question.This field will only be populated if and only if the question is part of a scorecard revision that has been tuned." + }, + "updateTime": { + "description": "Output only. The most recent time at which the question was updated.", + "format": "google-datetime", + "readOnly": true, "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ListConversationsResponse": { - "description": "The response of listing conversations.", - "id": "GoogleCloudContactcenterinsightsV1ListConversationsResponse", + "GoogleCloudContactcenterinsightsV1QaQuestionAnswerChoice": { + "description": "Message representing a possible answer to the question.", + "id": "GoogleCloudContactcenterinsightsV1QaQuestionAnswerChoice", "properties": { - "conversations": { - "description": "The conversations that match the request.", - "items": { - "$ref": "GoogleCloudContactcenterinsightsV1Conversation" - }, - "type": "array" + "boolValue": { + "description": "Boolean value.", + "type": "boolean" }, - "nextPageToken": { - "description": "A token which can be sent as `page_token` to retrieve the next page. If this field is set, it means there is another page available. If it is not set, it means no other pages are available.", + "key": { + "description": "A short string used as an identifier.", + "type": "string" + }, + "naValue": { + "description": "A value of \"Not Applicable (N/A)\". If provided, this field may only be set to `true`. If a question receives this answer, it will be excluded from any score calculations.", + "type": "boolean" + }, + "numValue": { + "description": "Numerical value.", + "format": "double", + "type": "number" + }, + "score": { + "description": "Numerical score of the answer, used for generating the overall score of a QaScorecardResult. If the answer uses na_value, this field is unused.", + "format": "double", + "type": "number" + }, + "strValue": { + "description": "String value.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ListIssueModelsResponse": { - "description": "The response of listing issue models.", - "id": "GoogleCloudContactcenterinsightsV1ListIssueModelsResponse", + "GoogleCloudContactcenterinsightsV1QaQuestionMetrics": { + "description": "A wrapper representing metrics calculated against a test-set on a LLM that was fine tuned for this question.", + "id": "GoogleCloudContactcenterinsightsV1QaQuestionMetrics", "properties": { - "issueModels": { - "description": "The issue models that match the request.", - "items": { - "$ref": "GoogleCloudContactcenterinsightsV1IssueModel" - }, - "type": "array" + "accuracy": { + "description": "Output only. Accuracy of the model. Measures the percentage of correct answers the model gave on the test set.", + "format": "double", + "readOnly": true, + "type": "number" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ListIssuesResponse": { - "description": "The response of listing issues.", - "id": "GoogleCloudContactcenterinsightsV1ListIssuesResponse", + "GoogleCloudContactcenterinsightsV1QaQuestionTuningMetadata": { + "description": "Metadata about the tuning operation for the question. Will only be set if a scorecard containing this question has been tuned.", + "id": "GoogleCloudContactcenterinsightsV1QaQuestionTuningMetadata", "properties": { - "issues": { - "description": "The issues that match the request.", + "datasetValidationWarnings": { + "description": "A list of any applicable data validation warnings about the question's feedback labels.", "items": { - "$ref": "GoogleCloudContactcenterinsightsV1Issue" + "enum": [ + "DATASET_VALIDATION_WARNING_UNSPECIFIED", + "TOO_MANY_INVALID_FEEDBACK_LABELS", + "INSUFFICIENT_FEEDBACK_LABELS", + "INSUFFICIENT_FEEDBACK_LABELS_PER_ANSWER", + "ALL_FEEDBACK_LABELS_HAVE_THE_SAME_ANSWER" + ], + "enumDescriptions": [ + "Unspecified data validation warning.", + "A non-trivial percentage of the feedback labels are invalid.", + "The quantity of valid feedback labels provided is less than the recommended minimum.", + "One or more of the answers have less than the recommended minimum of feedback labels.", + "All the labels in the dataset come from a single answer choice." + ], + "type": "string" }, "type": "array" + }, + "totalValidLabelCount": { + "description": "Total number of valid labels provided for the question at the time of tuining.", + "format": "int64", + "type": "string" + }, + "tuningError": { + "description": "Error status of the tuning operation for the question. Will only be set if the tuning operation failed.", + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ListPhraseMatchersResponse": { - "description": "The response of listing phrase matchers.", - "id": "GoogleCloudContactcenterinsightsV1ListPhraseMatchersResponse", + "GoogleCloudContactcenterinsightsV1QaScorecard": { + "description": "A QaScorecard represents a collection of questions to be scored during analysis.", + "id": "GoogleCloudContactcenterinsightsV1QaScorecard", "properties": { - "nextPageToken": { - "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "createTime": { + "description": "Output only. The time at which this scorecard was created.", + "format": "google-datetime", + "readOnly": true, "type": "string" }, - "phraseMatchers": { - "description": "The phrase matchers that match the request.", - "items": { - "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatcher" - }, - "type": "array" + "description": { + "description": "A text description explaining the intent of the scorecard.", + "type": "string" + }, + "displayName": { + "description": "The user-specified display name of the scorecard.", + "type": "string" + }, + "name": { + "description": "Identifier. The scorecard name. Format: projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}", + "type": "string" + }, + "updateTime": { + "description": "Output only. The most recent time at which the scorecard was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1ListViewsResponse": { - "description": "The response of listing views.", - "id": "GoogleCloudContactcenterinsightsV1ListViewsResponse", + "GoogleCloudContactcenterinsightsV1QaScorecardResult": { + "description": "The results of scoring a single conversation against a QaScorecard. Contains a collection of QaAnswers and aggregate score.", + "id": "GoogleCloudContactcenterinsightsV1QaScorecardResult", "properties": { - "nextPageToken": { - "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "agentId": { + "description": "ID of the agent that handled the conversation.", "type": "string" }, - "views": { - "description": "The views that match the request.", + "conversation": { + "description": "The conversation scored by this result.", + "type": "string" + }, + "createTime": { + "description": "Output only. The timestamp that the revision was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The name of the scorecard result. Format: projects/{project}/locations/{location}/qaScorecardResults/{qa_scorecard_result}", + "type": "string" + }, + "normalizedScore": { + "description": "The normalized score, which is the score divided by the potential score. Any manual edits are included if they exist.", + "format": "double", + "type": "number" + }, + "potentialScore": { + "description": "The maximum potential overall score of the scorecard. Any questions answered using `na_value` are excluded from this calculation.", + "format": "double", + "type": "number" + }, + "qaAnswers": { + "description": "Set of QaAnswers represented in the result.", "items": { - "$ref": "GoogleCloudContactcenterinsightsV1View" + "$ref": "GoogleCloudContactcenterinsightsV1QaAnswer" + }, + "type": "array" + }, + "qaScorecardRevision": { + "description": "The QaScorecardRevision scored by this result.", + "type": "string" + }, + "qaTagResults": { + "description": "Collection of tags and their scores.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecardResultQaTagResult" + }, + "type": "array" + }, + "score": { + "description": "The overall numerical score of the result, incorporating any manual edits if they exist.", + "format": "double", + "type": "number" + }, + "scoreSources": { + "description": "List of all individual score sets.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecardResultScoreSource" }, "type": "array" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1PhraseMatchData": { - "description": "The data for a matched phrase matcher. Represents information identifying a phrase matcher for a given match.", - "id": "GoogleCloudContactcenterinsightsV1PhraseMatchData", + "GoogleCloudContactcenterinsightsV1QaScorecardResultQaTagResult": { + "description": "Tags and their corresponding results.", + "id": "GoogleCloudContactcenterinsightsV1QaScorecardResultQaTagResult", "properties": { - "displayName": { - "description": "The human-readable name of the phrase matcher.", - "type": "string" + "normalizedScore": { + "description": "The normalized score the tag applies to.", + "format": "double", + "type": "number" }, - "phraseMatcher": { - "description": "The unique identifier (the resource name) of the phrase matcher.", + "potentialScore": { + "description": "The potential score the tag applies to.", + "format": "double", + "type": "number" + }, + "score": { + "description": "The score the tag applies to.", + "format": "double", + "type": "number" + }, + "tag": { + "description": "The tag the score applies to.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1PhraseMatchRule": { - "description": "The data for a phrase match rule.", - "id": "GoogleCloudContactcenterinsightsV1PhraseMatchRule", + "GoogleCloudContactcenterinsightsV1QaScorecardResultScoreSource": { + "description": "A scorecard result may have multiple sets of scores from varying sources, one of which becomes the \"main\" answer above. A ScoreSource represents each individual set of scores.", + "id": "GoogleCloudContactcenterinsightsV1QaScorecardResultScoreSource", "properties": { - "config": { - "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatchRuleConfig", - "description": "Provides additional information about the rule that specifies how to apply the rule." + "normalizedScore": { + "description": "The normalized score, which is the score divided by the potential score.", + "format": "double", + "type": "number" }, - "negated": { - "description": "Specifies whether the phrase must be missing from the transcript segment or present in the transcript segment.", - "type": "boolean" + "potentialScore": { + "description": "The maximum potential overall score of the scorecard. Any questions answered using `na_value` are excluded from this calculation.", + "format": "double", + "type": "number" }, - "query": { - "description": "Required. The phrase to be matched.", + "qaTagResults": { + "description": "Collection of tags and their scores.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecardResultQaTagResult" + }, + "type": "array" + }, + "score": { + "description": "The overall numerical score of the result.", + "format": "double", + "type": "number" + }, + "sourceType": { + "description": "What created the score.", + "enum": [ + "SOURCE_TYPE_UNSPECIFIED", + "SYSTEM_GENERATED_ONLY", + "INCLUDES_MANUAL_EDITS" + ], + "enumDescriptions": [ + "Source type is unspecified.", + "Score is derived only from system-generated answers.", + "Score is derived from both system-generated answers, and includes any manual edits if they exist." + ], "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1PhraseMatchRuleConfig": { - "description": "Configuration information of a phrase match rule.", - "id": "GoogleCloudContactcenterinsightsV1PhraseMatchRuleConfig", + "GoogleCloudContactcenterinsightsV1QaScorecardRevision": { + "description": "A revision of a QaScorecard. Modifying published scorecard fields would invalidate existing scorecard results \u2014 the questions may have changed, or the score weighting will make existing scores impossible to understand. So changes must create a new revision, rather than modifying the existing resource.", + "id": "GoogleCloudContactcenterinsightsV1QaScorecardRevision", "properties": { - "exactMatchConfig": { - "$ref": "GoogleCloudContactcenterinsightsV1ExactMatchConfig", - "description": "The configuration for the exact match rule." + "alternateIds": { + "description": "Output only. Alternative IDs for this revision of the scorecard, e.g., `latest`.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "createTime": { + "description": "Output only. The timestamp that the revision was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The name of the scorecard revision. Format: projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}", + "type": "string" + }, + "snapshot": { + "$ref": "GoogleCloudContactcenterinsightsV1QaScorecard", + "description": "The snapshot of the scorecard at the time of this revision's creation." + }, + "state": { + "description": "Output only. State of the scorecard revision, indicating whether it's ready to be used in analysis.", + "enum": [ + "STATE_UNSPECIFIED", + "EDITABLE", + "TRAINING", + "TRAINING_FAILED", + "READY", + "DELETING", + "TRAINING_CANCELLED" + ], + "enumDescriptions": [ + "Unspecified.", + "The scorecard revision can be edited.", + "Scorecard model training is in progress.", + "Scorecard revision model training failed.", + "The revision can be used in analysis.", + "Scorecard is being deleted.", + "Scorecard model training was explicitly cancelled by the user." + ], + "readOnly": true, + "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1PhraseMatchRuleGroup": { - "description": "A message representing a rule in the phrase matcher.", - "id": "GoogleCloudContactcenterinsightsV1PhraseMatchRuleGroup", + "GoogleCloudContactcenterinsightsV1QueryMetricsMetadata": { + "description": "The metadata from querying metrics.", + "id": "GoogleCloudContactcenterinsightsV1QueryMetricsMetadata", + "properties": {}, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1QueryMetricsRequest": { + "description": "The request for querying metrics.", + "id": "GoogleCloudContactcenterinsightsV1QueryMetricsRequest", "properties": { - "phraseMatchRules": { - "description": "A list of phrase match rules that are included in this group.", + "dimensions": { + "description": "The dimensions that determine the grouping key for the query. Defaults to no dimension if this field is unspecified. If a dimension is specified, its key must also be specified. Each dimension's key must be unique. If a time granularity is also specified, metric values in the dimension will be bucketed by this granularity. Up to one dimension is supported for now.", "items": { - "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatchRule" + "$ref": "GoogleCloudContactcenterinsightsV1Dimension" }, "type": "array" }, - "type": { - "description": "Required. The type of this phrase match rule group.", + "filter": { + "description": "Required. Filter to select a subset of conversations to compute the metrics. Must specify a window of the conversation create time to compute the metrics. The returned metrics will be from the range [DATE(starting create time), DATE(ending create time)). ", + "type": "string" + }, + "measureMask": { + "description": "Measures to return. Defaults to all measures if this field is unspecified. A valid mask should traverse from the `measure` field from the response. For example, a path from a measure mask to get the conversation count is \"conversation_measure.count\".", + "format": "google-fieldmask", + "type": "string" + }, + "timeGranularity": { + "description": "The time granularity of each data point in the time series. Defaults to NONE if this field is unspecified.", "enum": [ - "PHRASE_MATCH_RULE_GROUP_TYPE_UNSPECIFIED", - "ALL_OF", - "ANY_OF" + "TIME_GRANULARITY_UNSPECIFIED", + "NONE", + "DAILY", + "HOURLY", + "PER_MINUTE", + "PER_5_MINUTES" ], "enumDescriptions": [ - "Unspecified.", - "Must meet all phrase match rules or there is no match.", - "If any of the phrase match rules are met, there is a match." + "The time granularity is unspecified and will default to NONE.", + "No time granularity. The response won't contain a time series. This is the default value if no time granularity is specified.", + "Data points in the time series will aggregate at a daily granularity. 1 day means [midnight to midnight).", + "Data points in the time series will aggregate at a daily granularity. 1 HOUR means [01:00 to 02:00).", + "Data points in the time series will aggregate at a daily granularity. PER_MINUTE means [01:00 to 01:01).", + "Data points in the time series will aggregate at a 1 minute granularity. PER_5_MINUTES means [01:00 to 01:05)." ], "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1PhraseMatcher": { - "description": "The phrase matcher resource.", - "id": "GoogleCloudContactcenterinsightsV1PhraseMatcher", + "GoogleCloudContactcenterinsightsV1QueryMetricsResponse": { + "description": "The response for querying metrics.", + "id": "GoogleCloudContactcenterinsightsV1QueryMetricsResponse", "properties": { - "activationUpdateTime": { - "description": "Output only. The most recent time at which the activation status was updated.", - "format": "google-datetime", - "readOnly": true, - "type": "string" - }, - "active": { - "description": "Applies the phrase matcher only when it is active.", - "type": "boolean" - }, - "displayName": { - "description": "The human-readable name of the phrase matcher.", + "location": { + "description": "Required. The location of the data. \"projects/{project}/locations/{location}\"", "type": "string" }, - "name": { - "description": "The resource name of the phrase matcher. Format: projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}", - "type": "string" + "macroAverageSlice": { + "$ref": "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSlice", + "description": "The macro average slice contains aggregated averages across the selected dimension. i.e. if group_by agent is specified this field will contain the average across all agents. This field is only populated if the request specifies a Dimension." }, - "phraseMatchRuleGroups": { - "description": "A list of phase match rule groups that are included in this matcher.", + "slices": { + "description": "A slice contains a total and (if the request specified a time granularity) a time series of metric values. Each slice contains a unique combination of the cardinality of dimensions from the request.", "items": { - "$ref": "GoogleCloudContactcenterinsightsV1PhraseMatchRuleGroup" + "$ref": "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSlice" }, "type": "array" }, - "revisionCreateTime": { - "description": "Output only. The timestamp of when the revision was created. It is also the create time when a new matcher is added.", + "updateTime": { + "description": "The metrics last update time.", "format": "google-datetime", - "readOnly": true, "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSlice": { + "description": "A slice contains a total and (if the request specified a time granularity) a time series of metric values. Each slice contains a unique combination of the cardinality of dimensions from the request. For example, if the request specifies a single ISSUE dimension and it has a cardinality of 2 (i.e. the data used to compute the metrics has 2 issues in total), the response will have 2 slices: * Slice 1 -> dimensions=[Issue 1] * Slice 2 -> dimensions=[Issue 2]", + "id": "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSlice", + "properties": { + "dimensions": { + "description": "A unique combination of dimensions that this slice represents.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1Dimension" + }, + "type": "array" }, - "revisionId": { - "description": "Output only. Immutable. The revision ID of the phrase matcher. A new revision is committed whenever the matcher is changed, except when it is activated or deactivated. A server generated random ID will be used. Example: locations/global/phraseMatchers/my-first-matcher@1234567", - "readOnly": true, - "type": "string" + "timeSeries": { + "$ref": "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceTimeSeries", + "description": "A time series of metric values. This is only populated if the request specifies a time granularity other than NONE." }, - "roleMatch": { - "description": "The role whose utterances the phrase matcher should be matched against. If the role is ROLE_UNSPECIFIED it will be matched against any utterances in the transcript.", - "enum": [ - "ROLE_UNSPECIFIED", - "HUMAN_AGENT", - "AUTOMATED_AGENT", - "END_USER", - "ANY_AGENT" - ], - "enumDescriptions": [ - "Participant's role is not set.", - "Participant is a human agent.", - "Participant is an automated agent.", - "Participant is an end user who conversed with the contact center.", - "Participant is either a human or automated agent." - ], - "type": "string" + "total": { + "$ref": "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPoint", + "description": "The total metric value. The interval of this data point is [starting create time, ending create time) from the request." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPoint": { + "description": "A data point contains the metric values mapped to an interval.", + "id": "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPoint", + "properties": { + "conversationMeasure": { + "$ref": "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointConversationMeasure", + "description": "The measure related to conversations." }, - "type": { - "description": "Required. The type of this phrase matcher.", - "enum": [ - "PHRASE_MATCHER_TYPE_UNSPECIFIED", - "ALL_OF", - "ANY_OF" - ], - "enumDescriptions": [ - "Unspecified.", - "Must meet all phrase match rule groups or there is no match.", - "If any of the phrase match rule groups are met, there is a match." - ], - "type": "string" + "interval": { + "$ref": "GoogleTypeInterval", + "description": "The interval that this data point represents. * If this is the total data point, the interval is [starting create time, ending create time) from the request. * If this a data point from the time series, the interval is [time, time + time granularity from the request)." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointConversationMeasure": { + "description": "The measure related to conversations.", + "id": "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointConversationMeasure", + "properties": { + "averageAgentSentimentScore": { + "description": "The average agent's sentiment score.", + "format": "float", + "type": "number" }, - "updateTime": { - "description": "Output only. The most recent time at which the phrase matcher was updated.", - "format": "google-datetime", - "readOnly": true, + "averageClientSentimentScore": { + "description": "The average client's sentiment score.", + "format": "float", + "type": "number" + }, + "averageCustomerSatisfactionRating": { + "description": "The average customer satisfaction rating.", + "format": "double", + "type": "number" + }, + "averageDuration": { + "description": "The average duration.", + "format": "google-duration", "type": "string" }, - "versionTag": { - "description": "The customized version tag to use for the phrase matcher. If not specified, it will default to `revision_id`.", + "averageQaNormalizedScore": { + "description": "Average QA normalized score. Will exclude 0's in average calculation.", + "format": "double", + "type": "number" + }, + "averageQaQuestionNormalizedScore": { + "description": "Average QA normalized score averaged for questions averaged across all revisions of the parent scorecard. Will be only populated if the request specifies a dimension of QA_QUESTION_ID.", + "format": "double", + "type": "number" + }, + "averageSilencePercentage": { + "description": "The average silence percentage.", + "format": "float", + "type": "number" + }, + "averageTurnCount": { + "description": "The average turn count.", + "format": "float", + "type": "number" + }, + "conversationCount": { + "description": "The conversation count.", + "format": "int32", + "type": "integer" + }, + "qaTagScores": { + "description": "Average QA normalized score for all the tags.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointConversationMeasureQaTagScore" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointConversationMeasureQaTagScore": { + "description": "Average QA normalized score for the tag.", + "id": "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointConversationMeasureQaTagScore", + "properties": { + "averageTagNormalizedScore": { + "description": "Average tag normalized score per tag.", + "format": "double", + "type": "number" + }, + "tag": { + "description": "Tag name.", "type": "string" } }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceTimeSeries": { + "description": "A time series of metric values.", + "id": "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceTimeSeries", + "properties": { + "dataPoints": { + "description": "The data points that make up the time series .", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPoint" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1RedactionConfig": { "description": "DLP resources used for redaction while ingesting conversations. DLP settings are applied to conversations ingested from the `UploadConversation` and `IngestConversations` endpoints, including conversation coming from CCAI Platform. They are not applied to conversations ingested from the `CreateConversation` endpoint or the Dialogflow / Agent Assist runtime integrations. When using Dialogflow / Agent Assist runtime integrations, redaction should be performed in Dialogflow / Agent Assist.", "id": "GoogleCloudContactcenterinsightsV1RedactionConfig", @@ -4111,6 +7118,21 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1TuneQaScorecardRevisionRequest": { + "description": "Request for TuneQaScorecardRevision endpoint.", + "id": "GoogleCloudContactcenterinsightsV1TuneQaScorecardRevisionRequest", + "properties": { + "filter": { + "description": "Required. Filter for selecting the feedback labels that needs to be used for training. This filter can be used to limit the feedback labels used for tuning to a feedback labels created or updated for a specific time-window etc.", + "type": "string" + }, + "validateOnly": { + "description": "Optional. Run in validate only mode, no fine tuning will actually run. Data quality validations like training data distributions will run. Even when set to false, the data quality validations will still run but once the validations complete we will proceed with the fine tune, if applicable.", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1UndeployIssueModelMetadata": { "description": "Metadata for undeploying an issue model.", "id": "GoogleCloudContactcenterinsightsV1UndeployIssueModelMetadata", @@ -4151,6 +7173,12 @@ "properties": {}, "type": "object" }, + "GoogleCloudContactcenterinsightsV1UndeployQaScorecardRevisionRequest": { + "description": "The request to undeploy a QaScorecardRevision", + "id": "GoogleCloudContactcenterinsightsV1UndeployQaScorecardRevisionRequest", + "properties": {}, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1UploadConversationMetadata": { "description": "The metadata for an `UploadConversation` operation.", "id": "GoogleCloudContactcenterinsightsV1UploadConversationMetadata", @@ -4327,6 +7355,13 @@ "description": "All the matched phrase matchers in the call.", "type": "object" }, + "qaScorecardResults": { + "description": "Results of scoring QaScorecards.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QaScorecardResult" + }, + "type": "array" + }, "sentiments": { "description": "Overall conversation-level sentiment for each channel of the call.", "items": { @@ -4376,6 +7411,10 @@ }, "type": "array" }, + "qaConfig": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorQaConfig", + "description": "Configuration for the QA annotator." + }, "runEntityAnnotator": { "description": "Whether to run the entity annotator.", "type": "boolean" @@ -4396,6 +7435,10 @@ "description": "Whether to run the active phrase matcher annotator(s).", "type": "boolean" }, + "runQaAnnotator": { + "description": "Whether to run the QA annotator.", + "type": "boolean" + }, "runSentimentAnnotator": { "description": "Whether to run the sentiment annotator.", "type": "boolean" @@ -4415,6 +7458,31 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorQaConfig": { + "description": "Configuration for the QA feature.", + "id": "GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorQaConfig", + "properties": { + "scorecardList": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorQaConfigScorecardList", + "description": "A manual list of scorecards to score." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorQaConfigScorecardList": { + "description": "Container for a list of scorecards.", + "id": "GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorQaConfigScorecardList", + "properties": { + "qaScorecardRevisions": { + "description": "List of QaScorecardRevisions.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorSummarizationConfig": { "description": "Configuration for summarization.", "id": "GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorSummarizationConfig", @@ -5311,6 +8379,135 @@ }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1alpha1Dimension": { + "description": "A dimension determines the grouping key for the query. In SQL terms, these would be part of both the \"SELECT\" and \"GROUP BY\" clauses.", + "id": "GoogleCloudContactcenterinsightsV1alpha1Dimension", + "properties": { + "agentDimensionMetadata": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1DimensionAgentDimensionMetadata", + "description": "Output only. Metadata about the agent dimension.", + "readOnly": true + }, + "dimensionKey": { + "description": "The key of the dimension.", + "enum": [ + "DIMENSION_KEY_UNSPECIFIED", + "ISSUE", + "AGENT", + "AGENT_TEAM", + "QA_QUESTION_ID", + "QA_QUESTION_ANSWER_VALUE", + "CONVERSATION_PROFILE_ID" + ], + "enumDescriptions": [ + "The key of the dimension is unspecified.", + "The dimension is keyed by issues.", + "The dimension is keyed by agents.", + "The dimension is keyed by agent teams.", + "The dimension is keyed by QaQuestionIds. Note that: We only group by the QuestionId and not the revision-id of the scorecard this question is a part of. This allows for showing stats for the same question across different scorecard revisions.", + "The dimension is keyed by QaQuestionIds-Answer value pairs. Note that: We only group by the QuestionId and not the revision-id of the scorecard this question is a part of. This allows for showing distribution of answers per question across different scorecard revisions.", + "The dimension is keyed by the conversation profile ID." + ], + "type": "string" + }, + "issueDimensionMetadata": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1DimensionIssueDimensionMetadata", + "description": "Output only. Metadata about the issue dimension.", + "readOnly": true + }, + "qaQuestionAnswerDimensionMetadata": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1DimensionQaQuestionAnswerDimensionMetadata", + "description": "Output only. Metadata about the QA question-answer dimension.", + "readOnly": true + }, + "qaQuestionDimensionMetadata": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1DimensionQaQuestionDimensionMetadata", + "description": "Output only. Metadata about the QA question dimension.", + "readOnly": true + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1DimensionAgentDimensionMetadata": { + "description": "Metadata about the agent dimension.", + "id": "GoogleCloudContactcenterinsightsV1alpha1DimensionAgentDimensionMetadata", + "properties": { + "agentDisplayName": { + "description": "Optional. The agent's name", + "type": "string" + }, + "agentId": { + "description": "Optional. A user-specified string representing the agent.", + "type": "string" + }, + "agentTeam": { + "description": "Optional. A user-specified string representing the agent's team.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1DimensionIssueDimensionMetadata": { + "description": "Metadata about the issue dimension.", + "id": "GoogleCloudContactcenterinsightsV1alpha1DimensionIssueDimensionMetadata", + "properties": { + "issueDisplayName": { + "description": "The issue display name.", + "type": "string" + }, + "issueId": { + "description": "The issue ID.", + "type": "string" + }, + "issueModelId": { + "description": "The parent issue model ID.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1DimensionQaQuestionAnswerDimensionMetadata": { + "description": "Metadata about the QA question-answer dimension. This is useful for showing the answer distribution for questions for a given scorecard.", + "id": "GoogleCloudContactcenterinsightsV1alpha1DimensionQaQuestionAnswerDimensionMetadata", + "properties": { + "answerValue": { + "description": "Optional. The full body of the question.", + "type": "string" + }, + "qaQuestionId": { + "description": "Optional. The QA question ID.", + "type": "string" + }, + "qaScorecardId": { + "description": "Optional. The QA scorecard ID.", + "type": "string" + }, + "questionBody": { + "description": "Optional. The full body of the question.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1DimensionQaQuestionDimensionMetadata": { + "description": "Metadata about the QA question dimension.", + "id": "GoogleCloudContactcenterinsightsV1alpha1DimensionQaQuestionDimensionMetadata", + "properties": { + "qaQuestionId": { + "description": "Optional. The QA question ID.", + "type": "string" + }, + "qaScorecardId": { + "description": "Optional. The QA scorecard ID.", + "type": "string" + }, + "questionBody": { + "description": "Optional. The full body of the question.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1alpha1EncryptionSpec": { "description": "A customer-managed encryption key specification that can be applied to all created resources (e.g. `Conversation`).", "id": "GoogleCloudContactcenterinsightsV1alpha1EncryptionSpec", @@ -5581,16 +8778,51 @@ "description": "Map that contains metadata about the FAQ answer and the document that it originates from.", "type": "object" }, - "queryRecord": { - "description": "The name of the answer record. Format: projects/{project}/locations/{location}/answerRecords/{answer_record}", + "queryRecord": { + "description": "The name of the answer record. Format: projects/{project}/locations/{location}/answerRecords/{answer_record}", + "type": "string" + }, + "question": { + "description": "The corresponding FAQ question.", + "type": "string" + }, + "source": { + "description": "The knowledge document that this answer was extracted from. Format: projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1FeedbackLabel": { + "description": "Represents a conversation, resource, and label provided by the user.", + "id": "GoogleCloudContactcenterinsightsV1alpha1FeedbackLabel", + "properties": { + "createTime": { + "description": "Output only. Create time of the label.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "label": { + "description": "String label.", "type": "string" }, - "question": { - "description": "The corresponding FAQ question.", + "labeledResource": { + "description": "Resource name of the resource to be labeled.", "type": "string" }, - "source": { - "description": "The knowledge document that this answer was extracted from. Format: projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}.", + "name": { + "description": "Immutable. Resource name of the FeedbackLabel. Format: projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label}", + "type": "string" + }, + "qaAnswerLabel": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QaAnswerAnswerValue", + "description": "QaAnswer label." + }, + "updateTime": { + "description": "Output only. Update time of the label.", + "format": "google-datetime", + "readOnly": true, "type": "string" } }, @@ -6040,129 +9272,558 @@ "readOnly": true, "type": "string" }, - "trainingStats": { - "$ref": "GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStats", - "description": "Output only. Immutable. The issue model's label statistics on its training data.", - "readOnly": true + "trainingStats": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStats", + "description": "Output only. Immutable. The issue model's label statistics on its training data.", + "readOnly": true + }, + "updateTime": { + "description": "Output only. The most recent time at which the issue model was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1IssueModelInputDataConfig": { + "description": "Configs for the input data used to create the issue model.", + "id": "GoogleCloudContactcenterinsightsV1alpha1IssueModelInputDataConfig", + "properties": { + "filter": { + "description": "A filter to reduce the conversations used for training the model to a specific subset.", + "type": "string" + }, + "medium": { + "deprecated": true, + "description": "Medium of conversations used in training data. This field is being deprecated. To specify the medium to be used in training a new issue model, set the `medium` field on `filter`.", + "enum": [ + "MEDIUM_UNSPECIFIED", + "PHONE_CALL", + "CHAT" + ], + "enumDescriptions": [ + "Default value, if unspecified will default to PHONE_CALL.", + "The format for conversations that took place over the phone.", + "The format for conversations that took place over chat." + ], + "type": "string" + }, + "trainingConversationsCount": { + "description": "Output only. Number of conversations used in training. Output only.", + "format": "int64", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStats": { + "description": "Aggregated statistics about an issue model.", + "id": "GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStats", + "properties": { + "analyzedConversationsCount": { + "description": "Number of conversations the issue model has analyzed at this point in time.", + "format": "int64", + "type": "string" + }, + "issueStats": { + "additionalProperties": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStatsIssueStats" + }, + "description": "Statistics on each issue. Key is the issue's resource name.", + "type": "object" + }, + "unclassifiedConversationsCount": { + "description": "Number of analyzed conversations for which no issue was applicable at this point in time.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStatsIssueStats": { + "description": "Aggregated statistics about an issue.", + "id": "GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStatsIssueStats", + "properties": { + "displayName": { + "description": "Display name of the issue.", + "type": "string" + }, + "issue": { + "description": "Issue resource. Format: projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}", + "type": "string" + }, + "labeledConversationsCount": { + "description": "Number of conversations attached to the issue at this point in time.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1IssueModelResult": { + "description": "Issue Modeling result on a conversation.", + "id": "GoogleCloudContactcenterinsightsV1alpha1IssueModelResult", + "properties": { + "issueModel": { + "description": "Issue model that generates the result. Format: projects/{project}/locations/{location}/issueModels/{issue_model}", + "type": "string" + }, + "issues": { + "description": "All the matched issues.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1IssueAssignment" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1ListAllFeedbackLabelsResponse": { + "description": "The response for listing all feedback labels.", + "id": "GoogleCloudContactcenterinsightsV1alpha1ListAllFeedbackLabelsResponse", + "properties": { + "feedbackLabels": { + "description": "The feedback labels that match the request.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1FeedbackLabel" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1ListFeedbackLabelsResponse": { + "description": "The response for listing feedback labels.", + "id": "GoogleCloudContactcenterinsightsV1alpha1ListFeedbackLabelsResponse", + "properties": { + "feedbackLabels": { + "description": "The feedback labels that match the request.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1FeedbackLabel" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The next page token.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1PhraseMatchData": { + "description": "The data for a matched phrase matcher. Represents information identifying a phrase matcher for a given match.", + "id": "GoogleCloudContactcenterinsightsV1alpha1PhraseMatchData", + "properties": { + "displayName": { + "description": "The human-readable name of the phrase matcher.", + "type": "string" + }, + "phraseMatcher": { + "description": "The unique identifier (the resource name) of the phrase matcher.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1QaAnswer": { + "description": "An answer to a QaQuestion.", + "id": "GoogleCloudContactcenterinsightsV1alpha1QaAnswer", + "properties": { + "answerSources": { + "description": "List of all individual answers given to the question.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QaAnswerAnswerSource" + }, + "type": "array" + }, + "answerValue": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QaAnswerAnswerValue", + "description": "The main answer value, incorporating any manual edits if they exist." + }, + "conversation": { + "description": "The conversation the answer applies to.", + "type": "string" + }, + "potentialScore": { + "description": "The maximum potential score of the question. If the question was answered using `na_value`, this field will be zero.", + "format": "double", + "type": "number" + }, + "qaQuestion": { + "description": "The QaQuestion answered by this answer.", + "type": "string" + }, + "questionBody": { + "description": "Question text. E.g., \"Did the agent greet the customer?\"", + "type": "string" + }, + "tags": { + "description": "User-defined list of arbitrary tags. Matches the value from QaScorecard.ScorecardQuestion.tags. Used for grouping/organization and for weighting the score of each answer.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1QaAnswerAnswerSource": { + "description": "A question may have multiple answers from varying sources, one of which becomes the \"main\" answer above. AnswerSource represents each individual answer.", + "id": "GoogleCloudContactcenterinsightsV1alpha1QaAnswerAnswerSource", + "properties": { + "answerValue": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QaAnswerAnswerValue", + "description": "The answer value from this source." + }, + "sourceType": { + "description": "What created the answer.", + "enum": [ + "SOURCE_TYPE_UNSPECIFIED", + "SYSTEM_GENERATED", + "MANUAL_EDIT" + ], + "enumDescriptions": [ + "Source type is unspecified.", + "Answer was system-generated; created during an Insights analysis.", + "Answer was created by a human via manual edit." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1QaAnswerAnswerValue": { + "description": "Message for holding the value of the answer. QaQuestion.AnswerChoice defines the possible answer values for a question.", + "id": "GoogleCloudContactcenterinsightsV1alpha1QaAnswerAnswerValue", + "properties": { + "boolValue": { + "description": "Boolean value.", + "type": "boolean" + }, + "key": { + "description": "A short string used as an identifier. Matches the value used in QaQuestion.AnswerChoice.key.", + "type": "string" + }, + "naValue": { + "description": "A value of \"Not Applicable (N/A)\".", + "type": "boolean" + }, + "numValue": { + "description": "Numerical value.", + "format": "double", + "type": "number" + }, + "score": { + "description": "Numerical score of the answer.", + "format": "double", + "type": "number" + }, + "strValue": { + "description": "String value.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1QaScorecardResult": { + "description": "The results of scoring a single conversation against a QaScorecard. Contains a collection of QaAnswers and aggregate score.", + "id": "GoogleCloudContactcenterinsightsV1alpha1QaScorecardResult", + "properties": { + "agentId": { + "description": "ID of the agent that handled the conversation.", + "type": "string" + }, + "conversation": { + "description": "The conversation scored by this result.", + "type": "string" + }, + "createTime": { + "description": "Output only. The timestamp that the revision was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The name of the scorecard result. Format: projects/{project}/locations/{location}/qaScorecardResults/{qa_scorecard_result}", + "type": "string" + }, + "normalizedScore": { + "description": "The normalized score, which is the score divided by the potential score. Any manual edits are included if they exist.", + "format": "double", + "type": "number" + }, + "potentialScore": { + "description": "The maximum potential overall score of the scorecard. Any questions answered using `na_value` are excluded from this calculation.", + "format": "double", + "type": "number" + }, + "qaAnswers": { + "description": "Set of QaAnswers represented in the result.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QaAnswer" + }, + "type": "array" + }, + "qaScorecardRevision": { + "description": "The QaScorecardRevision scored by this result.", + "type": "string" + }, + "qaTagResults": { + "description": "Collection of tags and their scores.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QaScorecardResultQaTagResult" + }, + "type": "array" + }, + "score": { + "description": "The overall numerical score of the result, incorporating any manual edits if they exist.", + "format": "double", + "type": "number" + }, + "scoreSources": { + "description": "List of all individual score sets.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QaScorecardResultScoreSource" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1QaScorecardResultQaTagResult": { + "description": "Tags and their corresponding results.", + "id": "GoogleCloudContactcenterinsightsV1alpha1QaScorecardResultQaTagResult", + "properties": { + "normalizedScore": { + "description": "The normalized score the tag applies to.", + "format": "double", + "type": "number" + }, + "potentialScore": { + "description": "The potential score the tag applies to.", + "format": "double", + "type": "number" }, - "updateTime": { - "description": "Output only. The most recent time at which the issue model was updated.", - "format": "google-datetime", - "readOnly": true, + "score": { + "description": "The score the tag applies to.", + "format": "double", + "type": "number" + }, + "tag": { + "description": "The tag the score applies to.", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1alpha1IssueModelInputDataConfig": { - "description": "Configs for the input data used to create the issue model.", - "id": "GoogleCloudContactcenterinsightsV1alpha1IssueModelInputDataConfig", + "GoogleCloudContactcenterinsightsV1alpha1QaScorecardResultScoreSource": { + "description": "A scorecard result may have multiple sets of scores from varying sources, one of which becomes the \"main\" answer above. A ScoreSource represents each individual set of scores.", + "id": "GoogleCloudContactcenterinsightsV1alpha1QaScorecardResultScoreSource", "properties": { - "filter": { - "description": "A filter to reduce the conversations used for training the model to a specific subset.", - "type": "string" + "normalizedScore": { + "description": "The normalized score, which is the score divided by the potential score.", + "format": "double", + "type": "number" }, - "medium": { - "deprecated": true, - "description": "Medium of conversations used in training data. This field is being deprecated. To specify the medium to be used in training a new issue model, set the `medium` field on `filter`.", + "potentialScore": { + "description": "The maximum potential overall score of the scorecard. Any questions answered using `na_value` are excluded from this calculation.", + "format": "double", + "type": "number" + }, + "qaTagResults": { + "description": "Collection of tags and their scores.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QaScorecardResultQaTagResult" + }, + "type": "array" + }, + "score": { + "description": "The overall numerical score of the result.", + "format": "double", + "type": "number" + }, + "sourceType": { + "description": "What created the score.", "enum": [ - "MEDIUM_UNSPECIFIED", - "PHONE_CALL", - "CHAT" + "SOURCE_TYPE_UNSPECIFIED", + "SYSTEM_GENERATED_ONLY", + "INCLUDES_MANUAL_EDITS" ], "enumDescriptions": [ - "Default value, if unspecified will default to PHONE_CALL.", - "The format for conversations that took place over the phone.", - "The format for conversations that took place over chat." + "Source type is unspecified.", + "Score is derived only from system-generated answers.", + "Score is derived from both system-generated answers, and includes any manual edits if they exist." ], "type": "string" - }, - "trainingConversationsCount": { - "description": "Output only. Number of conversations used in training. Output only.", - "format": "int64", - "readOnly": true, - "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStats": { - "description": "Aggregated statistics about an issue model.", - "id": "GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStats", + "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsMetadata": { + "description": "The metadata from querying metrics.", + "id": "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsMetadata", + "properties": {}, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponse": { + "description": "The response for querying metrics.", + "id": "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponse", "properties": { - "analyzedConversationsCount": { - "description": "Number of conversations the issue model has analyzed at this point in time.", - "format": "int64", + "location": { + "description": "Required. The location of the data. \"projects/{project}/locations/{location}\"", "type": "string" }, - "issueStats": { - "additionalProperties": { - "$ref": "GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStatsIssueStats" + "macroAverageSlice": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSlice", + "description": "The macro average slice contains aggregated averages across the selected dimension. i.e. if group_by agent is specified this field will contain the average across all agents. This field is only populated if the request specifies a Dimension." + }, + "slices": { + "description": "A slice contains a total and (if the request specified a time granularity) a time series of metric values. Each slice contains a unique combination of the cardinality of dimensions from the request.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSlice" }, - "description": "Statistics on each issue. Key is the issue's resource name.", - "type": "object" + "type": "array" }, - "unclassifiedConversationsCount": { - "description": "Number of analyzed conversations for which no issue was applicable at this point in time.", - "format": "int64", + "updateTime": { + "description": "The metrics last update time.", + "format": "google-datetime", "type": "string" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStatsIssueStats": { - "description": "Aggregated statistics about an issue.", - "id": "GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStatsIssueStats", + "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSlice": { + "description": "A slice contains a total and (if the request specified a time granularity) a time series of metric values. Each slice contains a unique combination of the cardinality of dimensions from the request. For example, if the request specifies a single ISSUE dimension and it has a cardinality of 2 (i.e. the data used to compute the metrics has 2 issues in total), the response will have 2 slices: * Slice 1 -> dimensions=[Issue 1] * Slice 2 -> dimensions=[Issue 2]", + "id": "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSlice", "properties": { - "displayName": { - "description": "Display name of the issue.", - "type": "string" + "dimensions": { + "description": "A unique combination of dimensions that this slice represents.", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1Dimension" + }, + "type": "array" }, - "issue": { - "description": "Issue resource. Format: projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}", - "type": "string" + "timeSeries": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceTimeSeries", + "description": "A time series of metric values. This is only populated if the request specifies a time granularity other than NONE." }, - "labeledConversationsCount": { - "description": "Number of conversations attached to the issue at this point in time.", - "format": "int64", - "type": "string" + "total": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPoint", + "description": "The total metric value. The interval of this data point is [starting create time, ending create time) from the request." } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1alpha1IssueModelResult": { - "description": "Issue Modeling result on a conversation.", - "id": "GoogleCloudContactcenterinsightsV1alpha1IssueModelResult", + "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPoint": { + "description": "A data point contains the metric values mapped to an interval.", + "id": "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPoint", "properties": { - "issueModel": { - "description": "Issue model that generates the result. Format: projects/{project}/locations/{location}/issueModels/{issue_model}", + "conversationMeasure": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointConversationMeasure", + "description": "The measure related to conversations." + }, + "interval": { + "$ref": "GoogleTypeInterval", + "description": "The interval that this data point represents. * If this is the total data point, the interval is [starting create time, ending create time) from the request. * If this a data point from the time series, the interval is [time, time + time granularity from the request)." + } + }, + "type": "object" + }, + "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointConversationMeasure": { + "description": "The measure related to conversations.", + "id": "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointConversationMeasure", + "properties": { + "averageAgentSentimentScore": { + "description": "The average agent's sentiment score.", + "format": "float", + "type": "number" + }, + "averageClientSentimentScore": { + "description": "The average client's sentiment score.", + "format": "float", + "type": "number" + }, + "averageCustomerSatisfactionRating": { + "description": "The average customer satisfaction rating.", + "format": "double", + "type": "number" + }, + "averageDuration": { + "description": "The average duration.", + "format": "google-duration", "type": "string" }, - "issues": { - "description": "All the matched issues.", + "averageQaNormalizedScore": { + "description": "Average QA normalized score. Will exclude 0's in average calculation.", + "format": "double", + "type": "number" + }, + "averageQaQuestionNormalizedScore": { + "description": "Average QA normalized score averaged for questions averaged across all revisions of the parent scorecard. Will be only populated if the request specifies a dimension of QA_QUESTION_ID.", + "format": "double", + "type": "number" + }, + "averageSilencePercentage": { + "description": "The average silence percentage.", + "format": "float", + "type": "number" + }, + "averageTurnCount": { + "description": "The average turn count.", + "format": "float", + "type": "number" + }, + "conversationCount": { + "description": "The conversation count.", + "format": "int32", + "type": "integer" + }, + "qaTagScores": { + "description": "Average QA normalized score for all the tags.", "items": { - "$ref": "GoogleCloudContactcenterinsightsV1alpha1IssueAssignment" + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointConversationMeasureQaTagScore" }, "type": "array" } }, "type": "object" }, - "GoogleCloudContactcenterinsightsV1alpha1PhraseMatchData": { - "description": "The data for a matched phrase matcher. Represents information identifying a phrase matcher for a given match.", - "id": "GoogleCloudContactcenterinsightsV1alpha1PhraseMatchData", + "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointConversationMeasureQaTagScore": { + "description": "Average QA normalized score for the tag.", + "id": "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointConversationMeasureQaTagScore", "properties": { - "displayName": { - "description": "The human-readable name of the phrase matcher.", - "type": "string" + "averageTagNormalizedScore": { + "description": "Average tag normalized score per tag.", + "format": "double", + "type": "number" }, - "phraseMatcher": { - "description": "The unique identifier (the resource name) of the phrase matcher.", + "tag": { + "description": "Tag name.", "type": "string" } }, "type": "object" }, + "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceTimeSeries": { + "description": "A time series of metric values.", + "id": "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceTimeSeries", + "properties": { + "dataPoints": { + "description": "The data points that make up the time series .", + "items": { + "$ref": "GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPoint" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudContactcenterinsightsV1alpha1RedactionConfig": { "description": "DLP resources used for redaction while ingesting conversations. DLP settings are applied to conversations ingested from the `UploadConversation` and `IngestConversations` endpoints, including conversation coming from CCAI Platform. They are not applied to conversations ingested from the `CreateConversation` endpoint or the Dialogflow / Agent Assist runtime integrations. When using Dialogflow / Agent Assist runtime integrations, redaction should be performed in Dialogflow / Agent Assist.", "id": "GoogleCloudContactcenterinsightsV1alpha1RedactionConfig", @@ -6452,6 +10113,151 @@ }, "type": "object" }, + "GoogleIamV1AuditConfig": { + "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging.", + "id": "GoogleIamV1AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.", + "items": { + "$ref": "GoogleIamV1AuditLogConfig" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleIamV1AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions. Example: { \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ logging.", + "id": "GoogleIamV1AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of Binding.members.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ], + "enumDescriptions": [ + "Default case. Should never be this.", + "Admin reads. Example: CloudIAM getIamPolicy", + "Data writes. Example: CloudSQL Users create", + "Data reads. Example: CloudSQL Users list" + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleIamV1Binding": { + "description": "Associates `members`, or principals, with a `role`.", + "id": "GoogleIamV1Binding", + "properties": { + "condition": { + "$ref": "GoogleTypeExpr", + "description": "The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies)." + }, + "members": { + "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workforce identity pool. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`: All workforce identities in a group. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All workforce identities with a specific attribute value. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`: All identities in a workforce identity pool. * `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workload identity pool. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool group. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All identities in a workload identity pool with a certain attribute. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`: All identities in a workload identity pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding. * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: Deleted single identity in a workforce identity pool. For example, `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM roles and permissions, see the [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For a list of the available pre-defined roles, see [here](https://cloud.google.com/iam/docs/understanding-roles).", + "type": "string" + } + }, + "type": "object" + }, + "GoogleIamV1Policy": { + "description": "An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** ``` { \"bindings\": [ { \"role\": \"roles/resourcemanager.organizationAdmin\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-project-id@appspot.gserviceaccount.com\" ] }, { \"role\": \"roles/resourcemanager.organizationViewer\", \"members\": [ \"user:eve@example.com\" ], \"condition\": { \"title\": \"expirable access\", \"description\": \"Does not grant access after Sep 2020\", \"expression\": \"request.time < timestamp('2020-10-01T00:00:00.000Z')\", } } ], \"etag\": \"BwWWja0YfJA=\", \"version\": 3 } ``` **YAML example:** ``` bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/).", + "id": "GoogleIamV1Policy", + "properties": { + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "GoogleIamV1AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members`, or principals, with a `role`. Optionally, may specify a `condition` that determines how and when the `bindings` are applied. Each of the `bindings` must contain at least one principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 of these principals can be Google groups. Each occurrence of a principal counts towards these limits. For example, if the `bindings` grant 50 different roles to `user:alice@example.com`, and not to any other principal, then you can add another 1,450 principals to the `bindings` in the `Policy`.", + "items": { + "$ref": "GoogleIamV1Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy. **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Specifies the format of the policy. Valid values are `0`, `1`, and `3`. Requests that specify an invalid value are rejected. Any operation that affects conditional role bindings must specify version `3`. This requirement applies to the following operations: * Getting a policy that includes a conditional role binding * Adding a conditional role binding to a policy * Changing a conditional role binding in a policy * Removing any role binding, with or without a condition, from a policy that includes conditions **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost. If a policy does not include any conditions, operations on that policy may specify any valid version or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleIamV1SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "GoogleIamV1SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "GoogleIamV1Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Google Cloud services (such as Projects) might reject them." + }, + "updateMask": { + "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only the fields in the mask will be modified. If no mask is provided, the following default mask is used: `paths: \"bindings, etag\"`", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GoogleIamV1TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "GoogleIamV1TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with wildcards (such as `*` or `storage.*`) are not allowed. For more information see [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleIamV1TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "GoogleIamV1TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleLongrunningListOperationsResponse": { "description": "The response message for Operations.ListOperations.", "id": "GoogleLongrunningListOperationsResponse", @@ -6537,6 +10343,46 @@ } }, "type": "object" + }, + "GoogleTypeExpr": { + "description": "Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: \"Summary size limit\" description: \"Determines if a summary is less than 100 chars\" expression: \"document.summary.size() < 100\" Example (Equality): title: \"Requestor is owner\" description: \"Determines if requestor is the document owner\" expression: \"document.owner == request.auth.claims.email\" Example (Logic): title: \"Public documents\" description: \"Determine whether the document should be publicly visible\" expression: \"document.type != 'private' && document.type != 'internal'\" Example (Data Manipulation): title: \"Notification string\" description: \"Create a notification string with a timestamp.\" expression: \"'New message received at ' + string(document.create_time)\" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information.", + "id": "GoogleTypeExpr", + "properties": { + "description": { + "description": "Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.", + "type": "string" + }, + "expression": { + "description": "Textual representation of an expression in Common Expression Language syntax.", + "type": "string" + }, + "location": { + "description": "Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.", + "type": "string" + }, + "title": { + "description": "Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleTypeInterval": { + "description": "Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive). The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time.", + "id": "GoogleTypeInterval", + "properties": { + "endTime": { + "description": "Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be before the end.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be the same or after the start.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/EnumStorage/contactcenterinsights.v1.json b/EnumStorage/contactcenterinsights.v1.json index baca7ded058..8d8686cf74e 100644 --- a/EnumStorage/contactcenterinsights.v1.json +++ b/EnumStorage/contactcenterinsights.v1.json @@ -8,6 +8,16 @@ "1", "2" ], + "Google.Apis.Contactcenterinsights.v1.ProjectsResource+LocationsResource+AuthorizedViewSetsResource+AuthorizedViewsResource+ConversationsResource+GetRequest.ViewEnum": [ + "CONVERSATION_VIEW_UNSPECIFIED", + "FULL", + "BASIC" + ], + "Google.Apis.Contactcenterinsights.v1.ProjectsResource+LocationsResource+AuthorizedViewSetsResource+AuthorizedViewsResource+ConversationsResource+ListRequest.ViewEnum": [ + "CONVERSATION_VIEW_UNSPECIFIED", + "FULL", + "BASIC" + ], "Google.Apis.Contactcenterinsights.v1.ProjectsResource+LocationsResource+ConversationsResource+GetRequest.ViewEnum": [ "CONVERSATION_VIEW_UNSPECIFIED", "BASIC", diff --git a/Src/Generated/Google.Apis.Contactcenterinsights.v1/Google.Apis.Contactcenterinsights.v1.cs b/Src/Generated/Google.Apis.Contactcenterinsights.v1/Google.Apis.Contactcenterinsights.v1.cs index ddff771ef7a..6a2c9f41400 100644 --- a/Src/Generated/Google.Apis.Contactcenterinsights.v1/Google.Apis.Contactcenterinsights.v1.cs +++ b/Src/Generated/Google.Apis.Contactcenterinsights.v1/Google.Apis.Contactcenterinsights.v1.cs @@ -292,328 +292,232 @@ public class LocationsResource public LocationsResource(Google.Apis.Services.IClientService service) { this.service = service; + AnalysisRules = new AnalysisRulesResource(service); + AuthorizedViewSet = new AuthorizedViewSetResource(service); + AuthorizedViewSets = new AuthorizedViewSetsResource(service); Conversations = new ConversationsResource(service); EncryptionSpec = new EncryptionSpecResource(service); Insightsdata = new InsightsdataResource(service); IssueModels = new IssueModelsResource(service); Operations = new OperationsResource(service); PhraseMatchers = new PhraseMatchersResource(service); + QaScorecards = new QaScorecardsResource(service); Views = new ViewsResource(service); } - /// Gets the Conversations resource. - public virtual ConversationsResource Conversations { get; } + /// Gets the AnalysisRules resource. + public virtual AnalysisRulesResource AnalysisRules { get; } - /// The "conversations" collection of methods. - public class ConversationsResource + /// The "analysisRules" collection of methods. + public class AnalysisRulesResource { - private const string Resource = "conversations"; + private const string Resource = "analysisRules"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. - public ConversationsResource(Google.Apis.Services.IClientService service) + public AnalysisRulesResource(Google.Apis.Services.IClientService service) { this.service = service; - Analyses = new AnalysesResource(service); } - /// Gets the Analyses resource. - public virtual AnalysesResource Analyses { get; } - - /// The "analyses" collection of methods. - public class AnalysesResource + /// Creates a analysis rule. + /// The body of the request. + /// + /// Required. The parent resource of the analysis rule. Required. The location to create a analysis rule + /// for. Format: `projects//locations/` or `projects//locations/` + /// + public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1AnalysisRule body, string parent) { - private const string Resource = "analyses"; - - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; - - /// Constructs a new resource. - public AnalysesResource(Google.Apis.Services.IClientService service) - { - this.service = service; - } + return new CreateRequest(this.service, body, parent); + } - /// - /// Creates an analysis. The long running operation is done when the analysis has completed. - /// - /// The body of the request. - /// Required. The parent resource of the analysis. - public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Analysis body, string parent) + /// Creates a analysis rule. + public class CreateRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1AnalysisRule body, string parent) : base(service) { - return new CreateRequest(this.service, body, parent); + Parent = parent; + Body = body; + InitParameters(); } /// - /// Creates an analysis. The long running operation is done when the analysis has completed. + /// Required. The parent resource of the analysis rule. Required. The location to create a analysis + /// rule for. Format: `projects//locations/` or `projects//locations/` /// - public class CreateRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new Create request. - public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Analysis body, string parent) : base(service) - { - Parent = parent; - Body = body; - InitParameters(); - } - - /// Required. The parent resource of the analysis. - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } - /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Analysis Body { get; set; } + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1AnalysisRule Body { get; set; } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// Returns the body of the request. + protected override object GetBody() => Body; - /// Gets the method name. - public override string MethodName => "create"; + /// Gets the method name. + public override string MethodName => "create"; - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// Gets the HTTP method. + public override string HttpMethod => "POST"; - /// Gets the REST path. - public override string RestPath => "v1/{+parent}/analyses"; + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/analysisRules"; - /// Initializes Create parameter list. - protected override void InitParameters() + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { - base.InitParameters(); - RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter - { - Name = "parent", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", - }); - } + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); } + } - /// Deletes an analysis. - /// Required. The name of the analysis to delete. - public virtual DeleteRequest Delete(string name) - { - return new DeleteRequest(this.service, name); - } + /// Deletes a analysis rule. + /// Required. The name of the analysis rule to delete. + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(this.service, name); + } - /// Deletes an analysis. - public class DeleteRequest : ContactcenterinsightsBaseServiceRequest + /// Deletes a analysis rule. + public class DeleteRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) { - /// Constructs a new Delete request. - public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) - { - Name = name; - InitParameters(); - } + Name = name; + InitParameters(); + } - /// Required. The name of the analysis to delete. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// Required. The name of the analysis rule to delete. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } - /// Gets the method name. - public override string MethodName => "delete"; + /// Gets the method name. + public override string MethodName => "delete"; - /// Gets the HTTP method. - public override string HttpMethod => "DELETE"; + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; - /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; - /// Initializes Delete parameter list. - protected override void InitParameters() + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter - { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+/analyses/[^/]+$", - }); - } + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/analysisRules/[^/]+$", + }); } + } - /// Gets an analysis. - /// Required. The name of the analysis to get. - public virtual GetRequest Get(string name) - { - return new GetRequest(this.service, name); - } + /// Get a analysis rule. + /// Required. The name of the AnalysisRule to get. + public virtual GetRequest Get(string name) + { + return new GetRequest(this.service, name); + } - /// Gets an analysis. - public class GetRequest : ContactcenterinsightsBaseServiceRequest + /// Get a analysis rule. + public class GetRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) - { - Name = name; - InitParameters(); - } + Name = name; + InitParameters(); + } - /// Required. The name of the analysis to get. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// Required. The name of the AnalysisRule to get. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } - /// Gets the method name. - public override string MethodName => "get"; + /// Gets the method name. + public override string MethodName => "get"; - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + /// Gets the HTTP method. + public override string HttpMethod => "GET"; - /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; - /// Initializes Get parameter list. - protected override void InitParameters() + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter - { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+/analyses/[^/]+$", - }); - } + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/analysisRules/[^/]+$", + }); } + } - /// Lists analyses. - /// Required. The parent resource of the analyses. - public virtual ListRequest List(string parent) - { - return new ListRequest(this.service, parent); - } + /// Lists analysis rules. + /// Required. The parent resource of the analysis rules. + public virtual ListRequest List(string parent) + { + return new ListRequest(this.service, parent); + } - /// Lists analyses. - public class ListRequest : ContactcenterinsightsBaseServiceRequest + /// Lists analysis rules. + public class ListRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) { - /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) - { - Parent = parent; - InitParameters(); - } + Parent = parent; + InitParameters(); + } - /// Required. The parent resource of the analyses. - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } + /// Required. The parent resource of the analysis rules. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } - /// - /// A filter to reduce results to a specific subset. Useful for querying conversations with - /// specific properties. - /// - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - - /// - /// The maximum number of analyses to return in the response. If this value is zero, the service - /// will select a default size. A call might return fewer objects than requested. A non-empty - /// `next_page_token` in the response indicates that more data is available. - /// - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - - /// - /// The value returned by the last `ListAnalysesResponse`; indicates that this is a continuation - /// of a prior `ListAnalyses` call and the system should return the next page of data. - /// - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// Gets the method name. - public override string MethodName => "list"; - - /// Gets the HTTP method. - public override string HttpMethod => "GET"; - - /// Gets the REST path. - public override string RestPath => "v1/{+parent}/analyses"; - - /// Initializes List parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter - { - Name = "parent", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", - }); - RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter - { - Name = "filter", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter - { - Name = "pageSize", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter - { - Name = "pageToken", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - } - } - - /// Analyzes multiple conversations in a single request. - /// The body of the request. - /// Required. The parent resource to create analyses in. - public virtual BulkAnalyzeRequest BulkAnalyze(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest body, string parent) - { - return new BulkAnalyzeRequest(this.service, body, parent); - } - - /// Analyzes multiple conversations in a single request. - public class BulkAnalyzeRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new BulkAnalyze request. - public BulkAnalyzeRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest body, string parent) : base(service) - { - Parent = parent; - Body = body; - InitParameters(); - } - - /// Required. The parent resource to create analyses in. - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } - - /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest Body { get; set; } + /// + /// Optional. The maximum number of analysis rule to return in the response. If this value is zero, + /// the service will select a default size. A call may return fewer objects than requested. A + /// non-empty `next_page_token` in the response indicates that more data is available. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// + /// Optional. The value returned by the last `ListAnalysisRulesResponse`; indicates that this is a + /// continuation of a prior `ListAnalysisRules` call and the system should return the next page of + /// data. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } /// Gets the method name. - public override string MethodName => "bulkAnalyze"; + public override string MethodName => "list"; /// Gets the HTTP method. - public override string HttpMethod => "POST"; + public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "v1/{+parent}/conversations:bulkAnalyze"; + public override string RestPath => "v1/{+parent}/analysisRules"; - /// Initializes BulkAnalyze parameter list. + /// Initializes List parameter list. protected override void InitParameters() { base.InitParameters(); @@ -625,872 +529,2043 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"^projects/[^/]+/locations/[^/]+$", }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } - /// Deletes multiple conversations in a single request. + /// Updates a analysis rule. /// The body of the request. - /// - /// Required. The parent resource to delete conversations from. Format: - /// projects/{project}/locations/{location} + /// + /// Identifier. The resource name of the analysis rule. Format: + /// projects/{project}/locations/{location}/analysisRules/{analysis_rule} /// - public virtual BulkDeleteRequest BulkDelete(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest body, string parent) + public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1AnalysisRule body, string name) { - return new BulkDeleteRequest(this.service, body, parent); + return new PatchRequest(this.service, body, name); } - /// Deletes multiple conversations in a single request. - public class BulkDeleteRequest : ContactcenterinsightsBaseServiceRequest + /// Updates a analysis rule. + public class PatchRequest : ContactcenterinsightsBaseServiceRequest { - /// Constructs a new BulkDelete request. - public BulkDeleteRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest body, string parent) : base(service) + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1AnalysisRule body, string name) : base(service) { - Parent = parent; + Name = name; Body = body; InitParameters(); } /// - /// Required. The parent resource to delete conversations from. Format: - /// projects/{project}/locations/{location} + /// Identifier. The resource name of the analysis rule. Format: + /// projects/{project}/locations/{location}/analysisRules/{analysis_rule} /// - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// + /// Optional. The list of fields to be updated. If the update_mask is not provided, the update will + /// be applied to all fields. + /// + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest Body { get; set; } + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1AnalysisRule Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "bulkDelete"; + public override string MethodName => "patch"; /// Gets the HTTP method. - public override string HttpMethod => "POST"; + public override string HttpMethod => "PATCH"; /// Gets the REST path. - public override string RestPath => "v1/{+parent}/conversations:bulkDelete"; + public override string RestPath => "v1/{+name}"; - /// Initializes BulkDelete parameter list. + /// Initializes Patch parameter list. protected override void InitParameters() { base.InitParameters(); - RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter { - Name = "parent", + Name = "name", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+/analysisRules/[^/]+$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, }); } } + } - /// Gets conversation statistics. - /// Required. The location of the conversations. - public virtual CalculateStatsRequest CalculateStats(string location) + /// Gets the AuthorizedViewSet resource. + public virtual AuthorizedViewSetResource AuthorizedViewSet { get; } + + /// The "authorizedViewSet" collection of methods. + public class AuthorizedViewSetResource + { + private const string Resource = "authorizedViewSet"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public AuthorizedViewSetResource(Google.Apis.Services.IClientService service) { - return new CalculateStatsRequest(this.service, location); + this.service = service; + AuthorizedView = new AuthorizedViewResource(service); + AuthorizedViews = new AuthorizedViewsResource(service); } - /// Gets conversation statistics. - public class CalculateStatsRequest : ContactcenterinsightsBaseServiceRequest + /// Gets the AuthorizedView resource. + public virtual AuthorizedViewResource AuthorizedView { get; } + + /// The "authorizedView" collection of methods. + public class AuthorizedViewResource { - /// Constructs a new CalculateStats request. - public CalculateStatsRequest(Google.Apis.Services.IClientService service, string location) : base(service) + private const string Resource = "authorizedView"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public AuthorizedViewResource(Google.Apis.Services.IClientService service) { - Location = location; - InitParameters(); + this.service = service; } - /// Required. The location of the conversations. - [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Location { get; private set; } + /// Gets conversation statistics. + /// Required. The location of the conversations. + public virtual CalculateStatsRequest CalculateStats(string location) + { + return new CalculateStatsRequest(this.service, location); + } - /// - /// A filter to reduce results to a specific subset. This field is useful for getting statistics - /// about conversations with specific properties. - /// - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } + /// Gets conversation statistics. + public class CalculateStatsRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new CalculateStats request. + public CalculateStatsRequest(Google.Apis.Services.IClientService service, string location) : base(service) + { + Location = location; + InitParameters(); + } - /// Gets the method name. - public override string MethodName => "calculateStats"; + /// Required. The location of the conversations. + [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Location { get; private set; } - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + /// + /// A filter to reduce results to a specific subset. This field is useful for getting statistics + /// about conversations with specific properties. + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } - /// Gets the REST path. - public override string RestPath => "v1/{+location}/conversations:calculateStats"; + /// Gets the method name. + public override string MethodName => "calculateStats"; - /// Initializes CalculateStats parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("location", new Google.Apis.Discovery.Parameter - { - Name = "location", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+$", - }); - RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter - { - Name = "filter", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - } + /// Gets the HTTP method. + public override string HttpMethod => "GET"; - /// - /// Creates a conversation. Note that this method does not support audio transcription or redaction. Use - /// `conversations.upload` instead. - /// - /// The body of the request. - /// Required. The parent resource of the conversation. - public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation body, string parent) - { - return new CreateRequest(this.service, body, parent); - } + /// Gets the REST path. + public override string RestPath => "v1/{+location}:calculateStats"; - /// - /// Creates a conversation. Note that this method does not support audio transcription or redaction. Use - /// `conversations.upload` instead. - /// - public class CreateRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new Create request. - public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation body, string parent) : base(service) + /// Initializes CalculateStats parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("location", new Google.Apis.Discovery.Parameter + { + Name = "location", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSet/[^/]+/authorizedView/[^/]+$", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Query metrics. + /// The body of the request. + /// + /// Required. The location of the data. "projects/{project}/locations/{location}" + /// + public virtual QueryMetricsRequest QueryMetrics(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QueryMetricsRequest body, string location) { - Parent = parent; - Body = body; - InitParameters(); + return new QueryMetricsRequest(this.service, body, location); } - /// Required. The parent resource of the conversation. - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } + /// Query metrics. + public class QueryMetricsRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new QueryMetrics request. + public QueryMetricsRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QueryMetricsRequest body, string location) : base(service) + { + Location = location; + Body = body; + InitParameters(); + } - /// - /// A unique ID for the new conversation. This ID will become the final component of the - /// conversation's resource name. If no ID is specified, a server-generated ID will be used. This - /// value should be 4-64 characters and must match the regular expression `^[a-z0-9-]{4,64}$`. Valid - /// characters are `a-z-` - /// - [Google.Apis.Util.RequestParameterAttribute("conversationId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ConversationId { get; set; } + /// + /// Required. The location of the data. "projects/{project}/locations/{location}" + /// + [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Location { get; private set; } - /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation Body { get; set; } + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QueryMetricsRequest Body { get; set; } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// Returns the body of the request. + protected override object GetBody() => Body; - /// Gets the method name. - public override string MethodName => "create"; + /// Gets the method name. + public override string MethodName => "queryMetrics"; - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// Gets the HTTP method. + public override string HttpMethod => "POST"; - /// Gets the REST path. - public override string RestPath => "v1/{+parent}/conversations"; + /// Gets the REST path. + public override string RestPath => "v1/{+location}:queryMetrics"; - /// Initializes Create parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter - { - Name = "parent", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+$", - }); - RequestParameters.Add("conversationId", new Google.Apis.Discovery.Parameter + /// Initializes QueryMetrics parameter list. + protected override void InitParameters() { - Name = "conversationId", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); + base.InitParameters(); + RequestParameters.Add("location", new Google.Apis.Discovery.Parameter + { + Name = "location", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSet/[^/]+/authorizedView/[^/]+$", + }); + } } } - /// Deletes a conversation. - /// Required. The name of the conversation to delete. - public virtual DeleteRequest Delete(string name) - { - return new DeleteRequest(this.service, name); - } + /// Gets the AuthorizedViews resource. + public virtual AuthorizedViewsResource AuthorizedViews { get; } - /// Deletes a conversation. - public class DeleteRequest : ContactcenterinsightsBaseServiceRequest + /// The "authorizedViews" collection of methods. + public class AuthorizedViewsResource { - /// Constructs a new Delete request. - public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + private const string Resource = "authorizedViews"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public AuthorizedViewsResource(Google.Apis.Services.IClientService service) { - Name = name; - InitParameters(); + this.service = service; + Conversations = new ConversationsResource(service); } - /// Required. The name of the conversation to delete. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// Gets the Conversations resource. + public virtual ConversationsResource Conversations { get; } - /// - /// If set to true, all of this conversation's analyses will also be deleted. Otherwise, the request - /// will only succeed if the conversation has no analyses. - /// - [Google.Apis.Util.RequestParameterAttribute("force", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable Force { get; set; } + /// The "conversations" collection of methods. + public class ConversationsResource + { + private const string Resource = "conversations"; - /// Gets the method name. - public override string MethodName => "delete"; + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; - /// Gets the HTTP method. - public override string HttpMethod => "DELETE"; + /// Constructs a new resource. + public ConversationsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + FeedbackLabels = new FeedbackLabelsResource(service); + } - /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + /// Gets the FeedbackLabels resource. + public virtual FeedbackLabelsResource FeedbackLabels { get; } - /// Initializes Delete parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter - { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", - }); - RequestParameters.Add("force", new Google.Apis.Discovery.Parameter + /// The "feedbackLabels" collection of methods. + public class FeedbackLabelsResource { - Name = "force", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); + private const string Resource = "feedbackLabels"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public FeedbackLabelsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// Create feedback label. + /// The body of the request. + /// Required. The parent resource of the feedback label. + public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1FeedbackLabel body, string parent) + { + return new CreateRequest(this.service, body, parent); + } + + /// Create feedback label. + public class CreateRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1FeedbackLabel body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// Required. The parent resource of the feedback label. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Optional. The ID of the feedback label to create. If one is not specified it will be + /// generated by the server. + /// + [Google.Apis.Util.RequestParameterAttribute("feedbackLabelId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string FeedbackLabelId { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1FeedbackLabel Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "create"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/feedbackLabels"; + + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSet/[^/]+/authorizedViews/[^/]+/conversations/[^/]+$", + }); + RequestParameters.Add("feedbackLabelId", new Google.Apis.Discovery.Parameter + { + Name = "feedbackLabelId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Delete feedback label. + /// Required. The name of the feedback label to delete. + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(this.service, name); + } + + /// Delete feedback label. + public class DeleteRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the feedback label to delete. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSet/[^/]+/authorizedViews/[^/]+/conversations/[^/]+/feedbackLabels/[^/]+$", + }); + } + } + + /// Get feedback label. + /// Required. The name of the feedback label to get. + public virtual GetRequest Get(string name) + { + return new GetRequest(this.service, name); + } + + /// Get feedback label. + public class GetRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the feedback label to get. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSet/[^/]+/authorizedViews/[^/]+/conversations/[^/]+/feedbackLabels/[^/]+$", + }); + } + } + + /// List feedback labels. + /// Required. The parent resource of the feedback labels. + public virtual ListRequest List(string parent) + { + return new ListRequest(this.service, parent); + } + + /// List feedback labels. + public class ListRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } + + /// Required. The parent resource of the feedback labels. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Optional. A filter to reduce results to a specific subset. Supports disjunctions + /// (OR) and conjunctions (AND). Automatically sorts by conversation ID. To sort by all + /// feedback labels in a project see ListAllFeedbackLabels. Supported fields: * + /// `issue_model_id` * `qa_question_id` * `qa_scorecard_id` * `min_create_time` * + /// `max_create_time` * `min_update_time` * `max_update_time` * `feedback_label_type`: + /// QUALITY_AI, TOPIC_MODELING + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + + /// + /// Optional. The maximum number of feedback labels to return in the response. A valid + /// page size ranges from 0 to 100,000 inclusive. If the page size is zero or + /// unspecified, a default page size of 100 will be chosen. Note that a call might + /// return fewer results than the requested page size. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// Optional. The value returned by the last `ListFeedbackLabelsResponse`. This value + /// indicates that this is a continuation of a prior `ListFeedbackLabels` call and that + /// the system should return the next page of data. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/feedbackLabels"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSet/[^/]+/authorizedViews/[^/]+/conversations/[^/]+$", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Update feedback label. + /// The body of the request. + /// + /// Immutable. Resource name of the FeedbackLabel. Format: + /// projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label} + /// + public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1FeedbackLabel body, string name) + { + return new PatchRequest(this.service, body, name); + } + + /// Update feedback label. + public class PatchRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1FeedbackLabel body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Immutable. Resource name of the FeedbackLabel. Format: + /// projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label} + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Required. The list of fields to be updated. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1FeedbackLabel Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSet/[^/]+/authorizedViews/[^/]+/conversations/[^/]+/feedbackLabels/[^/]+$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } } } + } - /// Gets a conversation. - /// Required. The name of the conversation to get. - public virtual GetRequest Get(string name) + /// Gets the AuthorizedViewSets resource. + public virtual AuthorizedViewSetsResource AuthorizedViewSets { get; } + + /// The "authorizedViewSets" collection of methods. + public class AuthorizedViewSetsResource + { + private const string Resource = "authorizedViewSets"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public AuthorizedViewSetsResource(Google.Apis.Services.IClientService service) { - return new GetRequest(this.service, name); + this.service = service; + AuthorizedViews = new AuthorizedViewsResource(service); } - /// Gets a conversation. - public class GetRequest : ContactcenterinsightsBaseServiceRequest + /// Gets the AuthorizedViews resource. + public virtual AuthorizedViewsResource AuthorizedViews { get; } + + /// The "authorizedViews" collection of methods. + public class AuthorizedViewsResource { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + private const string Resource = "authorizedViews"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public AuthorizedViewsResource(Google.Apis.Services.IClientService service) { - Name = name; - InitParameters(); + this.service = service; + Conversations = new ConversationsResource(service); + Operations = new OperationsResource(service); } - /// Required. The name of the conversation to get. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } - - /// The level of details of the conversation. Default is `FULL`. - [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable View { get; set; } + /// Gets the Conversations resource. + public virtual ConversationsResource Conversations { get; } - /// The level of details of the conversation. Default is `FULL`. - public enum ViewEnum + /// The "conversations" collection of methods. + public class ConversationsResource { - /// - /// The conversation view is not specified. * Defaults to `FULL` in `GetConversationRequest`. * - /// Defaults to `BASIC` in `ListConversationsRequest`. - /// - [Google.Apis.Util.StringValueAttribute("CONVERSATION_VIEW_UNSPECIFIED")] - CONVERSATIONVIEWUNSPECIFIED = 0, + private const string Resource = "conversations"; - /// Populates all fields in the conversation. - [Google.Apis.Util.StringValueAttribute("FULL")] - FULL = 2, + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; - /// Populates all fields in the conversation except the transcript. - [Google.Apis.Util.StringValueAttribute("BASIC")] - BASIC = 1, - } + /// Constructs a new resource. + public ConversationsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + Analyses = new AnalysesResource(service); + } - /// Gets the method name. - public override string MethodName => "get"; + /// Gets the Analyses resource. + public virtual AnalysesResource Analyses { get; } - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + /// The "analyses" collection of methods. + public class AnalysesResource + { + private const string Resource = "analyses"; - /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; - /// Initializes Get parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + /// Constructs a new resource. + public AnalysesResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// + /// Creates an analysis. The long running operation is done when the analysis has completed. + /// + /// The body of the request. + /// Required. The parent resource of the analysis. + public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Analysis body, string parent) + { + return new CreateRequest(this.service, body, parent); + } + + /// + /// Creates an analysis. The long running operation is done when the analysis has completed. + /// + public class CreateRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Analysis body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// Required. The parent resource of the analysis. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Analysis Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "create"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/analyses"; + + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/conversations/[^/]+$", + }); + } + } + + /// Deletes an analysis. + /// Required. The name of the analysis to delete. + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(this.service, name); + } + + /// Deletes an analysis. + public class DeleteRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the analysis to delete. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/conversations/[^/]+/analyses/[^/]+$", + }); + } + } + + /// Gets an analysis. + /// Required. The name of the analysis to get. + public virtual GetRequest Get(string name) + { + return new GetRequest(this.service, name); + } + + /// Gets an analysis. + public class GetRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the analysis to get. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/conversations/[^/]+/analyses/[^/]+$", + }); + } + } + + /// Lists analyses. + /// Required. The parent resource of the analyses. + public virtual ListRequest List(string parent) + { + return new ListRequest(this.service, parent); + } + + /// Lists analyses. + public class ListRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } + + /// Required. The parent resource of the analyses. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// A filter to reduce results to a specific subset. Useful for querying conversations + /// with specific properties. + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + + /// + /// The maximum number of analyses to return in the response. If this value is zero, the + /// service will select a default size. A call might return fewer objects than + /// requested. A non-empty `next_page_token` in the response indicates that more data is + /// available. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// The value returned by the last `ListAnalysesResponse`; indicates that this is a + /// continuation of a prior `ListAnalyses` call and the system should return the next + /// page of data. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/analyses"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/conversations/[^/]+$", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// + /// Creates a conversation. Note that this method does not support audio transcription or + /// redaction. Use `conversations.upload` instead. + /// + /// The body of the request. + /// Required. The parent resource of the conversation. + public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation body, string parent) { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", - }); - RequestParameters.Add("view", new Google.Apis.Discovery.Parameter + return new CreateRequest(this.service, body, parent); + } + + /// + /// Creates a conversation. Note that this method does not support audio transcription or + /// redaction. Use `conversations.upload` instead. + /// + public class CreateRequest : ContactcenterinsightsBaseServiceRequest { - Name = "view", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - } + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } - /// Imports conversations and processes them according to the user's configuration. - /// The body of the request. - /// Required. The parent resource for new conversations. - public virtual IngestRequest Ingest(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IngestConversationsRequest body, string parent) - { - return new IngestRequest(this.service, body, parent); - } + /// Required. The parent resource of the conversation. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } - /// Imports conversations and processes them according to the user's configuration. - public class IngestRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new Ingest request. - public IngestRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IngestConversationsRequest body, string parent) : base(service) - { - Parent = parent; - Body = body; - InitParameters(); - } + /// + /// A unique ID for the new conversation. This ID will become the final component of the + /// conversation's resource name. If no ID is specified, a server-generated ID will be used. + /// This value should be 4-64 characters and must match the regular expression + /// `^[a-z0-9-]{4,64}$`. Valid characters are `a-z-` + /// + [Google.Apis.Util.RequestParameterAttribute("conversationId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ConversationId { get; set; } - /// Required. The parent resource for new conversations. - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation Body { get; set; } - /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IngestConversationsRequest Body { get; set; } + /// Returns the body of the request. + protected override object GetBody() => Body; - /// Returns the body of the request. - protected override object GetBody() => Body; + /// Gets the method name. + public override string MethodName => "create"; - /// Gets the method name. - public override string MethodName => "ingest"; + /// Gets the HTTP method. + public override string HttpMethod => "POST"; - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/conversations"; - /// Gets the REST path. - public override string RestPath => "v1/{+parent}/conversations:ingest"; + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+$", + }); + RequestParameters.Add("conversationId", new Google.Apis.Discovery.Parameter + { + Name = "conversationId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } - /// Initializes Ingest parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + /// Deletes a conversation. + /// Required. The name of the conversation to delete. + public virtual DeleteRequest Delete(string name) { - Name = "parent", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+$", - }); - } - } + return new DeleteRequest(this.service, name); + } - /// Lists conversations. - /// Required. The parent resource of the conversation. - public virtual ListRequest List(string parent) - { - return new ListRequest(this.service, parent); - } + /// Deletes a conversation. + public class DeleteRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } - /// Lists conversations. - public class ListRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) - { - Parent = parent; - InitParameters(); - } + /// Required. The name of the conversation to delete. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } - /// Required. The parent resource of the conversation. - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } + /// + /// If set to true, all of this conversation's analyses will also be deleted. Otherwise, the + /// request will only succeed if the conversation has no analyses. + /// + [Google.Apis.Util.RequestParameterAttribute("force", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Force { get; set; } - /// - /// A filter to reduce results to a specific subset. Useful for querying conversations with specific - /// properties. - /// - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } + /// Gets the method name. + public override string MethodName => "delete"; - /// - /// Optional. The attribute by which to order conversations in the response. If empty, conversations - /// will be ordered by descending creation time. Supported values are one of the following: * - /// create_time * customer_satisfaction_rating * duration * latest_analysis * start_time * - /// turn_count The default sort order is ascending. To specify order, append `asc` or `desc` - /// (`create_time desc`). For more details, see [Google AIPs - /// Ordering](https://google.aip.dev/132#ordering). - /// - [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] - public virtual string OrderBy { get; set; } + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; - /// - /// The maximum number of conversations to return in the response. A valid page size ranges from 0 - /// to 100,000 inclusive. If the page size is zero or unspecified, a default page size of 100 will - /// be chosen. Note that a call might return fewer results than the requested page size. - /// - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; - /// - /// The value returned by the last `ListConversationsResponse`. This value indicates that this is a - /// continuation of a prior `ListConversations` call and that the system should return the next page - /// of data. - /// - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/conversations/[^/]+$", + }); + RequestParameters.Add("force", new Google.Apis.Discovery.Parameter + { + Name = "force", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } - /// The level of details of the conversation. Default is `BASIC`. - [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable View { get; set; } + /// Gets a conversation. + /// Required. The name of the conversation to get. + public virtual GetRequest Get(string name) + { + return new GetRequest(this.service, name); + } - /// The level of details of the conversation. Default is `BASIC`. - public enum ViewEnum - { - /// - /// The conversation view is not specified. * Defaults to `FULL` in `GetConversationRequest`. * - /// Defaults to `BASIC` in `ListConversationsRequest`. - /// - [Google.Apis.Util.StringValueAttribute("CONVERSATION_VIEW_UNSPECIFIED")] - CONVERSATIONVIEWUNSPECIFIED = 0, + /// Gets a conversation. + public class GetRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } - /// Populates all fields in the conversation. - [Google.Apis.Util.StringValueAttribute("FULL")] - FULL = 2, + /// Required. The name of the conversation to get. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } - /// Populates all fields in the conversation except the transcript. - [Google.Apis.Util.StringValueAttribute("BASIC")] - BASIC = 1, - } + /// The level of details of the conversation. Default is `FULL`. + [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable View { get; set; } - /// Gets the method name. - public override string MethodName => "list"; + /// The level of details of the conversation. Default is `FULL`. + public enum ViewEnum + { + /// + /// The conversation view is not specified. * Defaults to `FULL` in + /// `GetConversationRequest`. * Defaults to `BASIC` in `ListConversationsRequest`. + /// + [Google.Apis.Util.StringValueAttribute("CONVERSATION_VIEW_UNSPECIFIED")] + CONVERSATIONVIEWUNSPECIFIED = 0, - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + /// Populates all fields in the conversation. + [Google.Apis.Util.StringValueAttribute("FULL")] + FULL = 1, - /// Gets the REST path. - public override string RestPath => "v1/{+parent}/conversations"; + /// Populates all fields in the conversation except the transcript. + [Google.Apis.Util.StringValueAttribute("BASIC")] + BASIC = 2, + } - /// Initializes List parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/conversations/[^/]+$", + }); + RequestParameters.Add("view", new Google.Apis.Discovery.Parameter + { + Name = "view", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Lists conversations. + /// Required. The parent resource of the conversation. + public virtual ListRequest List(string parent) { - Name = "parent", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+$", - }); - RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + return new ListRequest(this.service, parent); + } + + /// Lists conversations. + public class ListRequest : ContactcenterinsightsBaseServiceRequest { - Name = "filter", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("orderBy", new Google.Apis.Discovery.Parameter + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } + + /// Required. The parent resource of the conversation. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// A filter to reduce results to a specific subset. Useful for querying conversations with + /// specific properties. + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + + /// + /// Optional. The attribute by which to order conversations in the response. If empty, + /// conversations will be ordered by descending creation time. Supported values are one of + /// the following: * create_time * customer_satisfaction_rating * duration * latest_analysis + /// * start_time * turn_count The default sort order is ascending. To specify order, append + /// `asc` or `desc` (`create_time desc`). For more details, see [Google AIPs + /// Ordering](https://google.aip.dev/132#ordering). + /// + [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OrderBy { get; set; } + + /// + /// The maximum number of conversations to return in the response. A valid page size ranges + /// from 0 to 100,000 inclusive. If the page size is zero or unspecified, a default page + /// size of 100 will be chosen. Note that a call might return fewer results than the + /// requested page size. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// The value returned by the last `ListConversationsResponse`. This value indicates that + /// this is a continuation of a prior `ListConversations` call and that the system should + /// return the next page of data. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// The level of details of the conversation. Default is `BASIC`. + [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable View { get; set; } + + /// The level of details of the conversation. Default is `BASIC`. + public enum ViewEnum + { + /// + /// The conversation view is not specified. * Defaults to `FULL` in + /// `GetConversationRequest`. * Defaults to `BASIC` in `ListConversationsRequest`. + /// + [Google.Apis.Util.StringValueAttribute("CONVERSATION_VIEW_UNSPECIFIED")] + CONVERSATIONVIEWUNSPECIFIED = 0, + + /// Populates all fields in the conversation. + [Google.Apis.Util.StringValueAttribute("FULL")] + FULL = 1, + + /// Populates all fields in the conversation except the transcript. + [Google.Apis.Util.StringValueAttribute("BASIC")] + BASIC = 2, + } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/conversations"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+$", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("orderBy", new Google.Apis.Discovery.Parameter + { + Name = "orderBy", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("view", new Google.Apis.Discovery.Parameter + { + Name = "view", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Updates a conversation. + /// The body of the request. + /// + /// Immutable. The resource name of the conversation. Format: + /// projects/{project}/locations/{location}/conversations/{conversation} + /// + public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation body, string name) { - Name = "orderBy", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + return new PatchRequest(this.service, body, name); + } + + /// Updates a conversation. + public class PatchRequest : ContactcenterinsightsBaseServiceRequest { - Name = "pageSize", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Immutable. The resource name of the conversation. Format: + /// projects/{project}/locations/{location}/conversations/{conversation} + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// + /// The list of fields to be updated. All possible fields can be updated by passing `*`, or + /// a subset of the following updateable fields can be provided: * `agent_id` * + /// `language_code` * `labels` * `metadata` * `quality_metadata` * `call_metadata` * + /// `start_time` * `expire_time` or `ttl` * `data_source.gcs_source.audio_uri` or + /// `data_source.dialogflow_source.audio_uri` + /// + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/conversations/[^/]+$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Create a long-running conversation upload operation. This method differs from + /// `CreateConversation` by allowing audio transcription and optional DLP redaction. + /// + /// The body of the request. + /// Required. The parent resource of the conversation. + public virtual UploadRequest Upload(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation body, string parent) { - Name = "pageToken", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("view", new Google.Apis.Discovery.Parameter + return new UploadRequest(this.service, body, parent); + } + + /// + /// Create a long-running conversation upload operation. This method differs from + /// `CreateConversation` by allowing audio transcription and optional DLP redaction. + /// + public class UploadRequest : ContactcenterinsightsBaseServiceRequest { - Name = "view", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); + /// Constructs a new Upload request. + public UploadRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// Required. The parent resource of the conversation. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Optional. A unique ID for the new conversation. This ID will become the final component + /// of the conversation's resource name. If no ID is specified, a server-generated ID will + /// be used. This value should be 4-64 characters and must match the regular expression + /// `^[a-z0-9-]{4,64}$`. Valid characters are `a-z-` + /// + [Google.Apis.Util.RequestParameterAttribute("conversationId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ConversationId { get; set; } + + /// + /// The fully-qualified DLP deidentify template resource name. Format: + /// `projects/{project}/deidentifyTemplates/{template}` + /// + [Google.Apis.Util.RequestParameterAttribute("redactionConfig.deidentifyTemplate", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RedactionConfigDeidentifyTemplate { get; set; } + + /// + /// The fully-qualified DLP inspect template resource name. Format: + /// `projects/{project}/locations/{location}/inspectTemplates/{template}` + /// + [Google.Apis.Util.RequestParameterAttribute("redactionConfig.inspectTemplate", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RedactionConfigInspectTemplate { get; set; } + + /// + /// The fully-qualified Speech Recognizer resource name. Format: + /// `projects/{project_id}/locations/{location}/recognizer/{recognizer}` + /// + [Google.Apis.Util.RequestParameterAttribute("speechConfig.speechRecognizer", Google.Apis.Util.RequestParameterType.Query)] + public virtual string SpeechConfigSpeechRecognizer { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "upload"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/conversations:upload"; + + /// Initializes Upload parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+$", + }); + RequestParameters.Add("conversationId", new Google.Apis.Discovery.Parameter + { + Name = "conversationId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("redactionConfig.deidentifyTemplate", new Google.Apis.Discovery.Parameter + { + Name = "redactionConfig.deidentifyTemplate", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("redactionConfig.inspectTemplate", new Google.Apis.Discovery.Parameter + { + Name = "redactionConfig.inspectTemplate", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("speechConfig.speechRecognizer", new Google.Apis.Discovery.Parameter + { + Name = "speechConfig.speechRecognizer", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } } - } - /// Updates a conversation. - /// The body of the request. - /// - /// Immutable. The resource name of the conversation. Format: - /// projects/{project}/locations/{location}/conversations/{conversation} - /// - public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation body, string name) - { - return new PatchRequest(this.service, body, name); - } + /// Gets the Operations resource. + public virtual OperationsResource Operations { get; } - /// Updates a conversation. - public class PatchRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new Patch request. - public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation body, string name) : base(service) + /// The "operations" collection of methods. + public class OperationsResource { - Name = name; - Body = body; - InitParameters(); - } + private const string Resource = "operations"; - /// - /// Immutable. The resource name of the conversation. Format: - /// projects/{project}/locations/{location}/conversations/{conversation} - /// - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; - /// - /// The list of fields to be updated. All possible fields can be updated by passing `*`, or a subset - /// of the following updateable fields can be provided: * `agent_id` * `language_code` * `labels` * - /// `metadata` * `quality_metadata` * `call_metadata` * `start_time` * `expire_time` or `ttl` * - /// `data_source.gcs_source.audio_uri` or `data_source.dialogflow_source.audio_uri` - /// - [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object UpdateMask { get; set; } + /// Constructs a new resource. + public OperationsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } - /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation Body { get; set; } + /// + /// Starts asynchronous cancellation on a long-running operation. The server makes a best effort + /// to cancel the operation, but success is not guaranteed. If the server doesn't support this + /// method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation + /// or other methods to check whether the cancellation succeeded or whether the operation + /// completed despite cancellation. On successful cancellation, the operation is not deleted; + /// instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code + /// of 1, corresponding to `Code.CANCELLED`. + /// + /// The name of the operation resource to be cancelled. + public virtual CancelRequest Cancel(string name) + { + return new CancelRequest(this.service, name); + } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// + /// Starts asynchronous cancellation on a long-running operation. The server makes a best effort + /// to cancel the operation, but success is not guaranteed. If the server doesn't support this + /// method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation + /// or other methods to check whether the cancellation succeeded or whether the operation + /// completed despite cancellation. On successful cancellation, the operation is not deleted; + /// instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code + /// of 1, corresponding to `Code.CANCELLED`. + /// + public class CancelRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Cancel request. + public CancelRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } - /// Gets the method name. - public override string MethodName => "patch"; + /// The name of the operation resource to be cancelled. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } - /// Gets the HTTP method. - public override string HttpMethod => "PATCH"; + /// Gets the method name. + public override string MethodName => "cancel"; - /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + /// Gets the HTTP method. + public override string HttpMethod => "POST"; - /// Initializes Patch parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + /// Gets the REST path. + public override string RestPath => "v1/{+name}:cancel"; + + /// Initializes Cancel parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/operations/[^/]+$", + }); + } + } + + /// + /// Gets the latest state of a long-running operation. Clients can use this method to poll the + /// operation result at intervals as recommended by the API service. + /// + /// The name of the operation resource. + public virtual GetRequest Get(string name) { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", - }); - RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + return new GetRequest(this.service, name); + } + + /// + /// Gets the latest state of a long-running operation. Clients can use this method to poll the + /// operation result at intervals as recommended by the API service. + /// + public class GetRequest : ContactcenterinsightsBaseServiceRequest { - Name = "updateMask", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - } + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } - /// - /// Create a long-running conversation upload operation. This method differs from `CreateConversation` - /// by allowing audio transcription and optional DLP redaction. - /// - /// The body of the request. - /// Required. The parent resource of the conversation. - public virtual UploadRequest Upload(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UploadConversationRequest body, string parent) - { - return new UploadRequest(this.service, body, parent); - } + /// The name of the operation resource. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } - /// - /// Create a long-running conversation upload operation. This method differs from `CreateConversation` - /// by allowing audio transcription and optional DLP redaction. - /// - public class UploadRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new Upload request. - public UploadRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UploadConversationRequest body, string parent) : base(service) - { - Parent = parent; - Body = body; - InitParameters(); - } + /// Gets the method name. + public override string MethodName => "get"; - /// Required. The parent resource of the conversation. - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } + /// Gets the HTTP method. + public override string HttpMethod => "GET"; - /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UploadConversationRequest Body { get; set; } + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; - /// Returns the body of the request. - protected override object GetBody() => Body; + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+/operations/[^/]+$", + }); + } + } - /// Gets the method name. - public override string MethodName => "upload"; + /// + /// Lists operations that match the specified filter in the request. If the server doesn't + /// support this method, it returns `UNIMPLEMENTED`. + /// + /// The name of the operation's parent resource. + public virtual ListRequest List(string name) + { + return new ListRequest(this.service, name); + } - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// + /// Lists operations that match the specified filter in the request. If the server doesn't + /// support this method, it returns `UNIMPLEMENTED`. + /// + public class ListRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } - /// Gets the REST path. - public override string RestPath => "v1/{+parent}/conversations:upload"; + /// The name of the operation's parent resource. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } - /// Initializes Upload parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter - { - Name = "parent", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+$", - }); - } - } - } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } - /// Gets the EncryptionSpec resource. - public virtual EncryptionSpecResource EncryptionSpec { get; } + /// The standard list page size. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } - /// The "encryptionSpec" collection of methods. - public class EncryptionSpecResource - { - private const string Resource = "encryptionSpec"; + /// The standard list page token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; + /// Gets the method name. + public override string MethodName => "list"; - /// Constructs a new resource. - public EncryptionSpecResource(Google.Apis.Services.IClientService service) - { - this.service = service; - } + /// Gets the HTTP method. + public override string HttpMethod => "GET"; - /// - /// Initializes a location-level encryption key specification. An error will result if the location has - /// resources already created before the initialization. After the encryption specification is - /// initialized at a location, it is immutable and all newly created resources under the location will - /// be encrypted with the existing specification. - /// - /// The body of the request. - /// - /// Immutable. The resource name of the encryption key specification resource. Format: - /// projects/{project}/locations/{location}/encryptionSpec - /// - public virtual InitializeRequest Initialize(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest body, string name) - { - return new InitializeRequest(this.service, body, name); - } + /// Gets the REST path. + public override string RestPath => "v1/{+name}/operations"; - /// - /// Initializes a location-level encryption key specification. An error will result if the location has - /// resources already created before the initialization. After the encryption specification is - /// initialized at a location, it is immutable and all newly created resources under the location will - /// be encrypted with the existing specification. - /// - public class InitializeRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new Initialize request. - public InitializeRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest body, string name) : base(service) + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+$", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// + /// Gets the access control policy for a resource. Returns an empty policy if the resource exists + /// and does not have a policy set. + /// + /// + /// REQUIRED: The resource for which the policy is being requested. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this + /// field. + /// + public virtual GetIamPolicyRequest GetIamPolicy(string resource) { - Name = name; - Body = body; - InitParameters(); + return new GetIamPolicyRequest(this.service, resource); } /// - /// Immutable. The resource name of the encryption key specification resource. Format: - /// projects/{project}/locations/{location}/encryptionSpec + /// Gets the access control policy for a resource. Returns an empty policy if the resource exists + /// and does not have a policy set. /// - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + public class GetIamPolicyRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new GetIamPolicy request. + public GetIamPolicyRequest(Google.Apis.Services.IClientService service, string resource) : base(service) + { + Resource = resource; + InitParameters(); + } - /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest Body { get; set; } + /// + /// REQUIRED: The resource for which the policy is being requested. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for + /// this field. + /// + [Google.Apis.Util.RequestParameterAttribute("resource", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Resource { get; private set; } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// + /// Optional. The maximum policy version that will be used to format the policy. Valid values + /// are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for + /// policies with any conditional role bindings must specify version 3. Policies with no + /// conditional role bindings may specify any valid value or leave the field unset. The policy + /// in the response might use the policy version that you specified, or it might use a lower + /// policy version. For example, if you specify version 3, but the policy has no conditional + /// role bindings, the response uses version 1. To learn which resources support conditions in + /// their IAM policies, see the [IAM + /// documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + /// + [Google.Apis.Util.RequestParameterAttribute("options.requestedPolicyVersion", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable OptionsRequestedPolicyVersion { get; set; } - /// Gets the method name. - public override string MethodName => "initialize"; + /// Gets the method name. + public override string MethodName => "getIamPolicy"; - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// Gets the HTTP method. + public override string HttpMethod => "GET"; - /// Gets the REST path. - public override string RestPath => "v1/{+name}:initialize"; + /// Gets the REST path. + public override string RestPath => "v1/{+resource}:getIamPolicy"; - /// Initializes Initialize parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + /// Initializes GetIamPolicy parameter list. + protected override void InitParameters() { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/encryptionSpec$", - }); + base.InitParameters(); + RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter + { + Name = "resource", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+$", + }); + RequestParameters.Add("options.requestedPolicyVersion", new Google.Apis.Discovery.Parameter + { + Name = "options.requestedPolicyVersion", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } } - } - } - - /// Gets the Insightsdata resource. - public virtual InsightsdataResource Insightsdata { get; } - /// The "insightsdata" collection of methods. - public class InsightsdataResource - { - private const string Resource = "insightsdata"; + /// + /// Sets the access control policy on the specified resource. Replaces any existing policy. Can + /// return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + /// + /// The body of the request. + /// + /// REQUIRED: The resource for which the policy is being specified. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this + /// field. + /// + public virtual SetIamPolicyRequest SetIamPolicy(Google.Apis.Contactcenterinsights.v1.Data.GoogleIamV1SetIamPolicyRequest body, string resource) + { + return new SetIamPolicyRequest(this.service, body, resource); + } - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; + /// + /// Sets the access control policy on the specified resource. Replaces any existing policy. Can + /// return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + /// + public class SetIamPolicyRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new SetIamPolicy request. + public SetIamPolicyRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleIamV1SetIamPolicyRequest body, string resource) : base(service) + { + Resource = resource; + Body = body; + InitParameters(); + } - /// Constructs a new resource. - public InsightsdataResource(Google.Apis.Services.IClientService service) - { - this.service = service; - } + /// + /// REQUIRED: The resource for which the policy is being specified. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for + /// this field. + /// + [Google.Apis.Util.RequestParameterAttribute("resource", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Resource { get; private set; } - /// Export insights data to a destination defined in the request body. - /// The body of the request. - /// Required. The parent resource to export data from. - public virtual ExportRequest Export(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest body, string parent) - { - return new ExportRequest(this.service, body, parent); - } + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleIamV1SetIamPolicyRequest Body { get; set; } - /// Export insights data to a destination defined in the request body. - public class ExportRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new Export request. - public ExportRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest body, string parent) : base(service) + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "setIamPolicy"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+resource}:setIamPolicy"; + + /// Initializes SetIamPolicy parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter + { + Name = "resource", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+$", + }); + } + } + + /// + /// Returns permissions that a caller has on the specified resource. If the resource does not exist, + /// this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is + /// designed to be used for building permission-aware UIs and command-line tools, not for + /// authorization checking. This operation may "fail open" without warning. + /// + /// The body of the request. + /// + /// REQUIRED: The resource for which the policy detail is being requested. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this + /// field. + /// + public virtual TestIamPermissionsRequest TestIamPermissions(Google.Apis.Contactcenterinsights.v1.Data.GoogleIamV1TestIamPermissionsRequest body, string resource) { - Parent = parent; - Body = body; - InitParameters(); + return new TestIamPermissionsRequest(this.service, body, resource); } - /// Required. The parent resource to export data from. - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } + /// + /// Returns permissions that a caller has on the specified resource. If the resource does not exist, + /// this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is + /// designed to be used for building permission-aware UIs and command-line tools, not for + /// authorization checking. This operation may "fail open" without warning. + /// + public class TestIamPermissionsRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new TestIamPermissions request. + public TestIamPermissionsRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleIamV1TestIamPermissionsRequest body, string resource) : base(service) + { + Resource = resource; + Body = body; + InitParameters(); + } - /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest Body { get; set; } + /// + /// REQUIRED: The resource for which the policy detail is being requested. See [Resource + /// names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for + /// this field. + /// + [Google.Apis.Util.RequestParameterAttribute("resource", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Resource { get; private set; } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleIamV1TestIamPermissionsRequest Body { get; set; } - /// Gets the method name. - public override string MethodName => "export"; + /// Returns the body of the request. + protected override object GetBody() => Body; - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// Gets the method name. + public override string MethodName => "testIamPermissions"; - /// Gets the REST path. - public override string RestPath => "v1/{+parent}/insightsdata:export"; + /// Gets the HTTP method. + public override string HttpMethod => "POST"; - /// Initializes Export parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + /// Gets the REST path. + public override string RestPath => "v1/{+resource}:testIamPermissions"; + + /// Initializes TestIamPermissions parameter list. + protected override void InitParameters() { - Name = "parent", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+$", - }); + base.InitParameters(); + RequestParameters.Add("resource", new Google.Apis.Discovery.Parameter + { + Name = "resource", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/authorizedViewSets/[^/]+/authorizedViews/[^/]+$", + }); + } } } } - /// Gets the IssueModels resource. - public virtual IssueModelsResource IssueModels { get; } + /// Gets the Conversations resource. + public virtual ConversationsResource Conversations { get; } - /// The "issueModels" collection of methods. - public class IssueModelsResource + /// The "conversations" collection of methods. + public class ConversationsResource { - private const string Resource = "issueModels"; + private const string Resource = "conversations"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. - public IssueModelsResource(Google.Apis.Services.IClientService service) + public ConversationsResource(Google.Apis.Services.IClientService service) { this.service = service; - Issues = new IssuesResource(service); + Analyses = new AnalysesResource(service); + FeedbackLabels = new FeedbackLabelsResource(service); } - /// Gets the Issues resource. - public virtual IssuesResource Issues { get; } + /// Gets the Analyses resource. + public virtual AnalysesResource Analyses { get; } - /// The "issues" collection of methods. - public class IssuesResource + /// The "analyses" collection of methods. + public class AnalysesResource { - private const string Resource = "issues"; + private const string Resource = "analyses"; /// The service which this resource belongs to. private readonly Google.Apis.Services.IClientService service; /// Constructs a new resource. - public IssuesResource(Google.Apis.Services.IClientService service) + public AnalysesResource(Google.Apis.Services.IClientService service) { this.service = service; } - /// Deletes an issue. - /// Required. The name of the issue to delete. + /// + /// Creates an analysis. The long running operation is done when the analysis has completed. + /// + /// The body of the request. + /// Required. The parent resource of the analysis. + public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Analysis body, string parent) + { + return new CreateRequest(this.service, body, parent); + } + + /// + /// Creates an analysis. The long running operation is done when the analysis has completed. + /// + public class CreateRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Analysis body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// Required. The parent resource of the analysis. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Analysis Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "create"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/analyses"; + + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", + }); + } + } + + /// Deletes an analysis. + /// Required. The name of the analysis to delete. public virtual DeleteRequest Delete(string name) { return new DeleteRequest(this.service, name); } - /// Deletes an issue. + /// Deletes an analysis. public class DeleteRequest : ContactcenterinsightsBaseServiceRequest { /// Constructs a new Delete request. @@ -1500,7 +2575,7 @@ public DeleteRequest(Google.Apis.Services.IClientService service, string name) : InitParameters(); } - /// Required. The name of the issue to delete. + /// Required. The name of the analysis to delete. [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } @@ -1523,20 +2598,20 @@ protected override void InitParameters() IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+/issues/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+/analyses/[^/]+$", }); } } - /// Gets an issue. - /// Required. The name of the issue to get. + /// Gets an analysis. + /// Required. The name of the analysis to get. public virtual GetRequest Get(string name) { return new GetRequest(this.service, name); } - /// Gets an issue. - public class GetRequest : ContactcenterinsightsBaseServiceRequest + /// Gets an analysis. + public class GetRequest : ContactcenterinsightsBaseServiceRequest { /// Constructs a new Get request. public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) @@ -1545,7 +2620,7 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) : ba InitParameters(); } - /// Required. The name of the issue to get. + /// Required. The name of the analysis to get. [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } @@ -1568,20 +2643,20 @@ protected override void InitParameters() IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+/issues/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+/analyses/[^/]+$", }); } } - /// Lists issues. - /// Required. The parent resource of the issue. + /// Lists analyses. + /// Required. The parent resource of the analyses. public virtual ListRequest List(string parent) { return new ListRequest(this.service, parent); } - /// Lists issues. - public class ListRequest : ContactcenterinsightsBaseServiceRequest + /// Lists analyses. + public class ListRequest : ContactcenterinsightsBaseServiceRequest { /// Constructs a new List request. public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) @@ -1590,10 +2665,32 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) : InitParameters(); } - /// Required. The parent resource of the issue. + /// Required. The parent resource of the analyses. [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } + /// + /// A filter to reduce results to a specific subset. Useful for querying conversations with + /// specific properties. + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + + /// + /// The maximum number of analyses to return in the response. If this value is zero, the service + /// will select a default size. A call might return fewer objects than requested. A non-empty + /// `next_page_token` in the response indicates that more data is available. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// The value returned by the last `ListAnalysesResponse`; indicates that this is a continuation + /// of a prior `ListAnalyses` call and the system should return the next page of data. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// Gets the method name. public override string MethodName => "list"; @@ -1601,7 +2698,7 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) : public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "v1/{+parent}/issues"; + public override string RestPath => "v1/{+parent}/analyses"; /// Initializes List parameter list. protected override void InitParameters() @@ -1613,74 +2710,113 @@ protected override void InitParameters() IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, }); } } + } - /// Updates an issue. - /// The body of the request. - /// - /// Immutable. The resource name of the issue. Format: - /// projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue} - /// - public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Issue body, string name) - { - return new PatchRequest(this.service, body, name); + /// Gets the FeedbackLabels resource. + public virtual FeedbackLabelsResource FeedbackLabels { get; } + + /// The "feedbackLabels" collection of methods. + public class FeedbackLabelsResource + { + private const string Resource = "feedbackLabels"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public FeedbackLabelsResource(Google.Apis.Services.IClientService service) + { + this.service = service; } - /// Updates an issue. - public class PatchRequest : ContactcenterinsightsBaseServiceRequest + /// Create feedback label. + /// The body of the request. + /// Required. The parent resource of the feedback label. + public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1FeedbackLabel body, string parent) { - /// Constructs a new Patch request. - public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Issue body, string name) : base(service) + return new CreateRequest(this.service, body, parent); + } + + /// Create feedback label. + public class CreateRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1FeedbackLabel body, string parent) : base(service) { - Name = name; + Parent = parent; Body = body; InitParameters(); } + /// Required. The parent resource of the feedback label. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + /// - /// Immutable. The resource name of the issue. Format: - /// projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue} + /// Optional. The ID of the feedback label to create. If one is not specified it will be + /// generated by the server. /// - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } - - /// The list of fields to be updated. - [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object UpdateMask { get; set; } + [Google.Apis.Util.RequestParameterAttribute("feedbackLabelId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string FeedbackLabelId { get; set; } /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Issue Body { get; set; } + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1FeedbackLabel Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "patch"; + public override string MethodName => "create"; /// Gets the HTTP method. - public override string HttpMethod => "PATCH"; + public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + public override string RestPath => "v1/{+parent}/feedbackLabels"; - /// Initializes Patch parameter list. + /// Initializes Create parameter list. protected override void InitParameters() { base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { - Name = "name", + Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+/issues/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", }); - RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + RequestParameters.Add("feedbackLabelId", new Google.Apis.Discovery.Parameter { - Name = "updateMask", + Name = "feedbackLabelId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1688,347 +2824,491 @@ protected override void InitParameters() }); } } - } - - /// Gets an issue model's statistics. - /// Required. The resource name of the issue model to query against. - public virtual CalculateIssueModelStatsRequest CalculateIssueModelStats(string issueModel) - { - return new CalculateIssueModelStatsRequest(this.service, issueModel); - } - /// Gets an issue model's statistics. - public class CalculateIssueModelStatsRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new CalculateIssueModelStats request. - public CalculateIssueModelStatsRequest(Google.Apis.Services.IClientService service, string issueModel) : base(service) + /// Delete feedback label. + /// Required. The name of the feedback label to delete. + public virtual DeleteRequest Delete(string name) { - IssueModel = issueModel; - InitParameters(); + return new DeleteRequest(this.service, name); } - /// Required. The resource name of the issue model to query against. - [Google.Apis.Util.RequestParameterAttribute("issueModel", Google.Apis.Util.RequestParameterType.Path)] - public virtual string IssueModel { get; private set; } + /// Delete feedback label. + public class DeleteRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } - /// Gets the method name. - public override string MethodName => "calculateIssueModelStats"; + /// Required. The name of the feedback label to delete. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + /// Gets the method name. + public override string MethodName => "delete"; - /// Gets the REST path. - public override string RestPath => "v1/{+issueModel}:calculateIssueModelStats"; + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; - /// Initializes CalculateIssueModelStats parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("issueModel", new Google.Apis.Discovery.Parameter + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() { - Name = "issueModel", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", - }); + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+/feedbackLabels/[^/]+$", + }); + } } - } - - /// Creates an issue model. - /// The body of the request. - /// Required. The parent resource of the issue model. - public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IssueModel body, string parent) - { - return new CreateRequest(this.service, body, parent); - } - /// Creates an issue model. - public class CreateRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new Create request. - public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IssueModel body, string parent) : base(service) + /// Get feedback label. + /// Required. The name of the feedback label to get. + public virtual GetRequest Get(string name) { - Parent = parent; - Body = body; - InitParameters(); + return new GetRequest(this.service, name); } - /// Required. The parent resource of the issue model. - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } - - /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IssueModel Body { get; set; } + /// Get feedback label. + public class GetRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// Required. The name of the feedback label to get. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } - /// Gets the method name. - public override string MethodName => "create"; + /// Gets the method name. + public override string MethodName => "get"; - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// Gets the HTTP method. + public override string HttpMethod => "GET"; - /// Gets the REST path. - public override string RestPath => "v1/{+parent}/issueModels"; + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; - /// Initializes Create parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + /// Initializes Get parameter list. + protected override void InitParameters() { - Name = "parent", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+$", - }); + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+/feedbackLabels/[^/]+$", + }); + } } - } - - /// Deletes an issue model. - /// Required. The name of the issue model to delete. - public virtual DeleteRequest Delete(string name) - { - return new DeleteRequest(this.service, name); - } - /// Deletes an issue model. - public class DeleteRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new Delete request. - public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + /// List feedback labels. + /// Required. The parent resource of the feedback labels. + public virtual ListRequest List(string parent) { - Name = name; - InitParameters(); + return new ListRequest(this.service, parent); } - /// Required. The name of the issue model to delete. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } - - /// Gets the method name. - public override string MethodName => "delete"; + /// List feedback labels. + public class ListRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } - /// Gets the HTTP method. - public override string HttpMethod => "DELETE"; + /// Required. The parent resource of the feedback labels. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } - /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + /// + /// Optional. A filter to reduce results to a specific subset. Supports disjunctions (OR) and + /// conjunctions (AND). Automatically sorts by conversation ID. To sort by all feedback labels + /// in a project see ListAllFeedbackLabels. Supported fields: * `issue_model_id` * + /// `qa_question_id` * `qa_scorecard_id` * `min_create_time` * `max_create_time` * + /// `min_update_time` * `max_update_time` * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } - /// Initializes Delete parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter - { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", - }); - } - } + /// + /// Optional. The maximum number of feedback labels to return in the response. A valid page size + /// ranges from 0 to 100,000 inclusive. If the page size is zero or unspecified, a default page + /// size of 100 will be chosen. Note that a call might return fewer results than the requested + /// page size. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } - /// - /// Deploys an issue model. Returns an error if a model is already deployed. An issue model can only be - /// used in analysis after it has been deployed. - /// - /// The body of the request. - /// Required. The issue model to deploy. - public virtual DeployRequest Deploy(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1DeployIssueModelRequest body, string name) - { - return new DeployRequest(this.service, body, name); - } + /// + /// Optional. The value returned by the last `ListFeedbackLabelsResponse`. This value indicates + /// that this is a continuation of a prior `ListFeedbackLabels` call and that the system should + /// return the next page of data. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } - /// - /// Deploys an issue model. Returns an error if a model is already deployed. An issue model can only be - /// used in analysis after it has been deployed. - /// - public class DeployRequest : ContactcenterinsightsBaseServiceRequest + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/feedbackLabels"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Update feedback label. + /// The body of the request. + /// + /// Immutable. Resource name of the FeedbackLabel. Format: + /// projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label} + /// + public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1FeedbackLabel body, string name) + { + return new PatchRequest(this.service, body, name); + } + + /// Update feedback label. + public class PatchRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1FeedbackLabel body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Immutable. Resource name of the FeedbackLabel. Format: + /// projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label} + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Required. The list of fields to be updated. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1FeedbackLabel Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+/feedbackLabels/[^/]+$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// Analyzes multiple conversations in a single request. + /// The body of the request. + /// Required. The parent resource to create analyses in. + public virtual BulkAnalyzeRequest BulkAnalyze(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest body, string parent) { - /// Constructs a new Deploy request. - public DeployRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1DeployIssueModelRequest body, string name) : base(service) + return new BulkAnalyzeRequest(this.service, body, parent); + } + + /// Analyzes multiple conversations in a single request. + public class BulkAnalyzeRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new BulkAnalyze request. + public BulkAnalyzeRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest body, string parent) : base(service) { - Name = name; + Parent = parent; Body = body; InitParameters(); } - /// Required. The issue model to deploy. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// Required. The parent resource to create analyses in. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1DeployIssueModelRequest Body { get; set; } + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "deploy"; + public override string MethodName => "bulkAnalyze"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "v1/{+name}:deploy"; + public override string RestPath => "v1/{+parent}/conversations:bulkAnalyze"; - /// Initializes Deploy parameter list. + /// Initializes BulkAnalyze parameter list. protected override void InitParameters() { base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { - Name = "name", + Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+$", }); } } - /// Exports an issue model to the provided destination. + /// Deletes multiple conversations in a single request. /// The body of the request. - /// Required. The issue model to export. - public virtual ExportRequest Export(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ExportIssueModelRequest body, string name) + /// + /// Required. The parent resource to delete conversations from. Format: + /// projects/{project}/locations/{location} + /// + public virtual BulkDeleteRequest BulkDelete(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest body, string parent) { - return new ExportRequest(this.service, body, name); + return new BulkDeleteRequest(this.service, body, parent); } - /// Exports an issue model to the provided destination. - public class ExportRequest : ContactcenterinsightsBaseServiceRequest + /// Deletes multiple conversations in a single request. + public class BulkDeleteRequest : ContactcenterinsightsBaseServiceRequest { - /// Constructs a new Export request. - public ExportRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ExportIssueModelRequest body, string name) : base(service) + /// Constructs a new BulkDelete request. + public BulkDeleteRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest body, string parent) : base(service) { - Name = name; + Parent = parent; Body = body; InitParameters(); } - /// Required. The issue model to export. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// + /// Required. The parent resource to delete conversations from. Format: + /// projects/{project}/locations/{location} + /// + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ExportIssueModelRequest Body { get; set; } + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "export"; + public override string MethodName => "bulkDelete"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "v1/{+name}:export"; + public override string RestPath => "v1/{+parent}/conversations:bulkDelete"; - /// Initializes Export parameter list. + /// Initializes BulkDelete parameter list. protected override void InitParameters() { base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { - Name = "name", + Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+$", }); } } - /// Gets an issue model. - /// Required. The name of the issue model to get. - public virtual GetRequest Get(string name) + /// Gets conversation statistics. + /// Required. The location of the conversations. + public virtual CalculateStatsRequest CalculateStats(string location) { - return new GetRequest(this.service, name); + return new CalculateStatsRequest(this.service, location); } - /// Gets an issue model. - public class GetRequest : ContactcenterinsightsBaseServiceRequest + /// Gets conversation statistics. + public class CalculateStatsRequest : ContactcenterinsightsBaseServiceRequest { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + /// Constructs a new CalculateStats request. + public CalculateStatsRequest(Google.Apis.Services.IClientService service, string location) : base(service) { - Name = name; + Location = location; InitParameters(); } - /// Required. The name of the issue model to get. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// Required. The location of the conversations. + [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Location { get; private set; } + + /// + /// A filter to reduce results to a specific subset. This field is useful for getting statistics + /// about conversations with specific properties. + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } /// Gets the method name. - public override string MethodName => "get"; + public override string MethodName => "calculateStats"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + public override string RestPath => "v1/{+location}/conversations:calculateStats"; - /// Initializes Get parameter list. + /// Initializes CalculateStats parameter list. protected override void InitParameters() { base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + RequestParameters.Add("location", new Google.Apis.Discovery.Parameter { - Name = "name", + Name = "location", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, }); } } - /// Imports an issue model from a Cloud Storage bucket. + /// + /// Creates a conversation. Note that this method does not support audio transcription or redaction. Use + /// `conversations.upload` instead. + /// /// The body of the request. - /// Required. The parent resource of the issue model. - public virtual ImportRequest Import(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ImportIssueModelRequest body, string parent) + /// Required. The parent resource of the conversation. + public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation body, string parent) { - return new ImportRequest(this.service, body, parent); + return new CreateRequest(this.service, body, parent); } - /// Imports an issue model from a Cloud Storage bucket. - public class ImportRequest : ContactcenterinsightsBaseServiceRequest + /// + /// Creates a conversation. Note that this method does not support audio transcription or redaction. Use + /// `conversations.upload` instead. + /// + public class CreateRequest : ContactcenterinsightsBaseServiceRequest { - /// Constructs a new Import request. - public ImportRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ImportIssueModelRequest body, string parent) : base(service) + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation body, string parent) : base(service) { Parent = parent; Body = body; InitParameters(); } - /// Required. The parent resource of the issue model. + /// Required. The parent resource of the conversation. [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } + /// + /// A unique ID for the new conversation. This ID will become the final component of the + /// conversation's resource name. If no ID is specified, a server-generated ID will be used. This + /// value should be 4-64 characters and must match the regular expression `^[a-z0-9-]{4,64}$`. Valid + /// characters are `a-z-` + /// + [Google.Apis.Util.RequestParameterAttribute("conversationId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ConversationId { get; set; } + /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ImportIssueModelRequest Body { get; set; } + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "import"; + public override string MethodName => "create"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "v1/{+parent}/issueModels:import"; + public override string RestPath => "v1/{+parent}/conversations"; - /// Initializes Import parameter list. + /// Initializes Create parameter list. protected override void InitParameters() { base.InitParameters(); @@ -2040,103 +3320,131 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"^projects/[^/]+/locations/[^/]+$", }); + RequestParameters.Add("conversationId", new Google.Apis.Discovery.Parameter + { + Name = "conversationId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } - /// Lists issue models. - /// Required. The parent resource of the issue model. - public virtual ListRequest List(string parent) + /// Deletes a conversation. + /// Required. The name of the conversation to delete. + public virtual DeleteRequest Delete(string name) { - return new ListRequest(this.service, parent); + return new DeleteRequest(this.service, name); } - /// Lists issue models. - public class ListRequest : ContactcenterinsightsBaseServiceRequest + /// Deletes a conversation. + public class DeleteRequest : ContactcenterinsightsBaseServiceRequest { - /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) { - Parent = parent; + Name = name; InitParameters(); } - /// Required. The parent resource of the issue model. - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } + /// Required. The name of the conversation to delete. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// + /// If set to true, all of this conversation's analyses will also be deleted. Otherwise, the request + /// will only succeed if the conversation has no analyses. + /// + [Google.Apis.Util.RequestParameterAttribute("force", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Force { get; set; } /// Gets the method name. - public override string MethodName => "list"; + public override string MethodName => "delete"; /// Gets the HTTP method. - public override string HttpMethod => "GET"; + public override string HttpMethod => "DELETE"; /// Gets the REST path. - public override string RestPath => "v1/{+parent}/issueModels"; + public override string RestPath => "v1/{+name}"; - /// Initializes List parameter list. + /// Initializes Delete parameter list. protected override void InitParameters() { base.InitParameters(); - RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter { - Name = "parent", + Name = "name", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", + }); + RequestParameters.Add("force", new Google.Apis.Discovery.Parameter + { + Name = "force", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, }); } } - /// Updates an issue model. - /// The body of the request. - /// - /// Immutable. The resource name of the issue model. Format: - /// projects/{project}/locations/{location}/issueModels/{issue_model} - /// - public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IssueModel body, string name) + /// Gets a conversation. + /// Required. The name of the conversation to get. + public virtual GetRequest Get(string name) { - return new PatchRequest(this.service, body, name); + return new GetRequest(this.service, name); } - /// Updates an issue model. - public class PatchRequest : ContactcenterinsightsBaseServiceRequest + /// Gets a conversation. + public class GetRequest : ContactcenterinsightsBaseServiceRequest { - /// Constructs a new Patch request. - public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IssueModel body, string name) : base(service) + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) { Name = name; - Body = body; InitParameters(); } - /// - /// Immutable. The resource name of the issue model. Format: - /// projects/{project}/locations/{location}/issueModels/{issue_model} - /// + /// Required. The name of the conversation to get. [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// The list of fields to be updated. - [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object UpdateMask { get; set; } + /// The level of details of the conversation. Default is `FULL`. + [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable View { get; set; } - /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IssueModel Body { get; set; } + /// The level of details of the conversation. Default is `FULL`. + public enum ViewEnum + { + /// + /// The conversation view is not specified. * Defaults to `FULL` in `GetConversationRequest`. * + /// Defaults to `BASIC` in `ListConversationsRequest`. + /// + [Google.Apis.Util.StringValueAttribute("CONVERSATION_VIEW_UNSPECIFIED")] + CONVERSATIONVIEWUNSPECIFIED = 0, - /// Returns the body of the request. - protected override object GetBody() => Body; + /// Populates all fields in the conversation. + [Google.Apis.Util.StringValueAttribute("FULL")] + FULL = 2, + + /// Populates all fields in the conversation except the transcript. + [Google.Apis.Util.StringValueAttribute("BASIC")] + BASIC = 1, + } /// Gets the method name. - public override string MethodName => "patch"; + public override string MethodName => "get"; /// Gets the HTTP method. - public override string HttpMethod => "PATCH"; + public override string HttpMethod => "GET"; /// Gets the REST path. public override string RestPath => "v1/{+name}"; - /// Initializes Patch parameter list. + /// Initializes Get parameter list. protected override void InitParameters() { base.InitParameters(); @@ -2146,11 +3454,11 @@ protected override void InitParameters() IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", }); - RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + RequestParameters.Add("view", new Google.Apis.Discovery.Parameter { - Name = "updateMask", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2159,230 +3467,137 @@ protected override void InitParameters() } } - /// - /// Undeploys an issue model. An issue model can not be used in analysis after it has been undeployed. - /// + /// Imports conversations and processes them according to the user's configuration. /// The body of the request. - /// Required. The issue model to undeploy. - public virtual UndeployRequest Undeploy(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UndeployIssueModelRequest body, string name) + /// Required. The parent resource for new conversations. + public virtual IngestRequest Ingest(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IngestConversationsRequest body, string parent) { - return new UndeployRequest(this.service, body, name); + return new IngestRequest(this.service, body, parent); } - /// - /// Undeploys an issue model. An issue model can not be used in analysis after it has been undeployed. - /// - public class UndeployRequest : ContactcenterinsightsBaseServiceRequest + /// Imports conversations and processes them according to the user's configuration. + public class IngestRequest : ContactcenterinsightsBaseServiceRequest { - /// Constructs a new Undeploy request. - public UndeployRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UndeployIssueModelRequest body, string name) : base(service) + /// Constructs a new Ingest request. + public IngestRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IngestConversationsRequest body, string parent) : base(service) { - Name = name; + Parent = parent; Body = body; InitParameters(); } - /// Required. The issue model to undeploy. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// Required. The parent resource for new conversations. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UndeployIssueModelRequest Body { get; set; } + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IngestConversationsRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "undeploy"; + public override string MethodName => "ingest"; /// Gets the HTTP method. public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "v1/{+name}:undeploy"; + public override string RestPath => "v1/{+parent}/conversations:ingest"; - /// Initializes Undeploy parameter list. + /// Initializes Ingest parameter list. protected override void InitParameters() { base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { - Name = "name", + Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+$", }); } } - } - - /// Gets the Operations resource. - public virtual OperationsResource Operations { get; } - - /// The "operations" collection of methods. - public class OperationsResource - { - private const string Resource = "operations"; - - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; - - /// Constructs a new resource. - public OperationsResource(Google.Apis.Services.IClientService service) - { - this.service = service; - } - /// - /// Starts asynchronous cancellation on a long-running operation. The server makes a best effort to - /// cancel the operation, but success is not guaranteed. If the server doesn't support this method, it - /// returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to - /// check whether the cancellation succeeded or whether the operation completed despite cancellation. On - /// successful cancellation, the operation is not deleted; instead, it becomes an operation with an - /// Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. - /// - /// The name of the operation resource to be cancelled. - public virtual CancelRequest Cancel(string name) + /// Lists conversations. + /// Required. The parent resource of the conversation. + public virtual ListRequest List(string parent) { - return new CancelRequest(this.service, name); + return new ListRequest(this.service, parent); } - /// - /// Starts asynchronous cancellation on a long-running operation. The server makes a best effort to - /// cancel the operation, but success is not guaranteed. If the server doesn't support this method, it - /// returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to - /// check whether the cancellation succeeded or whether the operation completed despite cancellation. On - /// successful cancellation, the operation is not deleted; instead, it becomes an operation with an - /// Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. - /// - public class CancelRequest : ContactcenterinsightsBaseServiceRequest + /// Lists conversations. + public class ListRequest : ContactcenterinsightsBaseServiceRequest { - /// Constructs a new Cancel request. - public CancelRequest(Google.Apis.Services.IClientService service, string name) : base(service) + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) { - Name = name; + Parent = parent; InitParameters(); } - /// The name of the operation resource to be cancelled. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } - - /// Gets the method name. - public override string MethodName => "cancel"; + /// Required. The parent resource of the conversation. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } - /// Gets the HTTP method. - public override string HttpMethod => "POST"; - - /// Gets the REST path. - public override string RestPath => "v1/{+name}:cancel"; - - /// Initializes Cancel parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter - { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/operations/[^/]+$", - }); - } - } - - /// - /// Gets the latest state of a long-running operation. Clients can use this method to poll the operation - /// result at intervals as recommended by the API service. - /// - /// The name of the operation resource. - public virtual GetRequest Get(string name) - { - return new GetRequest(this.service, name); - } - - /// - /// Gets the latest state of a long-running operation. Clients can use this method to poll the operation - /// result at intervals as recommended by the API service. - /// - public class GetRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) - { - Name = name; - InitParameters(); - } + /// + /// A filter to reduce results to a specific subset. Useful for querying conversations with specific + /// properties. + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } - /// The name of the operation resource. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// + /// Optional. The attribute by which to order conversations in the response. If empty, conversations + /// will be ordered by descending creation time. Supported values are one of the following: * + /// create_time * customer_satisfaction_rating * duration * latest_analysis * start_time * + /// turn_count The default sort order is ascending. To specify order, append `asc` or `desc` + /// (`create_time desc`). For more details, see [Google AIPs + /// Ordering](https://google.aip.dev/132#ordering). + /// + [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OrderBy { get; set; } - /// Gets the method name. - public override string MethodName => "get"; + /// + /// The maximum number of conversations to return in the response. A valid page size ranges from 0 + /// to 100,000 inclusive. If the page size is zero or unspecified, a default page size of 100 will + /// be chosen. Note that a call might return fewer results than the requested page size. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + /// + /// The value returned by the last `ListConversationsResponse`. This value indicates that this is a + /// continuation of a prior `ListConversations` call and that the system should return the next page + /// of data. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } - /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + /// The level of details of the conversation. Default is `BASIC`. + [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable View { get; set; } - /// Initializes Get parameter list. - protected override void InitParameters() + /// The level of details of the conversation. Default is `BASIC`. + public enum ViewEnum { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter - { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/operations/[^/]+$", - }); - } - } + /// + /// The conversation view is not specified. * Defaults to `FULL` in `GetConversationRequest`. * + /// Defaults to `BASIC` in `ListConversationsRequest`. + /// + [Google.Apis.Util.StringValueAttribute("CONVERSATION_VIEW_UNSPECIFIED")] + CONVERSATIONVIEWUNSPECIFIED = 0, - /// - /// Lists operations that match the specified filter in the request. If the server doesn't support this - /// method, it returns `UNIMPLEMENTED`. - /// - /// The name of the operation's parent resource. - public virtual ListRequest List(string name) - { - return new ListRequest(this.service, name); - } + /// Populates all fields in the conversation. + [Google.Apis.Util.StringValueAttribute("FULL")] + FULL = 2, - /// - /// Lists operations that match the specified filter in the request. If the server doesn't support this - /// method, it returns `UNIMPLEMENTED`. - /// - public class ListRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service, string name) : base(service) - { - Name = name; - InitParameters(); + /// Populates all fields in the conversation except the transcript. + [Google.Apis.Util.StringValueAttribute("BASIC")] + BASIC = 1, } - /// The name of the operation's parent resource. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } - - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - - /// The standard list page size. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - - /// The standard list page token. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Gets the method name. public override string MethodName => "list"; @@ -2390,15 +3605,15 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) : b public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "v1/{+name}/operations"; + public override string RestPath => "v1/{+parent}/conversations"; /// Initializes List parameter list. protected override void InitParameters() { base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { - Name = "name", + Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, @@ -2412,6 +3627,14 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add("orderBy", new Google.Apis.Discovery.Parameter + { + Name = "orderBy", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter { Name = "pageSize", @@ -2428,162 +3651,225 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add("view", new Google.Apis.Discovery.Parameter + { + Name = "view", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } - } - - /// Gets the PhraseMatchers resource. - public virtual PhraseMatchersResource PhraseMatchers { get; } - - /// The "phraseMatchers" collection of methods. - public class PhraseMatchersResource - { - private const string Resource = "phraseMatchers"; - - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; - - /// Constructs a new resource. - public PhraseMatchersResource(Google.Apis.Services.IClientService service) - { - this.service = service; - } - /// Creates a phrase matcher. + /// Updates a conversation. /// The body of the request. - /// - /// Required. The parent resource of the phrase matcher. Required. The location to create a phrase - /// matcher for. Format: `projects//locations/` or `projects//locations/` + /// + /// Immutable. The resource name of the conversation. Format: + /// projects/{project}/locations/{location}/conversations/{conversation} /// - public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1PhraseMatcher body, string parent) + public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation body, string name) { - return new CreateRequest(this.service, body, parent); + return new PatchRequest(this.service, body, name); } - /// Creates a phrase matcher. - public class CreateRequest : ContactcenterinsightsBaseServiceRequest + /// Updates a conversation. + public class PatchRequest : ContactcenterinsightsBaseServiceRequest { - /// Constructs a new Create request. - public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1PhraseMatcher body, string parent) : base(service) + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation body, string name) : base(service) { - Parent = parent; + Name = name; Body = body; InitParameters(); } /// - /// Required. The parent resource of the phrase matcher. Required. The location to create a phrase - /// matcher for. Format: `projects//locations/` or `projects//locations/` + /// Immutable. The resource name of the conversation. Format: + /// projects/{project}/locations/{location}/conversations/{conversation} /// - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// + /// The list of fields to be updated. All possible fields can be updated by passing `*`, or a subset + /// of the following updateable fields can be provided: * `agent_id` * `language_code` * `labels` * + /// `metadata` * `quality_metadata` * `call_metadata` * `start_time` * `expire_time` or `ttl` * + /// `data_source.gcs_source.audio_uri` or `data_source.dialogflow_source.audio_uri` + /// + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1PhraseMatcher Body { get; set; } + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Conversation Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "create"; + public override string MethodName => "patch"; /// Gets the HTTP method. - public override string HttpMethod => "POST"; + public override string HttpMethod => "PATCH"; /// Gets the REST path. - public override string RestPath => "v1/{+parent}/phraseMatchers"; + public override string RestPath => "v1/{+name}"; - /// Initializes Create parameter list. + /// Initializes Patch parameter list. protected override void InitParameters() { base.InitParameters(); - RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter { - Name = "parent", + Name = "name", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+/conversations/[^/]+$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, }); } } - /// Deletes a phrase matcher. - /// Required. The name of the phrase matcher to delete. - public virtual DeleteRequest Delete(string name) - { - return new DeleteRequest(this.service, name); - } + /// + /// Create a long-running conversation upload operation. This method differs from `CreateConversation` + /// by allowing audio transcription and optional DLP redaction. + /// + /// The body of the request. + /// Required. The parent resource of the conversation. + public virtual UploadRequest Upload(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UploadConversationRequest body, string parent) + { + return new UploadRequest(this.service, body, parent); + } - /// Deletes a phrase matcher. - public class DeleteRequest : ContactcenterinsightsBaseServiceRequest + /// + /// Create a long-running conversation upload operation. This method differs from `CreateConversation` + /// by allowing audio transcription and optional DLP redaction. + /// + public class UploadRequest : ContactcenterinsightsBaseServiceRequest { - /// Constructs a new Delete request. - public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + /// Constructs a new Upload request. + public UploadRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UploadConversationRequest body, string parent) : base(service) { - Name = name; + Parent = parent; + Body = body; InitParameters(); } - /// Required. The name of the phrase matcher to delete. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// Required. The parent resource of the conversation. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UploadConversationRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "delete"; + public override string MethodName => "upload"; /// Gets the HTTP method. - public override string HttpMethod => "DELETE"; + public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + public override string RestPath => "v1/{+parent}/conversations:upload"; - /// Initializes Delete parameter list. + /// Initializes Upload parameter list. protected override void InitParameters() { base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter { - Name = "name", + Name = "parent", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/phraseMatchers/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+$", }); } } + } - /// Gets a phrase matcher. - /// Required. The name of the phrase matcher to get. - public virtual GetRequest Get(string name) + /// Gets the EncryptionSpec resource. + public virtual EncryptionSpecResource EncryptionSpec { get; } + + /// The "encryptionSpec" collection of methods. + public class EncryptionSpecResource + { + private const string Resource = "encryptionSpec"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public EncryptionSpecResource(Google.Apis.Services.IClientService service) { - return new GetRequest(this.service, name); + this.service = service; } - /// Gets a phrase matcher. - public class GetRequest : ContactcenterinsightsBaseServiceRequest + /// + /// Initializes a location-level encryption key specification. An error will result if the location has + /// resources already created before the initialization. After the encryption specification is + /// initialized at a location, it is immutable and all newly created resources under the location will + /// be encrypted with the existing specification. + /// + /// The body of the request. + /// + /// Immutable. The resource name of the encryption key specification resource. Format: + /// projects/{project}/locations/{location}/encryptionSpec + /// + public virtual InitializeRequest Initialize(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest body, string name) { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + return new InitializeRequest(this.service, body, name); + } + + /// + /// Initializes a location-level encryption key specification. An error will result if the location has + /// resources already created before the initialization. After the encryption specification is + /// initialized at a location, it is immutable and all newly created resources under the location will + /// be encrypted with the existing specification. + /// + public class InitializeRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Initialize request. + public InitializeRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest body, string name) : base(service) { Name = name; + Body = body; InitParameters(); } - /// Required. The name of the phrase matcher to get. + /// + /// Immutable. The resource name of the encryption key specification resource. Format: + /// projects/{project}/locations/{location}/encryptionSpec + /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + /// Gets the method name. - public override string MethodName => "get"; + public override string MethodName => "initialize"; /// Gets the HTTP method. - public override string HttpMethod => "GET"; + public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + public override string RestPath => "v1/{+name}:initialize"; - /// Initializes Get parameter list. + /// Initializes Initialize parameter list. protected override void InitParameters() { base.InitParameters(); @@ -2593,65 +3879,68 @@ protected override void InitParameters() IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/phraseMatchers/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+/encryptionSpec$", }); } } + } - /// Lists phrase matchers. - /// Required. The parent resource of the phrase matcher. - public virtual ListRequest List(string parent) + /// Gets the Insightsdata resource. + public virtual InsightsdataResource Insightsdata { get; } + + /// The "insightsdata" collection of methods. + public class InsightsdataResource + { + private const string Resource = "insightsdata"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public InsightsdataResource(Google.Apis.Services.IClientService service) { - return new ListRequest(this.service, parent); + this.service = service; } - /// Lists phrase matchers. - public class ListRequest : ContactcenterinsightsBaseServiceRequest + /// Export insights data to a destination defined in the request body. + /// The body of the request. + /// Required. The parent resource to export data from. + public virtual ExportRequest Export(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest body, string parent) { - /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + return new ExportRequest(this.service, body, parent); + } + + /// Export insights data to a destination defined in the request body. + public class ExportRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Export request. + public ExportRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest body, string parent) : base(service) { Parent = parent; + Body = body; InitParameters(); } - /// Required. The parent resource of the phrase matcher. + /// Required. The parent resource to export data from. [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// - /// A filter to reduce results to a specific subset. Useful for querying phrase matchers with - /// specific properties. - /// - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - - /// - /// The maximum number of phrase matchers to return in the response. If this value is zero, the - /// service will select a default size. A call might return fewer objects than requested. A - /// non-empty `next_page_token` in the response indicates that more data is available. - /// - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest Body { get; set; } - /// - /// The value returned by the last `ListPhraseMatchersResponse`. This value indicates that this is a - /// continuation of a prior `ListPhraseMatchers` call and that the system should return the next - /// page of data. - /// - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } + /// Returns the body of the request. + protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "list"; + public override string MethodName => "export"; /// Gets the HTTP method. - public override string HttpMethod => "GET"; + public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "v1/{+parent}/phraseMatchers"; + public override string RestPath => "v1/{+parent}/insightsdata:export"; - /// Initializes List parameter list. + /// Initializes Export parameter list. protected override void InitParameters() { base.InitParameters(); @@ -2663,317 +3952,336 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"^projects/[^/]+/locations/[^/]+$", }); - RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter - { - Name = "filter", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter - { - Name = "pageSize", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter - { - Name = "pageToken", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); } } + } - /// Updates a phrase matcher. - /// The body of the request. - /// - /// The resource name of the phrase matcher. Format: - /// projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher} - /// - public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1PhraseMatcher body, string name) + /// Gets the IssueModels resource. + public virtual IssueModelsResource IssueModels { get; } + + /// The "issueModels" collection of methods. + public class IssueModelsResource + { + private const string Resource = "issueModels"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public IssueModelsResource(Google.Apis.Services.IClientService service) { - return new PatchRequest(this.service, body, name); + this.service = service; + Issues = new IssuesResource(service); } - /// Updates a phrase matcher. - public class PatchRequest : ContactcenterinsightsBaseServiceRequest + /// Gets the Issues resource. + public virtual IssuesResource Issues { get; } + + /// The "issues" collection of methods. + public class IssuesResource { - /// Constructs a new Patch request. - public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1PhraseMatcher body, string name) : base(service) - { - Name = name; - Body = body; - InitParameters(); - } + private const string Resource = "issues"; - /// - /// The resource name of the phrase matcher. Format: - /// projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher} - /// - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } - - /// The list of fields to be updated. - [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object UpdateMask { get; set; } - - /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1PhraseMatcher Body { get; set; } - - /// Returns the body of the request. - protected override object GetBody() => Body; - - /// Gets the method name. - public override string MethodName => "patch"; + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; - /// Gets the HTTP method. - public override string HttpMethod => "PATCH"; + /// Constructs a new resource. + public IssuesResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } - /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + /// Deletes an issue. + /// Required. The name of the issue to delete. + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(this.service, name); + } - /// Initializes Patch parameter list. - protected override void InitParameters() + /// Deletes an issue. + public class DeleteRequest : ContactcenterinsightsBaseServiceRequest { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter - { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/phraseMatchers/[^/]+$", - }); - RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) { - Name = "updateMask", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - } - } + Name = name; + InitParameters(); + } - /// Gets the Views resource. - public virtual ViewsResource Views { get; } + /// Required. The name of the issue to delete. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } - /// The "views" collection of methods. - public class ViewsResource - { - private const string Resource = "views"; + /// Gets the method name. + public override string MethodName => "delete"; - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; - /// Constructs a new resource. - public ViewsResource(Google.Apis.Services.IClientService service) - { - this.service = service; - } + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; - /// Creates a view. - /// The body of the request. - /// - /// Required. The parent resource of the view. Required. The location to create a view for. Format: - /// `projects//locations/` or `projects//locations/` - /// - public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1View body, string parent) - { - return new CreateRequest(this.service, body, parent); - } + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+/issues/[^/]+$", + }); + } + } - /// Creates a view. - public class CreateRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new Create request. - public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1View body, string parent) : base(service) + /// Gets an issue. + /// Required. The name of the issue to get. + public virtual GetRequest Get(string name) { - Parent = parent; - Body = body; - InitParameters(); + return new GetRequest(this.service, name); } - /// - /// Required. The parent resource of the view. Required. The location to create a view for. Format: - /// `projects//locations/` or `projects//locations/` - /// - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Parent { get; private set; } - - /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1View Body { get; set; } + /// Gets an issue. + public class GetRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// Required. The name of the issue to get. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } - /// Gets the method name. - public override string MethodName => "create"; + /// Gets the method name. + public override string MethodName => "get"; - /// Gets the HTTP method. - public override string HttpMethod => "POST"; + /// Gets the HTTP method. + public override string HttpMethod => "GET"; - /// Gets the REST path. - public override string RestPath => "v1/{+parent}/views"; + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; - /// Initializes Create parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + /// Initializes Get parameter list. + protected override void InitParameters() { - Name = "parent", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+$", - }); + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+/issues/[^/]+$", + }); + } } - } - - /// Deletes a view. - /// Required. The name of the view to delete. - public virtual DeleteRequest Delete(string name) - { - return new DeleteRequest(this.service, name); - } - /// Deletes a view. - public class DeleteRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new Delete request. - public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + /// Lists issues. + /// Required. The parent resource of the issue. + public virtual ListRequest List(string parent) { - Name = name; - InitParameters(); + return new ListRequest(this.service, parent); } - /// Required. The name of the view to delete. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// Lists issues. + public class ListRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } - /// Gets the method name. - public override string MethodName => "delete"; + /// Required. The parent resource of the issue. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } - /// Gets the HTTP method. - public override string HttpMethod => "DELETE"; + /// Gets the method name. + public override string MethodName => "list"; - /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + /// Gets the HTTP method. + public override string HttpMethod => "GET"; - /// Initializes Delete parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/issues"; + + /// Initializes List parameter list. + protected override void InitParameters() { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/views/[^/]+$", - }); + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + }); + } } - } - - /// Gets a view. - /// Required. The name of the view to get. - public virtual GetRequest Get(string name) - { - return new GetRequest(this.service, name); - } - /// Gets a view. - public class GetRequest : ContactcenterinsightsBaseServiceRequest + /// Updates an issue. + /// The body of the request. + /// + /// Immutable. The resource name of the issue. Format: + /// projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue} + /// + public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Issue body, string name) + { + return new PatchRequest(this.service, body, name); + } + + /// Updates an issue. + public class PatchRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Issue body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Immutable. The resource name of the issue. Format: + /// projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue} + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// The list of fields to be updated. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Issue Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+/issues/[^/]+$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// Gets an issue model's statistics. + /// Required. The resource name of the issue model to query against. + public virtual CalculateIssueModelStatsRequest CalculateIssueModelStats(string issueModel) { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + return new CalculateIssueModelStatsRequest(this.service, issueModel); + } + + /// Gets an issue model's statistics. + public class CalculateIssueModelStatsRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new CalculateIssueModelStats request. + public CalculateIssueModelStatsRequest(Google.Apis.Services.IClientService service, string issueModel) : base(service) { - Name = name; + IssueModel = issueModel; InitParameters(); } - /// Required. The name of the view to get. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// Required. The resource name of the issue model to query against. + [Google.Apis.Util.RequestParameterAttribute("issueModel", Google.Apis.Util.RequestParameterType.Path)] + public virtual string IssueModel { get; private set; } /// Gets the method name. - public override string MethodName => "get"; + public override string MethodName => "calculateIssueModelStats"; /// Gets the HTTP method. public override string HttpMethod => "GET"; /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + public override string RestPath => "v1/{+issueModel}:calculateIssueModelStats"; - /// Initializes Get parameter list. + /// Initializes CalculateIssueModelStats parameter list. protected override void InitParameters() { base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + RequestParameters.Add("issueModel", new Google.Apis.Discovery.Parameter { - Name = "name", + Name = "issueModel", IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/views/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", }); } } - /// Lists views. - /// Required. The parent resource of the views. - public virtual ListRequest List(string parent) + /// Creates an issue model. + /// The body of the request. + /// Required. The parent resource of the issue model. + public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IssueModel body, string parent) { - return new ListRequest(this.service, parent); + return new CreateRequest(this.service, body, parent); } - /// Lists views. - public class ListRequest : ContactcenterinsightsBaseServiceRequest + /// Creates an issue model. + public class CreateRequest : ContactcenterinsightsBaseServiceRequest { - /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IssueModel body, string parent) : base(service) { Parent = parent; + Body = body; InitParameters(); } - /// Required. The parent resource of the views. + /// Required. The parent resource of the issue model. [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// - /// The maximum number of views to return in the response. If this value is zero, the service will - /// select a default size. A call may return fewer objects than requested. A non-empty - /// `next_page_token` in the response indicates that more data is available. - /// - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IssueModel Body { get; set; } - /// - /// The value returned by the last `ListViewsResponse`; indicates that this is a continuation of a - /// prior `ListViews` call and the system should return the next page of data. - /// - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } + /// Returns the body of the request. + protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "list"; + public override string MethodName => "create"; /// Gets the HTTP method. - public override string HttpMethod => "GET"; + public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "v1/{+parent}/views"; + public override string RestPath => "v1/{+parent}/issueModels"; - /// Initializes List parameter list. + /// Initializes Create parameter list. protected override void InitParameters() { base.InitParameters(); @@ -2985,74 +4293,99 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"^projects/[^/]+/locations/[^/]+$", }); - RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter - { - Name = "pageSize", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + } + } + + /// Deletes an issue model. + /// Required. The name of the issue model to delete. + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(this.service, name); + } + + /// Deletes an issue model. + public class DeleteRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the issue model to delete. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter { - Name = "pageToken", - IsRequired = false, - ParameterType = "query", + Name = "name", + IsRequired = true, + ParameterType = "path", DefaultValue = null, - Pattern = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", }); } } - /// Updates a view. + /// + /// Deploys an issue model. Returns an error if a model is already deployed. An issue model can only be + /// used in analysis after it has been deployed. + /// /// The body of the request. - /// - /// Immutable. The resource name of the view. Format: - /// projects/{project}/locations/{location}/views/{view} - /// - public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1View body, string name) + /// Required. The issue model to deploy. + public virtual DeployRequest Deploy(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1DeployIssueModelRequest body, string name) { - return new PatchRequest(this.service, body, name); + return new DeployRequest(this.service, body, name); } - /// Updates a view. - public class PatchRequest : ContactcenterinsightsBaseServiceRequest + /// + /// Deploys an issue model. Returns an error if a model is already deployed. An issue model can only be + /// used in analysis after it has been deployed. + /// + public class DeployRequest : ContactcenterinsightsBaseServiceRequest { - /// Constructs a new Patch request. - public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1View body, string name) : base(service) + /// Constructs a new Deploy request. + public DeployRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1DeployIssueModelRequest body, string name) : base(service) { Name = name; Body = body; InitParameters(); } - /// - /// Immutable. The resource name of the view. Format: - /// projects/{project}/locations/{location}/views/{view} - /// + /// Required. The issue model to deploy. [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// The list of fields to be updated. - [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object UpdateMask { get; set; } - /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1View Body { get; set; } + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1DeployIssueModelRequest Body { get; set; } /// Returns the body of the request. protected override object GetBody() => Body; /// Gets the method name. - public override string MethodName => "patch"; + public override string MethodName => "deploy"; /// Gets the HTTP method. - public override string HttpMethod => "PATCH"; + public override string HttpMethod => "POST"; /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + public override string RestPath => "v1/{+name}:deploy"; - /// Initializes Patch parameter list. + /// Initializes Deploy parameter list. protected override void InitParameters() { base.InitParameters(); @@ -3062,207 +4395,3987 @@ protected override void InitParameters() IsRequired = true, ParameterType = "path", DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/views/[^/]+$", + Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", }); - RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter - { - Name = "updateMask", - IsRequired = false, - ParameterType = "query", + } + } + + /// Exports an issue model to the provided destination. + /// The body of the request. + /// Required. The issue model to export. + public virtual ExportRequest Export(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ExportIssueModelRequest body, string name) + { + return new ExportRequest(this.service, body, name); + } + + /// Exports an issue model to the provided destination. + public class ExportRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Export request. + public ExportRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ExportIssueModelRequest body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// Required. The issue model to export. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ExportIssueModelRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "export"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}:export"; + + /// Initializes Export parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", DefaultValue = null, - Pattern = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", }); } } - } - - /// Gets location-level encryption key specification. - /// Required. The name of the encryption spec resource to get. - public virtual GetEncryptionSpecRequest GetEncryptionSpec(string name) - { - return new GetEncryptionSpecRequest(this.service, name); - } - /// Gets location-level encryption key specification. - public class GetEncryptionSpecRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new GetEncryptionSpec request. - public GetEncryptionSpecRequest(Google.Apis.Services.IClientService service, string name) : base(service) + /// Gets an issue model. + /// Required. The name of the issue model to get. + public virtual GetRequest Get(string name) { - Name = name; - InitParameters(); + return new GetRequest(this.service, name); } - /// Required. The name of the encryption spec resource to get. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// Gets an issue model. + public class GetRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } - /// Gets the method name. - public override string MethodName => "getEncryptionSpec"; + /// Required. The name of the issue model to get. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + /// Gets the method name. + public override string MethodName => "get"; - /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + /// Gets the HTTP method. + public override string HttpMethod => "GET"; - /// Initializes GetEncryptionSpec parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Get parameter list. + protected override void InitParameters() { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/encryptionSpec$", - }); + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + }); + } } - } - - /// Gets project-level settings. - /// Required. The name of the settings resource to get. - public virtual GetSettingsRequest GetSettings(string name) - { - return new GetSettingsRequest(this.service, name); - } - /// Gets project-level settings. - public class GetSettingsRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new GetSettings request. - public GetSettingsRequest(Google.Apis.Services.IClientService service, string name) : base(service) + /// Imports an issue model from a Cloud Storage bucket. + /// The body of the request. + /// Required. The parent resource of the issue model. + public virtual ImportRequest Import(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ImportIssueModelRequest body, string parent) { - Name = name; - InitParameters(); + return new ImportRequest(this.service, body, parent); } - /// Required. The name of the settings resource to get. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// Imports an issue model from a Cloud Storage bucket. + public class ImportRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Import request. + public ImportRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ImportIssueModelRequest body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } - /// Gets the method name. - public override string MethodName => "getSettings"; + /// Required. The parent resource of the issue model. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } - /// Gets the HTTP method. - public override string HttpMethod => "GET"; + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1ImportIssueModelRequest Body { get; set; } - /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + /// Returns the body of the request. + protected override object GetBody() => Body; - /// Initializes GetSettings parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + /// Gets the method name. + public override string MethodName => "import"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/issueModels:import"; + + /// Initializes Import parameter list. + protected override void InitParameters() { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/settings$", - }); + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + } } - } - - /// Updates project-level settings. - /// The body of the request. - /// - /// Immutable. The resource name of the settings resource. Format: - /// projects/{project}/locations/{location}/settings - /// - public virtual UpdateSettingsRequest UpdateSettings(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Settings body, string name) - { - return new UpdateSettingsRequest(this.service, body, name); - } - /// Updates project-level settings. - public class UpdateSettingsRequest : ContactcenterinsightsBaseServiceRequest - { - /// Constructs a new UpdateSettings request. - public UpdateSettingsRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Settings body, string name) : base(service) + /// Lists issue models. + /// Required. The parent resource of the issue model. + public virtual ListRequest List(string parent) { - Name = name; - Body = body; - InitParameters(); + return new ListRequest(this.service, parent); } - /// - /// Immutable. The resource name of the settings resource. Format: - /// projects/{project}/locations/{location}/settings - /// - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] - public virtual string Name { get; private set; } + /// Lists issue models. + public class ListRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } - /// Required. The list of fields to be updated. - [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object UpdateMask { get; set; } + /// Required. The parent resource of the issue model. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/issueModels"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + } + } + + /// Updates an issue model. + /// The body of the request. + /// + /// Immutable. The resource name of the issue model. Format: + /// projects/{project}/locations/{location}/issueModels/{issue_model} + /// + public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IssueModel body, string name) + { + return new PatchRequest(this.service, body, name); + } + + /// Updates an issue model. + public class PatchRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IssueModel body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Immutable. The resource name of the issue model. Format: + /// projects/{project}/locations/{location}/issueModels/{issue_model} + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// The list of fields to be updated. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1IssueModel Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// + /// Undeploys an issue model. An issue model can not be used in analysis after it has been undeployed. + /// + /// The body of the request. + /// Required. The issue model to undeploy. + public virtual UndeployRequest Undeploy(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UndeployIssueModelRequest body, string name) + { + return new UndeployRequest(this.service, body, name); + } + + /// + /// Undeploys an issue model. An issue model can not be used in analysis after it has been undeployed. + /// + public class UndeployRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Undeploy request. + public UndeployRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UndeployIssueModelRequest body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// Required. The issue model to undeploy. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UndeployIssueModelRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "undeploy"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}:undeploy"; + + /// Initializes Undeploy parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/issueModels/[^/]+$", + }); + } + } + } + + /// Gets the Operations resource. + public virtual OperationsResource Operations { get; } + + /// The "operations" collection of methods. + public class OperationsResource + { + private const string Resource = "operations"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public OperationsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// + /// Starts asynchronous cancellation on a long-running operation. The server makes a best effort to + /// cancel the operation, but success is not guaranteed. If the server doesn't support this method, it + /// returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to + /// check whether the cancellation succeeded or whether the operation completed despite cancellation. On + /// successful cancellation, the operation is not deleted; instead, it becomes an operation with an + /// Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. + /// + /// The name of the operation resource to be cancelled. + public virtual CancelRequest Cancel(string name) + { + return new CancelRequest(this.service, name); + } + + /// + /// Starts asynchronous cancellation on a long-running operation. The server makes a best effort to + /// cancel the operation, but success is not guaranteed. If the server doesn't support this method, it + /// returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to + /// check whether the cancellation succeeded or whether the operation completed despite cancellation. On + /// successful cancellation, the operation is not deleted; instead, it becomes an operation with an + /// Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. + /// + public class CancelRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Cancel request. + public CancelRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// The name of the operation resource to be cancelled. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "cancel"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}:cancel"; + + /// Initializes Cancel parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + }); + } + } + + /// + /// Gets the latest state of a long-running operation. Clients can use this method to poll the operation + /// result at intervals as recommended by the API service. + /// + /// The name of the operation resource. + public virtual GetRequest Get(string name) + { + return new GetRequest(this.service, name); + } + + /// + /// Gets the latest state of a long-running operation. Clients can use this method to poll the operation + /// result at intervals as recommended by the API service. + /// + public class GetRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// The name of the operation resource. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + }); + } + } + + /// + /// Lists operations that match the specified filter in the request. If the server doesn't support this + /// method, it returns `UNIMPLEMENTED`. + /// + /// The name of the operation's parent resource. + public virtual ListRequest List(string name) + { + return new ListRequest(this.service, name); + } + + /// + /// Lists operations that match the specified filter in the request. If the server doesn't support this + /// method, it returns `UNIMPLEMENTED`. + /// + public class ListRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// The name of the operation's parent resource. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + + /// The standard list page size. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// The standard list page token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}/operations"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// Gets the PhraseMatchers resource. + public virtual PhraseMatchersResource PhraseMatchers { get; } + + /// The "phraseMatchers" collection of methods. + public class PhraseMatchersResource + { + private const string Resource = "phraseMatchers"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public PhraseMatchersResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// Creates a phrase matcher. + /// The body of the request. + /// + /// Required. The parent resource of the phrase matcher. Required. The location to create a phrase + /// matcher for. Format: `projects//locations/` or `projects//locations/` + /// + public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1PhraseMatcher body, string parent) + { + return new CreateRequest(this.service, body, parent); + } + + /// Creates a phrase matcher. + public class CreateRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1PhraseMatcher body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// + /// Required. The parent resource of the phrase matcher. Required. The location to create a phrase + /// matcher for. Format: `projects//locations/` or `projects//locations/` + /// + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1PhraseMatcher Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "create"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/phraseMatchers"; + + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + } + } + + /// Deletes a phrase matcher. + /// Required. The name of the phrase matcher to delete. + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(this.service, name); + } + + /// Deletes a phrase matcher. + public class DeleteRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the phrase matcher to delete. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/phraseMatchers/[^/]+$", + }); + } + } + + /// Gets a phrase matcher. + /// Required. The name of the phrase matcher to get. + public virtual GetRequest Get(string name) + { + return new GetRequest(this.service, name); + } + + /// Gets a phrase matcher. + public class GetRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the phrase matcher to get. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/phraseMatchers/[^/]+$", + }); + } + } + + /// Lists phrase matchers. + /// Required. The parent resource of the phrase matcher. + public virtual ListRequest List(string parent) + { + return new ListRequest(this.service, parent); + } + + /// Lists phrase matchers. + public class ListRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } + + /// Required. The parent resource of the phrase matcher. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// A filter to reduce results to a specific subset. Useful for querying phrase matchers with + /// specific properties. + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + + /// + /// The maximum number of phrase matchers to return in the response. If this value is zero, the + /// service will select a default size. A call might return fewer objects than requested. A + /// non-empty `next_page_token` in the response indicates that more data is available. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// The value returned by the last `ListPhraseMatchersResponse`. This value indicates that this is a + /// continuation of a prior `ListPhraseMatchers` call and that the system should return the next + /// page of data. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/phraseMatchers"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Updates a phrase matcher. + /// The body of the request. + /// + /// The resource name of the phrase matcher. Format: + /// projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher} + /// + public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1PhraseMatcher body, string name) + { + return new PatchRequest(this.service, body, name); + } + + /// Updates a phrase matcher. + public class PatchRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1PhraseMatcher body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// The resource name of the phrase matcher. Format: + /// projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher} + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// The list of fields to be updated. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1PhraseMatcher Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/phraseMatchers/[^/]+$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// Gets the QaScorecards resource. + public virtual QaScorecardsResource QaScorecards { get; } + + /// The "qaScorecards" collection of methods. + public class QaScorecardsResource + { + private const string Resource = "qaScorecards"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public QaScorecardsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + Revisions = new RevisionsResource(service); + } + + /// Gets the Revisions resource. + public virtual RevisionsResource Revisions { get; } + + /// The "revisions" collection of methods. + public class RevisionsResource + { + private const string Resource = "revisions"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public RevisionsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + QaQuestions = new QaQuestionsResource(service); + } + + /// Gets the QaQuestions resource. + public virtual QaQuestionsResource QaQuestions { get; } + + /// The "qaQuestions" collection of methods. + public class QaQuestionsResource + { + private const string Resource = "qaQuestions"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public QaQuestionsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// Create a QaQuestion. + /// The body of the request. + /// Required. The parent resource of the QaQuestion. + public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaQuestion body, string parent) + { + return new CreateRequest(this.service, body, parent); + } + + /// Create a QaQuestion. + public class CreateRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaQuestion body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// Required. The parent resource of the QaQuestion. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Optional. A unique ID for the new question. This ID will become the final component of + /// the question's resource name. If no ID is specified, a server-generated ID will be used. + /// This value should be 4-64 characters and must match the regular expression + /// `^[a-z0-9-]{4,64}$`. Valid characters are `a-z-`. + /// + [Google.Apis.Util.RequestParameterAttribute("qaQuestionId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string QaQuestionId { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaQuestion Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "create"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/qaQuestions"; + + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+$", + }); + RequestParameters.Add("qaQuestionId", new Google.Apis.Discovery.Parameter + { + Name = "qaQuestionId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Deletes a QaQuestion. + /// Required. The name of the QaQuestion to delete. + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(this.service, name); + } + + /// Deletes a QaQuestion. + public class DeleteRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the QaQuestion to delete. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+/qaQuestions/[^/]+$", + }); + } + } + + /// Gets a QaQuestion. + /// Required. The name of the QaQuestion to get. + public virtual GetRequest Get(string name) + { + return new GetRequest(this.service, name); + } + + /// Gets a QaQuestion. + public class GetRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the QaQuestion to get. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+/qaQuestions/[^/]+$", + }); + } + } + + /// Lists QaQuestions. + /// Required. The parent resource of the questions. + public virtual ListRequest List(string parent) + { + return new ListRequest(this.service, parent); + } + + /// Lists QaQuestions. + public class ListRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } + + /// Required. The parent resource of the questions. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Optional. The maximum number of questions to return in the response. If the value is + /// zero, the service will select a default size. A call might return fewer objects than + /// requested. A non-empty `next_page_token` in the response indicates that more data is + /// available. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// Optional. The value returned by the last `ListQaQuestionsResponse`. This value indicates + /// that this is a continuation of a prior `ListQaQuestions` call and that the system should + /// return the next page of data. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/qaQuestions"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+$", + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Updates a QaQuestion. + /// The body of the request. + /// + /// Identifier. The resource name of the question. Format: + /// projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}/qaQuestions/{qa_question} + /// + public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaQuestion body, string name) + { + return new PatchRequest(this.service, body, name); + } + + /// Updates a QaQuestion. + public class PatchRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaQuestion body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Identifier. The resource name of the question. Format: + /// projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}/qaQuestions/{qa_question} + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// + /// Required. The list of fields to be updated. All possible fields can be updated by + /// passing `*`, or a subset of the following updateable fields can be provided: * + /// `abbreviation` * `answer_choices` * `answer_instructions` * `order` * `question_body` * + /// `tags` + /// + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaQuestion Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+/qaQuestions/[^/]+$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// Creates a QaScorecardRevision. + /// The body of the request. + /// Required. The parent resource of the QaScorecardRevision. + public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaScorecardRevision body, string parent) + { + return new CreateRequest(this.service, body, parent); + } + + /// Creates a QaScorecardRevision. + public class CreateRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaScorecardRevision body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// Required. The parent resource of the QaScorecardRevision. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Optional. A unique ID for the new QaScorecardRevision. This ID will become the final + /// component of the QaScorecardRevision's resource name. If no ID is specified, a + /// server-generated ID will be used. This value should be 4-64 characters and must match the + /// regular expression `^[a-z0-9-]{4,64}$`. Valid characters are `a-z-`. + /// + [Google.Apis.Util.RequestParameterAttribute("qaScorecardRevisionId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string QaScorecardRevisionId { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaScorecardRevision Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "create"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/revisions"; + + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+$", + }); + RequestParameters.Add("qaScorecardRevisionId", new Google.Apis.Discovery.Parameter + { + Name = "qaScorecardRevisionId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Deletes a QaScorecardRevision. + /// Required. The name of the QaScorecardRevision to delete. + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(this.service, name); + } + + /// Deletes a QaScorecardRevision. + public class DeleteRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the QaScorecardRevision to delete. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// + /// Optional. If set to true, all of this QaScorecardRevision's child resources will also be + /// deleted. Otherwise, the request will only succeed if it has none. + /// + [Google.Apis.Util.RequestParameterAttribute("force", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Force { get; set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+$", + }); + RequestParameters.Add("force", new Google.Apis.Discovery.Parameter + { + Name = "force", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Deploy a QaScorecardRevision. + /// The body of the request. + /// Required. The name of the QaScorecardRevision to deploy. + public virtual DeployRequest Deploy(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1DeployQaScorecardRevisionRequest body, string name) + { + return new DeployRequest(this.service, body, name); + } + + /// Deploy a QaScorecardRevision. + public class DeployRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Deploy request. + public DeployRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1DeployQaScorecardRevisionRequest body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// Required. The name of the QaScorecardRevision to deploy. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1DeployQaScorecardRevisionRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "deploy"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}:deploy"; + + /// Initializes Deploy parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+$", + }); + } + } + + /// Gets a QaScorecardRevision. + /// Required. The name of the QaScorecardRevision to get. + public virtual GetRequest Get(string name) + { + return new GetRequest(this.service, name); + } + + /// Gets a QaScorecardRevision. + public class GetRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the QaScorecardRevision to get. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+$", + }); + } + } + + /// Lists all revisions under the parent QaScorecard. + /// + /// Required. The parent resource of the scorecard revisions. To list all revisions of all + /// scorecards, substitute the QaScorecard ID with a '-' character. + /// + public virtual ListRequest List(string parent) + { + return new ListRequest(this.service, parent); + } + + /// Lists all revisions under the parent QaScorecard. + public class ListRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } + + /// + /// Required. The parent resource of the scorecard revisions. To list all revisions of all + /// scorecards, substitute the QaScorecard ID with a '-' character. + /// + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Optional. A filter to reduce results to a specific subset. Useful for querying scorecard + /// revisions with specific properties. + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + + /// + /// Optional. The maximum number of scorecard revisions to return in the response. If the value + /// is zero, the service will select a default size. A call might return fewer objects than + /// requested. A non-empty `next_page_token` in the response indicates that more data is + /// available. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// Optional. The value returned by the last `ListQaScorecardRevisionsResponse`. This value + /// indicates that this is a continuation of a prior `ListQaScorecardRevisions` call and that + /// the system should return the next page of data. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/revisions"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+$", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Fine tune one or more QaModels. + /// The body of the request. + /// Required. The parent resource for new fine tuning job instance. + public virtual TuneQaScorecardRevisionRequest TuneQaScorecardRevision(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1TuneQaScorecardRevisionRequest body, string parent) + { + return new TuneQaScorecardRevisionRequest(this.service, body, parent); + } + + /// Fine tune one or more QaModels. + public class TuneQaScorecardRevisionRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new TuneQaScorecardRevision request. + public TuneQaScorecardRevisionRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1TuneQaScorecardRevisionRequest body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// Required. The parent resource for new fine tuning job instance. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1TuneQaScorecardRevisionRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "tuneQaScorecardRevision"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}:tuneQaScorecardRevision"; + + /// Initializes TuneQaScorecardRevision parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+$", + }); + } + } + + /// Undeploy a QaScorecardRevision. + /// The body of the request. + /// Required. The name of the QaScorecardRevision to undeploy. + public virtual UndeployRequest Undeploy(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UndeployQaScorecardRevisionRequest body, string name) + { + return new UndeployRequest(this.service, body, name); + } + + /// Undeploy a QaScorecardRevision. + public class UndeployRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Undeploy request. + public UndeployRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UndeployQaScorecardRevisionRequest body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// Required. The name of the QaScorecardRevision to undeploy. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1UndeployQaScorecardRevisionRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "undeploy"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}:undeploy"; + + /// Initializes Undeploy parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+/revisions/[^/]+$", + }); + } + } + } + + /// Create a QaScorecard. + /// The body of the request. + /// Required. The parent resource of the QaScorecard. + public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaScorecard body, string parent) + { + return new CreateRequest(this.service, body, parent); + } + + /// Create a QaScorecard. + public class CreateRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaScorecard body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// Required. The parent resource of the QaScorecard. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Optional. A unique ID for the new QaScorecard. This ID will become the final component of the + /// QaScorecard's resource name. If no ID is specified, a server-generated ID will be used. This + /// value should be 4-64 characters and must match the regular expression `^[a-z0-9-]{4,64}$`. Valid + /// characters are `a-z-`. + /// + [Google.Apis.Util.RequestParameterAttribute("qaScorecardId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string QaScorecardId { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaScorecard Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "create"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/qaScorecards"; + + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + RequestParameters.Add("qaScorecardId", new Google.Apis.Discovery.Parameter + { + Name = "qaScorecardId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Deletes a QaScorecard. + /// Required. The name of the QaScorecard to delete. + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(this.service, name); + } + + /// Deletes a QaScorecard. + public class DeleteRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the QaScorecard to delete. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// + /// Optional. If set to true, all of this QaScorecard's child resources will also be deleted. + /// Otherwise, the request will only succeed if it has none. + /// + [Google.Apis.Util.RequestParameterAttribute("force", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Force { get; set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+$", + }); + RequestParameters.Add("force", new Google.Apis.Discovery.Parameter + { + Name = "force", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Gets a QaScorecard. + /// Required. The name of the QaScorecard to get. + public virtual GetRequest Get(string name) + { + return new GetRequest(this.service, name); + } + + /// Gets a QaScorecard. + public class GetRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the QaScorecard to get. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+$", + }); + } + } + + /// Lists QaScorecards. + /// Required. The parent resource of the scorecards. + public virtual ListRequest List(string parent) + { + return new ListRequest(this.service, parent); + } + + /// Lists QaScorecards. + public class ListRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } + + /// Required. The parent resource of the scorecards. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Optional. The maximum number of scorecards to return in the response. If the value is zero, the + /// service will select a default size. A call might return fewer objects than requested. A + /// non-empty `next_page_token` in the response indicates that more data is available. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// Optional. The value returned by the last `ListQaScorecardsResponse`. This value indicates that + /// this is a continuation of a prior `ListQaScorecards` call and that the system should return the + /// next page of data. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/qaScorecards"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Updates a QaScorecard. + /// The body of the request. + /// + /// Identifier. The scorecard name. Format: + /// projects/{project}/locations/{location}/qaScorecards/{qa_scorecard} + /// + public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaScorecard body, string name) + { + return new PatchRequest(this.service, body, name); + } + + /// Updates a QaScorecard. + public class PatchRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaScorecard body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Identifier. The scorecard name. Format: + /// projects/{project}/locations/{location}/qaScorecards/{qa_scorecard} + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// + /// Required. The list of fields to be updated. All possible fields can be updated by passing `*`, + /// or a subset of the following updateable fields can be provided: * `description` * `display_name` + /// + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QaScorecard Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/qaScorecards/[^/]+$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// Gets the Views resource. + public virtual ViewsResource Views { get; } + + /// The "views" collection of methods. + public class ViewsResource + { + private const string Resource = "views"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public ViewsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// Creates a view. + /// The body of the request. + /// + /// Required. The parent resource of the view. Required. The location to create a view for. Format: + /// `projects//locations/` or `projects//locations/` + /// + public virtual CreateRequest Create(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1View body, string parent) + { + return new CreateRequest(this.service, body, parent); + } + + /// Creates a view. + public class CreateRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Create request. + public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1View body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// + /// Required. The parent resource of the view. Required. The location to create a view for. Format: + /// `projects//locations/` or `projects//locations/` + /// + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1View Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "create"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/views"; + + /// Initializes Create parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + } + } + + /// Deletes a view. + /// Required. The name of the view to delete. + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(this.service, name); + } + + /// Deletes a view. + public class DeleteRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the view to delete. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/views/[^/]+$", + }); + } + } + + /// Gets a view. + /// Required. The name of the view to get. + public virtual GetRequest Get(string name) + { + return new GetRequest(this.service, name); + } + + /// Gets a view. + public class GetRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the view to get. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/views/[^/]+$", + }); + } + } + + /// Lists views. + /// Required. The parent resource of the views. + public virtual ListRequest List(string parent) + { + return new ListRequest(this.service, parent); + } + + /// Lists views. + public class ListRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } + + /// Required. The parent resource of the views. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// The maximum number of views to return in the response. If this value is zero, the service will + /// select a default size. A call may return fewer objects than requested. A non-empty + /// `next_page_token` in the response indicates that more data is available. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// The value returned by the last `ListViewsResponse`; indicates that this is a continuation of a + /// prior `ListViews` call and the system should return the next page of data. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/views"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Updates a view. + /// The body of the request. + /// + /// Immutable. The resource name of the view. Format: + /// projects/{project}/locations/{location}/views/{view} + /// + public virtual PatchRequest Patch(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1View body, string name) + { + return new PatchRequest(this.service, body, name); + } + + /// Updates a view. + public class PatchRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new Patch request. + public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1View body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Immutable. The resource name of the view. Format: + /// projects/{project}/locations/{location}/views/{view} + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// The list of fields to be updated. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1View Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "patch"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes Patch parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/views/[^/]+$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// Download feedback labels in bulk. + /// The body of the request. + /// Required. The parent resource for new feedback labels. + public virtual BulkDownloadFeedbackLabelsRequest BulkDownloadFeedbackLabels(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequest body, string parent) + { + return new BulkDownloadFeedbackLabelsRequest(this.service, body, parent); + } + + /// Download feedback labels in bulk. + public class BulkDownloadFeedbackLabelsRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new BulkDownloadFeedbackLabels request. + public BulkDownloadFeedbackLabelsRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequest body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// Required. The parent resource for new feedback labels. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "bulkDownloadFeedbackLabels"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}:bulkDownloadFeedbackLabels"; + + /// Initializes BulkDownloadFeedbackLabels parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + } + } + + /// Upload feedback labels in bulk. + /// The body of the request. + /// Required. The parent resource for new feedback labels. + public virtual BulkUploadFeedbackLabelsRequest BulkUploadFeedbackLabels(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequest body, string parent) + { + return new BulkUploadFeedbackLabelsRequest(this.service, body, parent); + } + + /// Upload feedback labels in bulk. + public class BulkUploadFeedbackLabelsRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new BulkUploadFeedbackLabels request. + public BulkUploadFeedbackLabelsRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequest body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// Required. The parent resource for new feedback labels. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "bulkUploadFeedbackLabels"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}:bulkUploadFeedbackLabels"; + + /// Initializes BulkUploadFeedbackLabels parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + } + } + + /// Gets location-level encryption key specification. + /// Required. The name of the encryption spec resource to get. + public virtual GetEncryptionSpecRequest GetEncryptionSpec(string name) + { + return new GetEncryptionSpecRequest(this.service, name); + } + + /// Gets location-level encryption key specification. + public class GetEncryptionSpecRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new GetEncryptionSpec request. + public GetEncryptionSpecRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the encryption spec resource to get. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "getEncryptionSpec"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes GetEncryptionSpec parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/encryptionSpec$", + }); + } + } + + /// Gets project-level settings. + /// Required. The name of the settings resource to get. + public virtual GetSettingsRequest GetSettings(string name) + { + return new GetSettingsRequest(this.service, name); + } + + /// Gets project-level settings. + public class GetSettingsRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new GetSettings request. + public GetSettingsRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// Required. The name of the settings resource to get. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "getSettings"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes GetSettings parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/settings$", + }); + } + } + + /// List all feedback labels by project number. + /// Required. The parent resource of all feedback labels per project. + public virtual ListAllFeedbackLabelsRequest ListAllFeedbackLabels(string parent) + { + return new ListAllFeedbackLabelsRequest(this.service, parent); + } + + /// List all feedback labels by project number. + public class ListAllFeedbackLabelsRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new ListAllFeedbackLabels request. + public ListAllFeedbackLabelsRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } + + /// Required. The parent resource of all feedback labels per project. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Optional. A filter to reduce results to a specific subset in the entire project. Supports + /// disjunctions (OR) and conjunctions (AND). Supported fields: * `issue_model_id` * `qa_question_id` * + /// `min_create_time` * `max_create_time` * `min_update_time` * `max_update_time` * + /// `feedback_label_type`: QUALITY_AI, TOPIC_MODELING + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + + /// + /// Optional. The maximum number of feedback labels to return in the response. A valid page size ranges + /// from 0 to 100,000 inclusive. If the page size is zero or unspecified, a default page size of 100 + /// will be chosen. Note that a call might return fewer results than the requested page size. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// Optional. The value returned by the last `ListAllFeedbackLabelsResponse`. This value indicates that + /// this is a continuation of a prior `ListAllFeedbackLabels` call and that the system should return the + /// next page of data. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Gets the method name. + public override string MethodName => "listAllFeedbackLabels"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}:listAllFeedbackLabels"; + + /// Initializes ListAllFeedbackLabels parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + RequestParameters.Add("filter", new Google.Apis.Discovery.Parameter + { + Name = "filter", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Query metrics. + /// The body of the request. + /// + /// Required. The location of the data. "projects/{project}/locations/{location}" + /// + public virtual QueryMetricsRequest QueryMetrics(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QueryMetricsRequest body, string location) + { + return new QueryMetricsRequest(this.service, body, location); + } + + /// Query metrics. + public class QueryMetricsRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new QueryMetrics request. + public QueryMetricsRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QueryMetricsRequest body, string location) : base(service) + { + Location = location; + Body = body; + InitParameters(); + } + + /// Required. The location of the data. "projects/{project}/locations/{location}" + [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Location { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1QueryMetricsRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "queryMetrics"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+location}:queryMetrics"; + + /// Initializes QueryMetrics parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("location", new Google.Apis.Discovery.Parameter + { + Name = "location", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + } + } + + /// Updates project-level settings. + /// The body of the request. + /// + /// Immutable. The resource name of the settings resource. Format: + /// projects/{project}/locations/{location}/settings + /// + public virtual UpdateSettingsRequest UpdateSettings(Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Settings body, string name) + { + return new UpdateSettingsRequest(this.service, body, name); + } + + /// Updates project-level settings. + public class UpdateSettingsRequest : ContactcenterinsightsBaseServiceRequest + { + /// Constructs a new UpdateSettings request. + public UpdateSettingsRequest(Google.Apis.Services.IClientService service, Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Settings body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Immutable. The resource name of the settings resource. Format: + /// projects/{project}/locations/{location}/settings + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Required. The list of fields to be updated. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Settings Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "updateSettings"; + + /// Gets the HTTP method. + public override string HttpMethod => "PATCH"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}"; + + /// Initializes UpdateSettings parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/settings$", + }); + RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter + { + Name = "updateMask", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + } +} +namespace Google.Apis.Contactcenterinsights.v1.Data +{ + /// The analysis resource. + public class GoogleCloudContactcenterinsightsV1Analysis : Google.Apis.Requests.IDirectResponseSchema + { + /// Output only. The result of the analysis, which is populated when the analysis finishes. + [Newtonsoft.Json.JsonPropertyAttribute("analysisResult")] + public virtual GoogleCloudContactcenterinsightsV1AnalysisResult AnalysisResult { get; set; } + + /// + /// To select the annotators to run and the phrase matchers to use (if any). If not specified, all annotators + /// will be run. + /// + [Newtonsoft.Json.JsonPropertyAttribute("annotatorSelector")] + public virtual GoogleCloudContactcenterinsightsV1AnnotatorSelector AnnotatorSelector { get; set; } + + private string _createTimeRaw; + + private object _createTime; + + /// + /// Output only. The time at which the analysis was created, which occurs when the long-running operation + /// completes. + /// + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw + { + get => _createTimeRaw; + set + { + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime + { + get => _createTime; + set + { + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// + /// Immutable. The resource name of the analysis. Format: + /// projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis} + /// + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + private string _requestTimeRaw; + + private object _requestTime; + + /// Output only. The time at which the analysis was requested. + [Newtonsoft.Json.JsonPropertyAttribute("requestTime")] + public virtual string RequestTimeRaw + { + get => _requestTimeRaw; + set + { + _requestTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _requestTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use RequestTimeDateTimeOffset instead.")] + public virtual object RequestTime + { + get => _requestTime; + set + { + _requestTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _requestTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? RequestTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(RequestTimeRaw); + set => RequestTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The result of an analysis. + public class GoogleCloudContactcenterinsightsV1AnalysisResult : Google.Apis.Requests.IDirectResponseSchema + { + /// Call-specific metadata created by the analysis. + [Newtonsoft.Json.JsonPropertyAttribute("callAnalysisMetadata")] + public virtual GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata CallAnalysisMetadata { get; set; } + + private string _endTimeRaw; + + private object _endTime; + + /// The time at which the analysis ended. + [Newtonsoft.Json.JsonPropertyAttribute("endTime")] + public virtual string EndTimeRaw + { + get => _endTimeRaw; + set + { + _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _endTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] + public virtual object EndTime + { + get => _endTime; + set + { + _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _endTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? EndTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); + set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Call-specific metadata created during analysis. + public class GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata : Google.Apis.Requests.IDirectResponseSchema + { + /// A list of call annotations that apply to this call. + [Newtonsoft.Json.JsonPropertyAttribute("annotations")] + public virtual System.Collections.Generic.IList Annotations { get; set; } + + /// All the entities in the call. + [Newtonsoft.Json.JsonPropertyAttribute("entities")] + public virtual System.Collections.Generic.IDictionary Entities { get; set; } + + /// All the matched intents in the call. + [Newtonsoft.Json.JsonPropertyAttribute("intents")] + public virtual System.Collections.Generic.IDictionary Intents { get; set; } + + /// Overall conversation-level issue modeling result. + [Newtonsoft.Json.JsonPropertyAttribute("issueModelResult")] + public virtual GoogleCloudContactcenterinsightsV1IssueModelResult IssueModelResult { get; set; } + + /// All the matched phrase matchers in the call. + [Newtonsoft.Json.JsonPropertyAttribute("phraseMatchers")] + public virtual System.Collections.Generic.IDictionary PhraseMatchers { get; set; } + + /// Results of scoring QaScorecards. + [Newtonsoft.Json.JsonPropertyAttribute("qaScorecardResults")] + public virtual System.Collections.Generic.IList QaScorecardResults { get; set; } + + /// Overall conversation-level sentiment for each channel of the call. + [Newtonsoft.Json.JsonPropertyAttribute("sentiments")] + public virtual System.Collections.Generic.IList Sentiments { get; set; } + + /// Overall conversation-level silence during the call. + [Newtonsoft.Json.JsonPropertyAttribute("silence")] + public virtual GoogleCloudContactcenterinsightsV1ConversationLevelSilence Silence { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// The CCAI Insights project wide analysis rule. This rule will be applied to all conversations that match the + /// filter defined in the rule. For a conversation matches the filter, the annotators specified in the rule will be + /// run. If a conversation matches multiple rules, a union of all the annotators will be run. One project can have + /// multiple analysis rules. + /// + public class GoogleCloudContactcenterinsightsV1AnalysisRule : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// If true, apply this rule to conversations. Otherwise, this rule is inactive and saved as a draft. + /// + [Newtonsoft.Json.JsonPropertyAttribute("active")] + public virtual System.Nullable Active { get; set; } + + /// + /// Percentage of conversations that we should apply this analysis setting automatically, between [0, 1]. For + /// example, 0.1 means 10%. Conversations are sampled in a determenestic way. The original runtime_percentage + /// &amp; upload percentage will be replaced by defining filters on the conversation. + /// + [Newtonsoft.Json.JsonPropertyAttribute("analysisPercentage")] + public virtual System.Nullable AnalysisPercentage { get; set; } + + /// + /// Selector of annotators to run and the phrase matchers to use for conversations that matches the + /// conversation_filter. If not specified, NO annotators will be run. + /// + [Newtonsoft.Json.JsonPropertyAttribute("annotatorSelector")] + public virtual GoogleCloudContactcenterinsightsV1AnnotatorSelector AnnotatorSelector { get; set; } + + /// + /// Filter for the conversations that should apply this analysis rule. An empty filter means this analysis rule + /// applies to all conversations. + /// + [Newtonsoft.Json.JsonPropertyAttribute("conversationFilter")] + public virtual string ConversationFilter { get; set; } + + private string _createTimeRaw; + + private object _createTime; + + /// Output only. The time at which this analysis rule was created. + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw + { + get => _createTimeRaw; + set + { + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime + { + get => _createTime; + set + { + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// Display Name of the analysis rule. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + + /// + /// Identifier. The resource name of the analysis rule. Format: + /// projects/{project}/locations/{location}/analysisRules/{analysis_rule} + /// + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + private string _updateTimeRaw; + + private object _updateTime; + + /// Output only. The most recent time at which this analysis rule was updated. + [Newtonsoft.Json.JsonPropertyAttribute("updateTime")] + public virtual string UpdateTimeRaw + { + get => _updateTimeRaw; + set + { + _updateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _updateTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use UpdateTimeDateTimeOffset instead.")] + public virtual object UpdateTime + { + get => _updateTime; + set + { + _updateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _updateTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(UpdateTimeRaw); + set => UpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// A point in a conversation that marks the start or the end of an annotation. + public class GoogleCloudContactcenterinsightsV1AnnotationBoundary : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// The index in the sequence of transcribed pieces of the conversation where the boundary is located. This + /// index starts at zero. + /// + [Newtonsoft.Json.JsonPropertyAttribute("transcriptIndex")] + public virtual System.Nullable TranscriptIndex { get; set; } + + /// + /// The word index of this boundary with respect to the first word in the transcript piece. This index starts at + /// zero. + /// + [Newtonsoft.Json.JsonPropertyAttribute("wordIndex")] + public virtual System.Nullable WordIndex { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Selector of all available annotators and phrase matchers to run. + public class GoogleCloudContactcenterinsightsV1AnnotatorSelector : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// The issue model to run. If not provided, the most recently deployed topic model will be used. The provided + /// issue model will only be used for inference if the issue model is deployed and if run_issue_model_annotator + /// is set to true. If more than one issue model is provided, only the first provided issue model will be used + /// for inference. + /// + [Newtonsoft.Json.JsonPropertyAttribute("issueModels")] + public virtual System.Collections.Generic.IList IssueModels { get; set; } + + /// + /// The list of phrase matchers to run. If not provided, all active phrase matchers will be used. If inactive + /// phrase matchers are provided, they will not be used. Phrase matchers will be run only if + /// run_phrase_matcher_annotator is set to true. Format: + /// projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher} + /// + [Newtonsoft.Json.JsonPropertyAttribute("phraseMatchers")] + public virtual System.Collections.Generic.IList PhraseMatchers { get; set; } + + /// Configuration for the QA annotator. + [Newtonsoft.Json.JsonPropertyAttribute("qaConfig")] + public virtual GoogleCloudContactcenterinsightsV1AnnotatorSelectorQaConfig QaConfig { get; set; } + + /// Whether to run the entity annotator. + [Newtonsoft.Json.JsonPropertyAttribute("runEntityAnnotator")] + public virtual System.Nullable RunEntityAnnotator { get; set; } + + /// Whether to run the intent annotator. + [Newtonsoft.Json.JsonPropertyAttribute("runIntentAnnotator")] + public virtual System.Nullable RunIntentAnnotator { get; set; } + + /// Whether to run the interruption annotator. + [Newtonsoft.Json.JsonPropertyAttribute("runInterruptionAnnotator")] + public virtual System.Nullable RunInterruptionAnnotator { get; set; } + + /// + /// Whether to run the issue model annotator. A model should have already been deployed for this to take effect. + /// + [Newtonsoft.Json.JsonPropertyAttribute("runIssueModelAnnotator")] + public virtual System.Nullable RunIssueModelAnnotator { get; set; } + + /// Whether to run the active phrase matcher annotator(s). + [Newtonsoft.Json.JsonPropertyAttribute("runPhraseMatcherAnnotator")] + public virtual System.Nullable RunPhraseMatcherAnnotator { get; set; } + + /// Whether to run the QA annotator. + [Newtonsoft.Json.JsonPropertyAttribute("runQaAnnotator")] + public virtual System.Nullable RunQaAnnotator { get; set; } + + /// Whether to run the sentiment annotator. + [Newtonsoft.Json.JsonPropertyAttribute("runSentimentAnnotator")] + public virtual System.Nullable RunSentimentAnnotator { get; set; } + + /// Whether to run the silence annotator. + [Newtonsoft.Json.JsonPropertyAttribute("runSilenceAnnotator")] + public virtual System.Nullable RunSilenceAnnotator { get; set; } + + /// Whether to run the summarization annotator. + [Newtonsoft.Json.JsonPropertyAttribute("runSummarizationAnnotator")] + public virtual System.Nullable RunSummarizationAnnotator { get; set; } + + /// Configuration for the summarization annotator. + [Newtonsoft.Json.JsonPropertyAttribute("summarizationConfig")] + public virtual GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfig SummarizationConfig { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Configuration for the QA feature. + public class GoogleCloudContactcenterinsightsV1AnnotatorSelectorQaConfig : Google.Apis.Requests.IDirectResponseSchema + { + /// A manual list of scorecards to score. + [Newtonsoft.Json.JsonPropertyAttribute("scorecardList")] + public virtual GoogleCloudContactcenterinsightsV1AnnotatorSelectorQaConfigScorecardList ScorecardList { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Container for a list of scorecards. + public class GoogleCloudContactcenterinsightsV1AnnotatorSelectorQaConfigScorecardList : Google.Apis.Requests.IDirectResponseSchema + { + /// List of QaScorecardRevisions. + [Newtonsoft.Json.JsonPropertyAttribute("qaScorecardRevisions")] + public virtual System.Collections.Generic.IList QaScorecardRevisions { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Configuration for summarization. + public class GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfig : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Resource name of the Dialogflow conversation profile. Format: + /// projects/{project}/locations/{location}/conversationProfiles/{conversation_profile} + /// + [Newtonsoft.Json.JsonPropertyAttribute("conversationProfile")] + public virtual string ConversationProfile { get; set; } + + /// Default summarization model to be used. + [Newtonsoft.Json.JsonPropertyAttribute("summarizationModel")] + public virtual string SummarizationModel { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The feedback that the customer has about a certain answer in the conversation. + public class GoogleCloudContactcenterinsightsV1AnswerFeedback : Google.Apis.Requests.IDirectResponseSchema + { + /// Indicates whether an answer or item was clicked by the human agent. + [Newtonsoft.Json.JsonPropertyAttribute("clicked")] + public virtual System.Nullable Clicked { get; set; } + + /// The correctness level of an answer. + [Newtonsoft.Json.JsonPropertyAttribute("correctnessLevel")] + public virtual string CorrectnessLevel { get; set; } + + /// + /// Indicates whether an answer or item was displayed to the human agent in the agent desktop UI. + /// + [Newtonsoft.Json.JsonPropertyAttribute("displayed")] + public virtual System.Nullable Displayed { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Agent Assist Article Suggestion data. + public class GoogleCloudContactcenterinsightsV1ArticleSuggestionData : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// The system's confidence score that this article is a good match for this conversation, ranging from 0.0 + /// (completely uncertain) to 1.0 (completely certain). + /// + [Newtonsoft.Json.JsonPropertyAttribute("confidenceScore")] + public virtual System.Nullable ConfidenceScore { get; set; } + + /// + /// Map that contains metadata about the Article Suggestion and the document that it originates from. + /// + [Newtonsoft.Json.JsonPropertyAttribute("metadata")] + public virtual System.Collections.Generic.IDictionary Metadata { get; set; } + + /// + /// The name of the answer record. Format: projects/{project}/locations/{location}/answerRecords/{answer_record} + /// + [Newtonsoft.Json.JsonPropertyAttribute("queryRecord")] + public virtual string QueryRecord { get; set; } + + /// + /// The knowledge document that this answer was extracted from. Format: + /// projects/{project}/knowledgeBases/{knowledge_base}/documents/{document} + /// + [Newtonsoft.Json.JsonPropertyAttribute("source")] + public virtual string Source { get; set; } + + /// Article title. + [Newtonsoft.Json.JsonPropertyAttribute("title")] + public virtual string Title { get; set; } + + /// Article URI. + [Newtonsoft.Json.JsonPropertyAttribute("uri")] + public virtual string Uri { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The metadata for a bulk analyze conversations operation. + public class GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsMetadata : Google.Apis.Requests.IDirectResponseSchema + { + /// The number of requested analyses that have completed successfully so far. + [Newtonsoft.Json.JsonPropertyAttribute("completedAnalysesCount")] + public virtual System.Nullable CompletedAnalysesCount { get; set; } + + private string _createTimeRaw; + + private object _createTime; + + /// The time the operation was created. + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw + { + get => _createTimeRaw; + set + { + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime + { + get => _createTime; + set + { + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + private string _endTimeRaw; + + private object _endTime; + + /// The time the operation finished running. + [Newtonsoft.Json.JsonPropertyAttribute("endTime")] + public virtual string EndTimeRaw + { + get => _endTimeRaw; + set + { + _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _endTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] + public virtual object EndTime + { + get => _endTime; + set + { + _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _endTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? EndTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); + set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// The number of requested analyses that have failed so far. + [Newtonsoft.Json.JsonPropertyAttribute("failedAnalysesCount")] + public virtual System.Nullable FailedAnalysesCount { get; set; } + + /// + /// Output only. Partial errors during bulk analyze operation that might cause the operation output to be + /// incomplete. + /// + [Newtonsoft.Json.JsonPropertyAttribute("partialErrors")] + public virtual System.Collections.Generic.IList PartialErrors { get; set; } + + /// The original request for bulk analyze. + [Newtonsoft.Json.JsonPropertyAttribute("request")] + public virtual GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest Request { get; set; } + + /// + /// Total number of analyses requested. Computed by the number of conversations returned by `filter` multiplied + /// by `analysis_percentage` in the request. + /// + [Newtonsoft.Json.JsonPropertyAttribute("totalRequestedAnalysesCount")] + public virtual System.Nullable TotalRequestedAnalysesCount { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The request to analyze conversations in bulk. + public class GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. Percentage of selected conversation to analyze, between [0, 100]. + [Newtonsoft.Json.JsonPropertyAttribute("analysisPercentage")] + public virtual System.Nullable AnalysisPercentage { get; set; } + + /// + /// To select the annotators to run and the phrase matchers to use (if any). If not specified, all annotators + /// will be run. + /// + [Newtonsoft.Json.JsonPropertyAttribute("annotatorSelector")] + public virtual GoogleCloudContactcenterinsightsV1AnnotatorSelector AnnotatorSelector { get; set; } + + /// Required. Filter used to select the subset of conversations to analyze. + [Newtonsoft.Json.JsonPropertyAttribute("filter")] + public virtual string Filter { get; set; } + + /// Required. The parent resource to create analyses in. + [Newtonsoft.Json.JsonPropertyAttribute("parent")] + public virtual string Parent { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The response for a bulk analyze conversations operation. + public class GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// Count of failed analyses. + [Newtonsoft.Json.JsonPropertyAttribute("failedAnalysisCount")] + public virtual System.Nullable FailedAnalysisCount { get; set; } + + /// Count of successful analyses. + [Newtonsoft.Json.JsonPropertyAttribute("successfulAnalysisCount")] + public virtual System.Nullable SuccessfulAnalysisCount { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The metadata for a bulk delete conversations operation. + public class GoogleCloudContactcenterinsightsV1BulkDeleteConversationsMetadata : Google.Apis.Requests.IDirectResponseSchema + { + private string _createTimeRaw; + + private object _createTime; + + /// The time the operation was created. + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw + { + get => _createTimeRaw; + set + { + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime + { + get => _createTime; + set + { + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + private string _endTimeRaw; + + private object _endTime; + + /// The time the operation finished running. + [Newtonsoft.Json.JsonPropertyAttribute("endTime")] + public virtual string EndTimeRaw + { + get => _endTimeRaw; + set + { + _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _endTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] + public virtual object EndTime + { + get => _endTime; + set + { + _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _endTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? EndTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); + set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// + /// Partial errors during bulk delete conversations operation that might cause the operation output to be + /// incomplete. + /// + [Newtonsoft.Json.JsonPropertyAttribute("partialErrors")] + public virtual System.Collections.Generic.IList PartialErrors { get; set; } + + /// The original request for bulk delete. + [Newtonsoft.Json.JsonPropertyAttribute("request")] + public virtual GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest Request { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The request to delete conversations in bulk. + public class GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Filter used to select the subset of conversations to delete. + [Newtonsoft.Json.JsonPropertyAttribute("filter")] + public virtual string Filter { get; set; } + + /// + /// If set to true, all of this conversation's analyses will also be deleted. Otherwise, the request will only + /// succeed if the conversation has no analyses. + /// + [Newtonsoft.Json.JsonPropertyAttribute("force")] + public virtual System.Nullable Force { get; set; } + + /// Maximum number of conversations to delete. + [Newtonsoft.Json.JsonPropertyAttribute("maxDeleteCount")] + public virtual System.Nullable MaxDeleteCount { get; set; } + + /// + /// Required. The parent resource to delete conversations from. Format: projects/{project}/locations/{location} + /// + [Newtonsoft.Json.JsonPropertyAttribute("parent")] + public virtual string Parent { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The response for a bulk delete conversations operation. + public class GoogleCloudContactcenterinsightsV1BulkDeleteConversationsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Metadata for the BulkDownloadFeedbackLabel endpoint. + public class GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsMetadata : Google.Apis.Requests.IDirectResponseSchema + { + private string _createTimeRaw; + + private object _createTime; + + /// Output only. The time the operation was created. + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw + { + get => _createTimeRaw; + set + { + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime + { + get => _createTime; + set + { + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// Output only. Statistics for BulkDownloadFeedbackLabels operation. + [Newtonsoft.Json.JsonPropertyAttribute("downloadStats")] + public virtual GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsMetadataDownloadStats DownloadStats { get; set; } + + private string _endTimeRaw; + + private object _endTime; + + /// Output only. The time the operation finished running. + [Newtonsoft.Json.JsonPropertyAttribute("endTime")] + public virtual string EndTimeRaw + { + get => _endTimeRaw; + set + { + _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _endTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] + public virtual object EndTime + { + get => _endTime; + set + { + _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _endTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? EndTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); + set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// + /// Partial errors during ingest operation that might cause the operation output to be incomplete. + /// + [Newtonsoft.Json.JsonPropertyAttribute("partialErrors")] + public virtual System.Collections.Generic.IList PartialErrors { get; set; } + + /// Output only. The original request for download. + [Newtonsoft.Json.JsonPropertyAttribute("request")] + public virtual GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequest Request { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Statistics for BulkDownloadFeedbackLabels operation. + public class GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsMetadataDownloadStats : Google.Apis.Requests.IDirectResponseSchema + { + /// Output only. Full name of the files written to Cloud storage. + [Newtonsoft.Json.JsonPropertyAttribute("fileNames")] + public virtual System.Collections.Generic.IList FileNames { get; set; } + + /// The number of objects processed during the download operation. + [Newtonsoft.Json.JsonPropertyAttribute("processedObjectCount")] + public virtual System.Nullable ProcessedObjectCount { get; set; } + + /// + /// The number of new feedback labels downloaded during this operation. Different from "processed" because some + /// labels might not be downloaded because an error. + /// + [Newtonsoft.Json.JsonPropertyAttribute("successfulDownloadCount")] + public virtual System.Nullable SuccessfulDownloadCount { get; set; } + + /// Total number of files written to the provided Cloud Storage bucket. + [Newtonsoft.Json.JsonPropertyAttribute("totalFilesWritten")] + public virtual System.Nullable TotalFilesWritten { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Request for the BulkDownloadFeedbackLabel endpoint. + public class GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Optional. Filter parent conversations to download feedback labels for. When specified, the feedback labels + /// will be downloaded for the conversations that match the filter. If `template_qa_scorecard_id` is set, all + /// the conversations that match the filter will be paired with the questions under the scorecard for labeling. + /// + [Newtonsoft.Json.JsonPropertyAttribute("conversationFilter")] + public virtual string ConversationFilter { get; set; } + + /// Optional. The type of feedback labels that will be downloaded. + [Newtonsoft.Json.JsonPropertyAttribute("feedbackLabelType")] + public virtual string FeedbackLabelType { get; set; } + + /// + /// Optional. A filter to reduce results to a specific subset. Supports disjunctions (OR) and conjunctions + /// (AND). Supported fields: * `issue_model_id` * `qa_question_id` * `qa_scorecard_id` * `min_create_time` * + /// `max_create_time` * `min_update_time` * `max_update_time` * `feedback_label_type`: QUALITY_AI, + /// TOPIC_MODELING + /// + [Newtonsoft.Json.JsonPropertyAttribute("filter")] + public virtual string Filter { get; set; } + + /// A cloud storage bucket destination. + [Newtonsoft.Json.JsonPropertyAttribute("gcsDestination")] + public virtual GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequestGcsDestination GcsDestination { get; set; } + + /// + /// Optional. Limits the maximum number of feedback labels that will be downloaded. The first `N` feedback + /// labels will be downloaded. + /// + [Newtonsoft.Json.JsonPropertyAttribute("maxDownloadCount")] + public virtual System.Nullable MaxDownloadCount { get; set; } + + /// Required. The parent resource for new feedback labels. + [Newtonsoft.Json.JsonPropertyAttribute("parent")] + public virtual string Parent { get; set; } + + /// + /// Optional. If set, a template for labeling conversations and scorecard questions will be created from the + /// conversation_filter and the questions under the scorecard(s). The feedback label `filter` will be ignored. + /// + [Newtonsoft.Json.JsonPropertyAttribute("templateQaScorecardId")] + public virtual System.Collections.Generic.IList TemplateQaScorecardId { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Google Cloud Storage Object details to write the feedback labels to. + public class GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsRequestGcsDestination : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Optional. Add whitespace to the JSON file. Makes easier to read, but increases file size. Only applicable + /// for JSON format. + /// + [Newtonsoft.Json.JsonPropertyAttribute("addWhitespace")] + public virtual System.Nullable AddWhitespace { get; set; } + + /// + /// Optional. Always print fields with no presence. This is useful for printing fields that are not set, like + /// implicit 0 value or empty lists/maps. Only applicable for JSON format. + /// + [Newtonsoft.Json.JsonPropertyAttribute("alwaysPrintEmptyFields")] + public virtual System.Nullable AlwaysPrintEmptyFields { get; set; } + + /// Required. File format in which the labels will be exported. + [Newtonsoft.Json.JsonPropertyAttribute("format")] + public virtual string Format { get; set; } + + /// + /// Required. The Google Cloud Storage URI to write the feedback labels to. The file name will be used as a + /// prefix for the files written to the bucket if the output needs to be split across multiple files, otherwise + /// it will be used as is. The file extension will be appended to the file name based on the format selected. + /// E.g. `gs://bucket_name/object_uri_prefix` + /// + [Newtonsoft.Json.JsonPropertyAttribute("objectUri")] + public virtual string ObjectUri { get; set; } + + /// Optional. The number of records per file. Applicable for either format. + [Newtonsoft.Json.JsonPropertyAttribute("recordsPerFileCount")] + public virtual System.Nullable RecordsPerFileCount { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Response for the BulkDownloadFeedbackLabel endpoint. + public class GoogleCloudContactcenterinsightsV1BulkDownloadFeedbackLabelsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The request for bulk uploading feedback labels. + public class GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// A cloud storage bucket source. + [Newtonsoft.Json.JsonPropertyAttribute("gcsSource")] + public virtual GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequestGcsSource GcsSource { get; set; } + + /// + /// Optional. If set, upload will not happen and the labels will be validated. If not set, then default behavior + /// will be to upload the labels after validation is complete. + /// + [Newtonsoft.Json.JsonPropertyAttribute("validateOnly")] + public virtual System.Nullable ValidateOnly { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Google Cloud Storage Object details to get the feedback label file from. + public class GoogleCloudContactcenterinsightsV1BulkUploadFeedbackLabelsRequestGcsSource : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. File format which will be ingested. + [Newtonsoft.Json.JsonPropertyAttribute("format")] + public virtual string Format { get; set; } + + /// + /// Required. The Google Cloud Storage URI of the file to import. Format: `gs://bucket_name/object_name` + /// + [Newtonsoft.Json.JsonPropertyAttribute("objectUri")] + public virtual string ObjectUri { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Response of querying an issue model's statistics. + public class GoogleCloudContactcenterinsightsV1CalculateIssueModelStatsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// The latest label statistics for the queried issue model. Includes results on both training data and data + /// labeled after deployment. + /// + [Newtonsoft.Json.JsonPropertyAttribute("currentStats")] + public virtual GoogleCloudContactcenterinsightsV1IssueModelLabelStats CurrentStats { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The response for calculating conversation statistics. + public class GoogleCloudContactcenterinsightsV1CalculateStatsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// The average duration of all conversations. The average is calculated using only conversations that have a + /// time duration. + /// + [Newtonsoft.Json.JsonPropertyAttribute("averageDuration")] + public virtual object AverageDuration { get; set; } + + /// The average number of turns per conversation. + [Newtonsoft.Json.JsonPropertyAttribute("averageTurnCount")] + public virtual System.Nullable AverageTurnCount { get; set; } + + /// The total number of conversations. + [Newtonsoft.Json.JsonPropertyAttribute("conversationCount")] + public virtual System.Nullable ConversationCount { get; set; } + + /// + /// A time series representing the count of conversations created over time that match that requested filter + /// criteria. + /// + [Newtonsoft.Json.JsonPropertyAttribute("conversationCountTimeSeries")] + public virtual GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeries ConversationCountTimeSeries { get; set; } + + /// + /// A map associating each custom highlighter resource name with its respective number of matches in the set of + /// conversations. + /// + [Newtonsoft.Json.JsonPropertyAttribute("customHighlighterMatches")] + public virtual System.Collections.Generic.IDictionary> CustomHighlighterMatches { get; set; } + + /// + /// A map associating each issue resource name with its respective number of matches in the set of + /// conversations. Key has the format: `projects//locations//issueModels//issues/` Deprecated, use + /// `issue_matches_stats` field instead. + /// + [Newtonsoft.Json.JsonPropertyAttribute("issueMatches")] + public virtual System.Collections.Generic.IDictionary> IssueMatches { get; set; } + + /// + /// A map associating each issue resource name with its respective number of matches in the set of + /// conversations. Key has the format: `projects//locations//issueModels//issues/` + /// + [Newtonsoft.Json.JsonPropertyAttribute("issueMatchesStats")] + public virtual System.Collections.Generic.IDictionary IssueMatchesStats { get; set; } + + /// + /// A map associating each smart highlighter display name with its respective number of matches in the set of + /// conversations. + /// + [Newtonsoft.Json.JsonPropertyAttribute("smartHighlighterMatches")] + public virtual System.Collections.Generic.IDictionary> SmartHighlighterMatches { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// A time series representing conversations over time. + public class GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeries : Google.Apis.Requests.IDirectResponseSchema + { + /// The duration of each interval. + [Newtonsoft.Json.JsonPropertyAttribute("intervalDuration")] + public virtual object IntervalDuration { get; set; } + + /// + /// An ordered list of intervals from earliest to latest, where each interval represents the number of + /// conversations that transpired during the time window. + /// + [Newtonsoft.Json.JsonPropertyAttribute("points")] + public virtual System.Collections.Generic.IList Points { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// A single interval in a time series. + public class GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeriesInterval : Google.Apis.Requests.IDirectResponseSchema + { + /// The number of conversations created in this interval. + [Newtonsoft.Json.JsonPropertyAttribute("conversationCount")] + public virtual System.Nullable ConversationCount { get; set; } + + private string _startTimeRaw; + + private object _startTime; + + /// The start time of this interval. + [Newtonsoft.Json.JsonPropertyAttribute("startTime")] + public virtual string StartTimeRaw + { + get => _startTimeRaw; + set + { + _startTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _startTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use StartTimeDateTimeOffset instead.")] + public virtual object StartTime + { + get => _startTime; + set + { + _startTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _startTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? StartTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(StartTimeRaw); + set => StartTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// A piece of metadata that applies to a window of a call. + public class GoogleCloudContactcenterinsightsV1CallAnnotation : Google.Apis.Requests.IDirectResponseSchema + { + /// The boundary in the conversation where the annotation ends, inclusive. + [Newtonsoft.Json.JsonPropertyAttribute("annotationEndBoundary")] + public virtual GoogleCloudContactcenterinsightsV1AnnotationBoundary AnnotationEndBoundary { get; set; } + + /// The boundary in the conversation where the annotation starts, inclusive. + [Newtonsoft.Json.JsonPropertyAttribute("annotationStartBoundary")] + public virtual GoogleCloudContactcenterinsightsV1AnnotationBoundary AnnotationStartBoundary { get; set; } + + /// + /// The channel of the audio where the annotation occurs. For single-channel audio, this field is not populated. + /// + [Newtonsoft.Json.JsonPropertyAttribute("channelTag")] + public virtual System.Nullable ChannelTag { get; set; } + + /// Data specifying an entity mention. + [Newtonsoft.Json.JsonPropertyAttribute("entityMentionData")] + public virtual GoogleCloudContactcenterinsightsV1EntityMentionData EntityMentionData { get; set; } + + /// Data specifying a hold. + [Newtonsoft.Json.JsonPropertyAttribute("holdData")] + public virtual GoogleCloudContactcenterinsightsV1HoldData HoldData { get; set; } + + /// Data specifying an intent match. + [Newtonsoft.Json.JsonPropertyAttribute("intentMatchData")] + public virtual GoogleCloudContactcenterinsightsV1IntentMatchData IntentMatchData { get; set; } - /// Gets or sets the body of this request. - Google.Apis.Contactcenterinsights.v1.Data.GoogleCloudContactcenterinsightsV1Settings Body { get; set; } + /// Data specifying an interruption. + [Newtonsoft.Json.JsonPropertyAttribute("interruptionData")] + public virtual GoogleCloudContactcenterinsightsV1InterruptionData InterruptionData { get; set; } - /// Returns the body of the request. - protected override object GetBody() => Body; + /// Data specifying an issue match. + [Newtonsoft.Json.JsonPropertyAttribute("issueMatchData")] + public virtual GoogleCloudContactcenterinsightsV1IssueMatchData IssueMatchData { get; set; } - /// Gets the method name. - public override string MethodName => "updateSettings"; + /// Data specifying a phrase match. + [Newtonsoft.Json.JsonPropertyAttribute("phraseMatchData")] + public virtual GoogleCloudContactcenterinsightsV1PhraseMatchData PhraseMatchData { get; set; } - /// Gets the HTTP method. - public override string HttpMethod => "PATCH"; + /// Data specifying sentiment. + [Newtonsoft.Json.JsonPropertyAttribute("sentimentData")] + public virtual GoogleCloudContactcenterinsightsV1SentimentData SentimentData { get; set; } - /// Gets the REST path. - public override string RestPath => "v1/{+name}"; + /// Data specifying silence. + [Newtonsoft.Json.JsonPropertyAttribute("silenceData")] + public virtual GoogleCloudContactcenterinsightsV1SilenceData SilenceData { get; set; } - /// Initializes UpdateSettings parameter list. - protected override void InitParameters() - { - base.InitParameters(); - RequestParameters.Add("name", new Google.Apis.Discovery.Parameter - { - Name = "name", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = @"^projects/[^/]+/locations/[^/]+/settings$", - }); - RequestParameters.Add("updateMask", new Google.Apis.Discovery.Parameter - { - Name = "updateMask", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - } - } + /// The ETag of the item. + public virtual string ETag { get; set; } } -} -namespace Google.Apis.Contactcenterinsights.v1.Data -{ - /// The analysis resource. - public class GoogleCloudContactcenterinsightsV1Analysis : Google.Apis.Requests.IDirectResponseSchema - { - /// Output only. The result of the analysis, which is populated when the analysis finishes. - [Newtonsoft.Json.JsonPropertyAttribute("analysisResult")] - public virtual GoogleCloudContactcenterinsightsV1AnalysisResult AnalysisResult { get; set; } + /// The conversation resource. + public class GoogleCloudContactcenterinsightsV1Conversation : Google.Apis.Requests.IDirectResponseSchema + { /// - /// To select the annotators to run and the phrase matchers to use (if any). If not specified, all annotators - /// will be run. + /// An opaque, user-specified string representing the human agent who handled the conversation. /// - [Newtonsoft.Json.JsonPropertyAttribute("annotatorSelector")] - public virtual GoogleCloudContactcenterinsightsV1AnnotatorSelector AnnotatorSelector { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("agentId")] + public virtual string AgentId { get; set; } + + /// Call-specific metadata. + [Newtonsoft.Json.JsonPropertyAttribute("callMetadata")] + public virtual GoogleCloudContactcenterinsightsV1ConversationCallMetadata CallMetadata { get; set; } private string _createTimeRaw; private object _createTime; - /// - /// Output only. The time at which the analysis was created, which occurs when the long-running operation - /// completes. - /// + /// Output only. The time at which the conversation was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -3295,313 +8408,539 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } + /// The source of the audio and transcription for the conversation. + [Newtonsoft.Json.JsonPropertyAttribute("dataSource")] + public virtual GoogleCloudContactcenterinsightsV1ConversationDataSource DataSource { get; set; } + /// - /// Immutable. The resource name of the analysis. Format: - /// projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis} + /// Output only. All the matched Dialogflow intents in the call. The key corresponds to a Dialogflow intent, + /// format: projects/{project}/agent/{agent}/intents/{intent} + /// + [Newtonsoft.Json.JsonPropertyAttribute("dialogflowIntents")] + public virtual System.Collections.Generic.IDictionary DialogflowIntents { get; set; } + + /// Output only. The duration of the conversation. + [Newtonsoft.Json.JsonPropertyAttribute("duration")] + public virtual object Duration { get; set; } + + private string _expireTimeRaw; + + private object _expireTime; + + /// + /// The time at which this conversation should expire. After this time, the conversation data and any associated + /// analyses will be deleted. + /// + [Newtonsoft.Json.JsonPropertyAttribute("expireTime")] + public virtual string ExpireTimeRaw + { + get => _expireTimeRaw; + set + { + _expireTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _expireTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use ExpireTimeDateTimeOffset instead.")] + public virtual object ExpireTime + { + get => _expireTime; + set + { + _expireTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _expireTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? ExpireTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(ExpireTimeRaw); + set => ExpireTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// + /// A map for the user to specify any custom fields. A maximum of 20 labels per conversation is allowed, with a + /// maximum of 256 characters per entry. + /// + [Newtonsoft.Json.JsonPropertyAttribute("labels")] + public virtual System.Collections.Generic.IDictionary Labels { get; set; } + + /// A user-specified language code for the conversation. + [Newtonsoft.Json.JsonPropertyAttribute("languageCode")] + public virtual string LanguageCode { get; set; } + + /// Output only. The conversation's latest analysis, if one exists. + [Newtonsoft.Json.JsonPropertyAttribute("latestAnalysis")] + public virtual GoogleCloudContactcenterinsightsV1Analysis LatestAnalysis { get; set; } + + /// Output only. Latest summary of the conversation. + [Newtonsoft.Json.JsonPropertyAttribute("latestSummary")] + public virtual GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData LatestSummary { get; set; } + + /// Immutable. The conversation medium, if unspecified will default to PHONE_CALL. + [Newtonsoft.Json.JsonPropertyAttribute("medium")] + public virtual string Medium { get; set; } + + /// + /// Input only. JSON metadata encoded as a string. This field is primarily used by Insights integrations with + /// various telphony systems and must be in one of Insight's supported formats. + /// + [Newtonsoft.Json.JsonPropertyAttribute("metadataJson")] + public virtual string MetadataJson { get; set; } + + /// + /// Immutable. The resource name of the conversation. Format: + /// projects/{project}/locations/{location}/conversations/{conversation} /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } - private string _requestTimeRaw; + /// Obfuscated user ID which the customer sent to us. + [Newtonsoft.Json.JsonPropertyAttribute("obfuscatedUserId")] + public virtual string ObfuscatedUserId { get; set; } - private object _requestTime; + /// Conversation metadata related to quality management. + [Newtonsoft.Json.JsonPropertyAttribute("qualityMetadata")] + public virtual GoogleCloudContactcenterinsightsV1ConversationQualityMetadata QualityMetadata { get; set; } - /// Output only. The time at which the analysis was requested. - [Newtonsoft.Json.JsonPropertyAttribute("requestTime")] - public virtual string RequestTimeRaw + /// + /// Output only. The annotations that were generated during the customer and agent interaction. + /// + [Newtonsoft.Json.JsonPropertyAttribute("runtimeAnnotations")] + public virtual System.Collections.Generic.IList RuntimeAnnotations { get; set; } + + private string _startTimeRaw; + + private object _startTime; + + /// The time at which the conversation started. + [Newtonsoft.Json.JsonPropertyAttribute("startTime")] + public virtual string StartTimeRaw { - get => _requestTimeRaw; + get => _startTimeRaw; set { - _requestTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _requestTimeRaw = value; + _startTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _startTimeRaw = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use RequestTimeDateTimeOffset instead.")] - public virtual object RequestTime + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use StartTimeDateTimeOffset instead.")] + public virtual object StartTime + { + get => _startTime; + set + { + _startTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _startTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? StartTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(StartTimeRaw); + set => StartTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// Output only. The conversation transcript. + [Newtonsoft.Json.JsonPropertyAttribute("transcript")] + public virtual GoogleCloudContactcenterinsightsV1ConversationTranscript Transcript { get; set; } + + /// + /// Input only. The TTL for this resource. If specified, then this TTL will be used to calculate the expire + /// time. + /// + [Newtonsoft.Json.JsonPropertyAttribute("ttl")] + public virtual object Ttl { get; set; } + + /// Output only. The number of turns in the conversation. + [Newtonsoft.Json.JsonPropertyAttribute("turnCount")] + public virtual System.Nullable TurnCount { get; set; } + + private string _updateTimeRaw; + + private object _updateTime; + + /// Output only. The most recent time at which the conversation was updated. + [Newtonsoft.Json.JsonPropertyAttribute("updateTime")] + public virtual string UpdateTimeRaw + { + get => _updateTimeRaw; + set + { + _updateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _updateTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use UpdateTimeDateTimeOffset instead.")] + public virtual object UpdateTime { - get => _requestTime; + get => _updateTime; set { - _requestTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _requestTime = value; + _updateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _updateTime = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? RequestTimeDateTimeOffset + public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(RequestTimeRaw); - set => RequestTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(UpdateTimeRaw); + set => UpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The result of an analysis. - public class GoogleCloudContactcenterinsightsV1AnalysisResult : Google.Apis.Requests.IDirectResponseSchema + /// Call-specific metadata. + public class GoogleCloudContactcenterinsightsV1ConversationCallMetadata : Google.Apis.Requests.IDirectResponseSchema { - /// Call-specific metadata created by the analysis. - [Newtonsoft.Json.JsonPropertyAttribute("callAnalysisMetadata")] - public virtual GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata CallAnalysisMetadata { get; set; } + /// The audio channel that contains the agent. + [Newtonsoft.Json.JsonPropertyAttribute("agentChannel")] + public virtual System.Nullable AgentChannel { get; set; } - private string _endTimeRaw; + /// The audio channel that contains the customer. + [Newtonsoft.Json.JsonPropertyAttribute("customerChannel")] + public virtual System.Nullable CustomerChannel { get; set; } - private object _endTime; + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// The time at which the analysis ended. - [Newtonsoft.Json.JsonPropertyAttribute("endTime")] - public virtual string EndTimeRaw - { - get => _endTimeRaw; - set - { - _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _endTimeRaw = value; - } - } + /// The conversation source, which is a combination of transcript and audio. + public class GoogleCloudContactcenterinsightsV1ConversationDataSource : Google.Apis.Requests.IDirectResponseSchema + { + /// The source when the conversation comes from Dialogflow. + [Newtonsoft.Json.JsonPropertyAttribute("dialogflowSource")] + public virtual GoogleCloudContactcenterinsightsV1DialogflowSource DialogflowSource { get; set; } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] - public virtual object EndTime - { - get => _endTime; - set - { - _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _endTime = value; - } - } + /// A Cloud Storage location specification for the audio and transcript. + [Newtonsoft.Json.JsonPropertyAttribute("gcsSource")] + public virtual GoogleCloudContactcenterinsightsV1GcsSource GcsSource { get; set; } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? EndTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); - set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// One channel of conversation-level sentiment data. + public class GoogleCloudContactcenterinsightsV1ConversationLevelSentiment : Google.Apis.Requests.IDirectResponseSchema + { + /// The channel of the audio that the data applies to. + [Newtonsoft.Json.JsonPropertyAttribute("channelTag")] + public virtual System.Nullable ChannelTag { get; set; } + + /// Data specifying sentiment. + [Newtonsoft.Json.JsonPropertyAttribute("sentimentData")] + public virtual GoogleCloudContactcenterinsightsV1SentimentData SentimentData { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Call-specific metadata created during analysis. - public class GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata : Google.Apis.Requests.IDirectResponseSchema + /// Conversation-level silence data. + public class GoogleCloudContactcenterinsightsV1ConversationLevelSilence : Google.Apis.Requests.IDirectResponseSchema { - /// A list of call annotations that apply to this call. - [Newtonsoft.Json.JsonPropertyAttribute("annotations")] - public virtual System.Collections.Generic.IList Annotations { get; set; } + /// Amount of time calculated to be in silence. + [Newtonsoft.Json.JsonPropertyAttribute("silenceDuration")] + public virtual object SilenceDuration { get; set; } - /// All the entities in the call. - [Newtonsoft.Json.JsonPropertyAttribute("entities")] - public virtual System.Collections.Generic.IDictionary Entities { get; set; } + /// Percentage of the total conversation spent in silence. + [Newtonsoft.Json.JsonPropertyAttribute("silencePercentage")] + public virtual System.Nullable SilencePercentage { get; set; } - /// All the matched intents in the call. - [Newtonsoft.Json.JsonPropertyAttribute("intents")] - public virtual System.Collections.Generic.IDictionary Intents { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Overall conversation-level issue modeling result. - [Newtonsoft.Json.JsonPropertyAttribute("issueModelResult")] - public virtual GoogleCloudContactcenterinsightsV1IssueModelResult IssueModelResult { get; set; } + /// The call participant speaking for a given utterance. + public class GoogleCloudContactcenterinsightsV1ConversationParticipant : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Deprecated. Use `dialogflow_participant_name` instead. The name of the Dialogflow participant. Format: + /// projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant} + /// + [Newtonsoft.Json.JsonPropertyAttribute("dialogflowParticipant")] + public virtual string DialogflowParticipant { get; set; } - /// All the matched phrase matchers in the call. - [Newtonsoft.Json.JsonPropertyAttribute("phraseMatchers")] - public virtual System.Collections.Generic.IDictionary PhraseMatchers { get; set; } + /// + /// The name of the participant provided by Dialogflow. Format: + /// projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant} + /// + [Newtonsoft.Json.JsonPropertyAttribute("dialogflowParticipantName")] + public virtual string DialogflowParticipantName { get; set; } - /// Overall conversation-level sentiment for each channel of the call. - [Newtonsoft.Json.JsonPropertyAttribute("sentiments")] - public virtual System.Collections.Generic.IList Sentiments { get; set; } + /// Obfuscated user ID from Dialogflow. + [Newtonsoft.Json.JsonPropertyAttribute("obfuscatedExternalUserId")] + public virtual string ObfuscatedExternalUserId { get; set; } - /// Overall conversation-level silence during the call. - [Newtonsoft.Json.JsonPropertyAttribute("silence")] - public virtual GoogleCloudContactcenterinsightsV1ConversationLevelSilence Silence { get; set; } + /// The role of the participant. + [Newtonsoft.Json.JsonPropertyAttribute("role")] + public virtual string Role { get; set; } + + /// A user-specified ID representing the participant. + [Newtonsoft.Json.JsonPropertyAttribute("userId")] + public virtual string UserId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// A point in a conversation that marks the start or the end of an annotation. - public class GoogleCloudContactcenterinsightsV1AnnotationBoundary : Google.Apis.Requests.IDirectResponseSchema + /// Conversation metadata related to quality management. + public class GoogleCloudContactcenterinsightsV1ConversationQualityMetadata : Google.Apis.Requests.IDirectResponseSchema + { + /// Information about agents involved in the call. + [Newtonsoft.Json.JsonPropertyAttribute("agentInfo")] + public virtual System.Collections.Generic.IList AgentInfo { get; set; } + + /// An arbitrary integer value indicating the customer's satisfaction rating. + [Newtonsoft.Json.JsonPropertyAttribute("customerSatisfactionRating")] + public virtual System.Nullable CustomerSatisfactionRating { get; set; } + + /// An arbitrary string value specifying the menu path the customer took. + [Newtonsoft.Json.JsonPropertyAttribute("menuPath")] + public virtual string MenuPath { get; set; } + + /// The amount of time the customer waited to connect with an agent. + [Newtonsoft.Json.JsonPropertyAttribute("waitDuration")] + public virtual object WaitDuration { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Information about an agent involved in the conversation. + public class GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfo : Google.Apis.Requests.IDirectResponseSchema + { + /// A user-specified string representing the agent. + [Newtonsoft.Json.JsonPropertyAttribute("agentId")] + public virtual string AgentId { get; set; } + + /// The agent's name. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + + /// A user-provided string indicating the outcome of the agent's segment of the call. + [Newtonsoft.Json.JsonPropertyAttribute("dispositionCode")] + public virtual string DispositionCode { get; set; } + + /// A user-specified string representing the agent's team. + [Newtonsoft.Json.JsonPropertyAttribute("team")] + public virtual string Team { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Conversation summarization suggestion data. + public class GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData : Google.Apis.Requests.IDirectResponseSchema { /// - /// The index in the sequence of transcribed pieces of the conversation where the boundary is located. This - /// index starts at zero. + /// The name of the answer record. Format: projects/{project}/locations/{location}/answerRecords/{answer_record} /// - [Newtonsoft.Json.JsonPropertyAttribute("transcriptIndex")] - public virtual System.Nullable TranscriptIndex { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("answerRecord")] + public virtual string AnswerRecord { get; set; } + + /// The confidence score of the summarization. + [Newtonsoft.Json.JsonPropertyAttribute("confidence")] + public virtual System.Nullable Confidence { get; set; } /// - /// The word index of this boundary with respect to the first word in the transcript piece. This index starts at - /// zero. + /// The name of the model that generates this summary. Format: + /// projects/{project}/locations/{location}/conversationModels/{conversation_model} /// - [Newtonsoft.Json.JsonPropertyAttribute("wordIndex")] - public virtual System.Nullable WordIndex { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("conversationModel")] + public virtual string ConversationModel { get; set; } + + /// + /// A map that contains metadata about the summarization and the document from which it originates. + /// + [Newtonsoft.Json.JsonPropertyAttribute("metadata")] + public virtual System.Collections.Generic.IDictionary Metadata { get; set; } + + /// The summarization content that is concatenated into one string. + [Newtonsoft.Json.JsonPropertyAttribute("text")] + public virtual string Text { get; set; } + + /// + /// The summarization content that is divided into sections. The key is the section's name and the value is the + /// section's content. There is no specific format for the key or value. + /// + [Newtonsoft.Json.JsonPropertyAttribute("textSections")] + public virtual System.Collections.Generic.IDictionary TextSections { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Selector of all available annotators and phrase matchers to run. - public class GoogleCloudContactcenterinsightsV1AnnotatorSelector : Google.Apis.Requests.IDirectResponseSchema + /// A message representing the transcript of a conversation. + public class GoogleCloudContactcenterinsightsV1ConversationTranscript : Google.Apis.Requests.IDirectResponseSchema + { + /// A list of sequential transcript segments that comprise the conversation. + [Newtonsoft.Json.JsonPropertyAttribute("transcriptSegments")] + public virtual System.Collections.Generic.IList TranscriptSegments { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// A segment of a full transcript. + public class GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegment : Google.Apis.Requests.IDirectResponseSchema { /// - /// The issue model to run. If not provided, the most recently deployed topic model will be used. The provided - /// issue model will only be used for inference if the issue model is deployed and if run_issue_model_annotator - /// is set to true. If more than one issue model is provided, only the first provided issue model will be used - /// for inference. + /// For conversations derived from multi-channel audio, this is the channel number corresponding to the audio + /// from that channel. For audioChannelCount = N, its output values can range from '1' to 'N'. A channel tag of + /// 0 indicates that the audio is mono. /// - [Newtonsoft.Json.JsonPropertyAttribute("issueModels")] - public virtual System.Collections.Generic.IList IssueModels { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("channelTag")] + public virtual System.Nullable ChannelTag { get; set; } /// - /// The list of phrase matchers to run. If not provided, all active phrase matchers will be used. If inactive - /// phrase matchers are provided, they will not be used. Phrase matchers will be run only if - /// run_phrase_matcher_annotator is set to true. Format: - /// projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher} + /// A confidence estimate between 0.0 and 1.0 of the fidelity of this segment. A default value of 0.0 indicates + /// that the value is unset. /// - [Newtonsoft.Json.JsonPropertyAttribute("phraseMatchers")] - public virtual System.Collections.Generic.IList PhraseMatchers { get; set; } - - /// Whether to run the entity annotator. - [Newtonsoft.Json.JsonPropertyAttribute("runEntityAnnotator")] - public virtual System.Nullable RunEntityAnnotator { get; set; } - - /// Whether to run the intent annotator. - [Newtonsoft.Json.JsonPropertyAttribute("runIntentAnnotator")] - public virtual System.Nullable RunIntentAnnotator { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("confidence")] + public virtual System.Nullable Confidence { get; set; } - /// Whether to run the interruption annotator. - [Newtonsoft.Json.JsonPropertyAttribute("runInterruptionAnnotator")] - public virtual System.Nullable RunInterruptionAnnotator { get; set; } + /// CCAI metadata relating to the current transcript segment. + [Newtonsoft.Json.JsonPropertyAttribute("dialogflowSegmentMetadata")] + public virtual GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentDialogflowSegmentMetadata DialogflowSegmentMetadata { get; set; } /// - /// Whether to run the issue model annotator. A model should have already been deployed for this to take effect. + /// The language code of this segment as a [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. + /// Example: "en-US". /// - [Newtonsoft.Json.JsonPropertyAttribute("runIssueModelAnnotator")] - public virtual System.Nullable RunIssueModelAnnotator { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("languageCode")] + public virtual string LanguageCode { get; set; } - /// Whether to run the active phrase matcher annotator(s). - [Newtonsoft.Json.JsonPropertyAttribute("runPhraseMatcherAnnotator")] - public virtual System.Nullable RunPhraseMatcherAnnotator { get; set; } + private string _messageTimeRaw; - /// Whether to run the sentiment annotator. - [Newtonsoft.Json.JsonPropertyAttribute("runSentimentAnnotator")] - public virtual System.Nullable RunSentimentAnnotator { get; set; } + private object _messageTime; - /// Whether to run the silence annotator. - [Newtonsoft.Json.JsonPropertyAttribute("runSilenceAnnotator")] - public virtual System.Nullable RunSilenceAnnotator { get; set; } + /// The time that the message occurred, if provided. + [Newtonsoft.Json.JsonPropertyAttribute("messageTime")] + public virtual string MessageTimeRaw + { + get => _messageTimeRaw; + set + { + _messageTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _messageTimeRaw = value; + } + } - /// Whether to run the summarization annotator. - [Newtonsoft.Json.JsonPropertyAttribute("runSummarizationAnnotator")] - public virtual System.Nullable RunSummarizationAnnotator { get; set; } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use MessageTimeDateTimeOffset instead.")] + public virtual object MessageTime + { + get => _messageTime; + set + { + _messageTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _messageTime = value; + } + } - /// Configuration for the summarization annotator. - [Newtonsoft.Json.JsonPropertyAttribute("summarizationConfig")] - public virtual GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfig SummarizationConfig { get; set; } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? MessageTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(MessageTimeRaw); + set => MessageTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// The participant of this segment. + [Newtonsoft.Json.JsonPropertyAttribute("segmentParticipant")] + public virtual GoogleCloudContactcenterinsightsV1ConversationParticipant SegmentParticipant { get; set; } - /// Configuration for summarization. - public class GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfig : Google.Apis.Requests.IDirectResponseSchema - { - /// - /// Resource name of the Dialogflow conversation profile. Format: - /// projects/{project}/locations/{location}/conversationProfiles/{conversation_profile} - /// - [Newtonsoft.Json.JsonPropertyAttribute("conversationProfile")] - public virtual string ConversationProfile { get; set; } + /// The sentiment for this transcript segment. + [Newtonsoft.Json.JsonPropertyAttribute("sentiment")] + public virtual GoogleCloudContactcenterinsightsV1SentimentData Sentiment { get; set; } - /// Default summarization model to be used. - [Newtonsoft.Json.JsonPropertyAttribute("summarizationModel")] - public virtual string SummarizationModel { get; set; } + /// The text of this segment. + [Newtonsoft.Json.JsonPropertyAttribute("text")] + public virtual string Text { get; set; } + + /// A list of the word-specific information for each word in the segment. + [Newtonsoft.Json.JsonPropertyAttribute("words")] + public virtual System.Collections.Generic.IList Words { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The feedback that the customer has about a certain answer in the conversation. - public class GoogleCloudContactcenterinsightsV1AnswerFeedback : Google.Apis.Requests.IDirectResponseSchema + /// Metadata from Dialogflow relating to the current transcript segment. + public class GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentDialogflowSegmentMetadata : Google.Apis.Requests.IDirectResponseSchema { - /// Indicates whether an answer or item was clicked by the human agent. - [Newtonsoft.Json.JsonPropertyAttribute("clicked")] - public virtual System.Nullable Clicked { get; set; } - - /// The correctness level of an answer. - [Newtonsoft.Json.JsonPropertyAttribute("correctnessLevel")] - public virtual string CorrectnessLevel { get; set; } - /// - /// Indicates whether an answer or item was displayed to the human agent in the agent desktop UI. + /// Whether the transcript segment was covered under the configured smart reply allowlist in Agent Assist. /// - [Newtonsoft.Json.JsonPropertyAttribute("displayed")] - public virtual System.Nullable Displayed { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("smartReplyAllowlistCovered")] + public virtual System.Nullable SmartReplyAllowlistCovered { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Agent Assist Article Suggestion data. - public class GoogleCloudContactcenterinsightsV1ArticleSuggestionData : Google.Apis.Requests.IDirectResponseSchema + /// Word-level info for words in a transcript. + public class GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentWordInfo : Google.Apis.Requests.IDirectResponseSchema { /// - /// The system's confidence score that this article is a good match for this conversation, ranging from 0.0 - /// (completely uncertain) to 1.0 (completely certain). - /// - [Newtonsoft.Json.JsonPropertyAttribute("confidenceScore")] - public virtual System.Nullable ConfidenceScore { get; set; } - - /// - /// Map that contains metadata about the Article Suggestion and the document that it originates from. + /// A confidence estimate between 0.0 and 1.0 of the fidelity of this word. A default value of 0.0 indicates + /// that the value is unset. /// - [Newtonsoft.Json.JsonPropertyAttribute("metadata")] - public virtual System.Collections.Generic.IDictionary Metadata { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("confidence")] + public virtual System.Nullable Confidence { get; set; } - /// - /// The name of the answer record. Format: projects/{project}/locations/{location}/answerRecords/{answer_record} - /// - [Newtonsoft.Json.JsonPropertyAttribute("queryRecord")] - public virtual string QueryRecord { get; set; } + /// Time offset of the end of this word relative to the beginning of the total conversation. + [Newtonsoft.Json.JsonPropertyAttribute("endOffset")] + public virtual object EndOffset { get; set; } /// - /// The knowledge document that this answer was extracted from. Format: - /// projects/{project}/knowledgeBases/{knowledge_base}/documents/{document} + /// Time offset of the start of this word relative to the beginning of the total conversation. /// - [Newtonsoft.Json.JsonPropertyAttribute("source")] - public virtual string Source { get; set; } - - /// Article title. - [Newtonsoft.Json.JsonPropertyAttribute("title")] - public virtual string Title { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("startOffset")] + public virtual object StartOffset { get; set; } - /// Article URI. - [Newtonsoft.Json.JsonPropertyAttribute("uri")] - public virtual string Uri { get; set; } + /// The word itself. Includes punctuation marks that surround the word. + [Newtonsoft.Json.JsonPropertyAttribute("word")] + public virtual string Word { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The metadata for a bulk analyze conversations operation. - public class GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsMetadata : Google.Apis.Requests.IDirectResponseSchema + /// Metadata for a create analysis operation. + public class GoogleCloudContactcenterinsightsV1CreateAnalysisOperationMetadata : Google.Apis.Requests.IDirectResponseSchema { - /// The number of requested analyses that have completed successfully so far. - [Newtonsoft.Json.JsonPropertyAttribute("completedAnalysesCount")] - public virtual System.Nullable CompletedAnalysesCount { get; set; } + /// Output only. The annotator selector used for the analysis (if any). + [Newtonsoft.Json.JsonPropertyAttribute("annotatorSelector")] + public virtual GoogleCloudContactcenterinsightsV1AnnotatorSelector AnnotatorSelector { get; set; } + + /// Output only. The Conversation that this Analysis Operation belongs to. + [Newtonsoft.Json.JsonPropertyAttribute("conversation")] + public virtual string Conversation { get; set; } private string _createTimeRaw; private object _createTime; - /// The time the operation was created. + /// Output only. The time the operation was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -3638,7 +8977,7 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset private object _endTime; - /// The time the operation finished running. + /// Output only. The time the operation finished running. [Newtonsoft.Json.JsonPropertyAttribute("endTime")] public virtual string EndTimeRaw { @@ -3659,93 +8998,30 @@ public virtual object EndTime set { _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _endTime = value; - } - } - - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? EndTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); - set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } - - /// The number of requested analyses that have failed so far. - [Newtonsoft.Json.JsonPropertyAttribute("failedAnalysesCount")] - public virtual System.Nullable FailedAnalysesCount { get; set; } - - /// - /// Output only. Partial errors during bulk analyze operation that might cause the operation output to be - /// incomplete. - /// - [Newtonsoft.Json.JsonPropertyAttribute("partialErrors")] - public virtual System.Collections.Generic.IList PartialErrors { get; set; } - - /// The original request for bulk analyze. - [Newtonsoft.Json.JsonPropertyAttribute("request")] - public virtual GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest Request { get; set; } - - /// - /// Total number of analyses requested. Computed by the number of conversations returned by `filter` multiplied - /// by `analysis_percentage` in the request. - /// - [Newtonsoft.Json.JsonPropertyAttribute("totalRequestedAnalysesCount")] - public virtual System.Nullable TotalRequestedAnalysesCount { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// The request to analyze conversations in bulk. - public class GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest : Google.Apis.Requests.IDirectResponseSchema - { - /// Required. Percentage of selected conversation to analyze, between [0, 100]. - [Newtonsoft.Json.JsonPropertyAttribute("analysisPercentage")] - public virtual System.Nullable AnalysisPercentage { get; set; } - - /// - /// To select the annotators to run and the phrase matchers to use (if any). If not specified, all annotators - /// will be run. - /// - [Newtonsoft.Json.JsonPropertyAttribute("annotatorSelector")] - public virtual GoogleCloudContactcenterinsightsV1AnnotatorSelector AnnotatorSelector { get; set; } - - /// Required. Filter used to select the subset of conversations to analyze. - [Newtonsoft.Json.JsonPropertyAttribute("filter")] - public virtual string Filter { get; set; } - - /// Required. The parent resource to create analyses in. - [Newtonsoft.Json.JsonPropertyAttribute("parent")] - public virtual string Parent { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// The response for a bulk analyze conversations operation. - public class GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// Count of failed analyses. - [Newtonsoft.Json.JsonPropertyAttribute("failedAnalysisCount")] - public virtual System.Nullable FailedAnalysisCount { get; set; } + _endTime = value; + } + } - /// Count of successful analyses. - [Newtonsoft.Json.JsonPropertyAttribute("successfulAnalysisCount")] - public virtual System.Nullable SuccessfulAnalysisCount { get; set; } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? EndTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); + set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The metadata for a bulk delete conversations operation. - public class GoogleCloudContactcenterinsightsV1BulkDeleteConversationsMetadata : Google.Apis.Requests.IDirectResponseSchema + /// Metadata for creating an issue model. + public class GoogleCloudContactcenterinsightsV1CreateIssueModelMetadata : Google.Apis.Requests.IDirectResponseSchema { private string _createTimeRaw; private object _createTime; - /// The time the operation was created. + /// Output only. The time the operation was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -3782,7 +9058,7 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset private object _endTime; - /// The time the operation finished running. + /// Output only. The time the operation finished running. [Newtonsoft.Json.JsonPropertyAttribute("endTime")] public virtual string EndTimeRaw { @@ -3815,265 +9091,37 @@ public virtual System.DateTimeOffset? EndTimeDateTimeOffset set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// - /// Partial errors during bulk delete conversations operation that might cause the operation output to be - /// incomplete. - /// - [Newtonsoft.Json.JsonPropertyAttribute("partialErrors")] - public virtual System.Collections.Generic.IList PartialErrors { get; set; } - - /// The original request for bulk delete. + /// The original request for creation. [Newtonsoft.Json.JsonPropertyAttribute("request")] - public virtual GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest Request { get; set; } + public virtual GoogleCloudContactcenterinsightsV1CreateIssueModelRequest Request { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The request to delete conversations in bulk. - public class GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest : Google.Apis.Requests.IDirectResponseSchema + /// The request to create an issue model. + public class GoogleCloudContactcenterinsightsV1CreateIssueModelRequest : Google.Apis.Requests.IDirectResponseSchema { - /// Filter used to select the subset of conversations to delete. - [Newtonsoft.Json.JsonPropertyAttribute("filter")] - public virtual string Filter { get; set; } - - /// - /// If set to true, all of this conversation's analyses will also be deleted. Otherwise, the request will only - /// succeed if the conversation has no analyses. - /// - [Newtonsoft.Json.JsonPropertyAttribute("force")] - public virtual System.Nullable Force { get; set; } - - /// Maximum number of conversations to delete. - [Newtonsoft.Json.JsonPropertyAttribute("maxDeleteCount")] - public virtual System.Nullable MaxDeleteCount { get; set; } + /// Required. The issue model to create. + [Newtonsoft.Json.JsonPropertyAttribute("issueModel")] + public virtual GoogleCloudContactcenterinsightsV1IssueModel IssueModel { get; set; } - /// - /// Required. The parent resource to delete conversations from. Format: projects/{project}/locations/{location} - /// + /// Required. The parent resource of the issue model. [Newtonsoft.Json.JsonPropertyAttribute("parent")] - public virtual string Parent { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// The response for a bulk delete conversations operation. - public class GoogleCloudContactcenterinsightsV1BulkDeleteConversationsResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Response of querying an issue model's statistics. - public class GoogleCloudContactcenterinsightsV1CalculateIssueModelStatsResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// - /// The latest label statistics for the queried issue model. Includes results on both training data and data - /// labeled after deployment. - /// - [Newtonsoft.Json.JsonPropertyAttribute("currentStats")] - public virtual GoogleCloudContactcenterinsightsV1IssueModelLabelStats CurrentStats { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// The response for calculating conversation statistics. - public class GoogleCloudContactcenterinsightsV1CalculateStatsResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// - /// The average duration of all conversations. The average is calculated using only conversations that have a - /// time duration. - /// - [Newtonsoft.Json.JsonPropertyAttribute("averageDuration")] - public virtual object AverageDuration { get; set; } - - /// The average number of turns per conversation. - [Newtonsoft.Json.JsonPropertyAttribute("averageTurnCount")] - public virtual System.Nullable AverageTurnCount { get; set; } - - /// The total number of conversations. - [Newtonsoft.Json.JsonPropertyAttribute("conversationCount")] - public virtual System.Nullable ConversationCount { get; set; } - - /// - /// A time series representing the count of conversations created over time that match that requested filter - /// criteria. - /// - [Newtonsoft.Json.JsonPropertyAttribute("conversationCountTimeSeries")] - public virtual GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeries ConversationCountTimeSeries { get; set; } - - /// - /// A map associating each custom highlighter resource name with its respective number of matches in the set of - /// conversations. - /// - [Newtonsoft.Json.JsonPropertyAttribute("customHighlighterMatches")] - public virtual System.Collections.Generic.IDictionary> CustomHighlighterMatches { get; set; } - - /// - /// A map associating each issue resource name with its respective number of matches in the set of - /// conversations. Key has the format: `projects//locations//issueModels//issues/` Deprecated, use - /// `issue_matches_stats` field instead. - /// - [Newtonsoft.Json.JsonPropertyAttribute("issueMatches")] - public virtual System.Collections.Generic.IDictionary> IssueMatches { get; set; } - - /// - /// A map associating each issue resource name with its respective number of matches in the set of - /// conversations. Key has the format: `projects//locations//issueModels//issues/` - /// - [Newtonsoft.Json.JsonPropertyAttribute("issueMatchesStats")] - public virtual System.Collections.Generic.IDictionary IssueMatchesStats { get; set; } - - /// - /// A map associating each smart highlighter display name with its respective number of matches in the set of - /// conversations. - /// - [Newtonsoft.Json.JsonPropertyAttribute("smartHighlighterMatches")] - public virtual System.Collections.Generic.IDictionary> SmartHighlighterMatches { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// A time series representing conversations over time. - public class GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeries : Google.Apis.Requests.IDirectResponseSchema - { - /// The duration of each interval. - [Newtonsoft.Json.JsonPropertyAttribute("intervalDuration")] - public virtual object IntervalDuration { get; set; } - - /// - /// An ordered list of intervals from earliest to latest, where each interval represents the number of - /// conversations that transpired during the time window. - /// - [Newtonsoft.Json.JsonPropertyAttribute("points")] - public virtual System.Collections.Generic.IList Points { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// A single interval in a time series. - public class GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeriesInterval : Google.Apis.Requests.IDirectResponseSchema - { - /// The number of conversations created in this interval. - [Newtonsoft.Json.JsonPropertyAttribute("conversationCount")] - public virtual System.Nullable ConversationCount { get; set; } - - private string _startTimeRaw; - - private object _startTime; - - /// The start time of this interval. - [Newtonsoft.Json.JsonPropertyAttribute("startTime")] - public virtual string StartTimeRaw - { - get => _startTimeRaw; - set - { - _startTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _startTimeRaw = value; - } - } - - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use StartTimeDateTimeOffset instead.")] - public virtual object StartTime - { - get => _startTime; - set - { - _startTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _startTime = value; - } - } - - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? StartTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(StartTimeRaw); - set => StartTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// A piece of metadata that applies to a window of a call. - public class GoogleCloudContactcenterinsightsV1CallAnnotation : Google.Apis.Requests.IDirectResponseSchema - { - /// The boundary in the conversation where the annotation ends, inclusive. - [Newtonsoft.Json.JsonPropertyAttribute("annotationEndBoundary")] - public virtual GoogleCloudContactcenterinsightsV1AnnotationBoundary AnnotationEndBoundary { get; set; } - - /// The boundary in the conversation where the annotation starts, inclusive. - [Newtonsoft.Json.JsonPropertyAttribute("annotationStartBoundary")] - public virtual GoogleCloudContactcenterinsightsV1AnnotationBoundary AnnotationStartBoundary { get; set; } - - /// - /// The channel of the audio where the annotation occurs. For single-channel audio, this field is not populated. - /// - [Newtonsoft.Json.JsonPropertyAttribute("channelTag")] - public virtual System.Nullable ChannelTag { get; set; } - - /// Data specifying an entity mention. - [Newtonsoft.Json.JsonPropertyAttribute("entityMentionData")] - public virtual GoogleCloudContactcenterinsightsV1EntityMentionData EntityMentionData { get; set; } - - /// Data specifying a hold. - [Newtonsoft.Json.JsonPropertyAttribute("holdData")] - public virtual GoogleCloudContactcenterinsightsV1HoldData HoldData { get; set; } - - /// Data specifying an intent match. - [Newtonsoft.Json.JsonPropertyAttribute("intentMatchData")] - public virtual GoogleCloudContactcenterinsightsV1IntentMatchData IntentMatchData { get; set; } - - /// Data specifying an interruption. - [Newtonsoft.Json.JsonPropertyAttribute("interruptionData")] - public virtual GoogleCloudContactcenterinsightsV1InterruptionData InterruptionData { get; set; } - - /// Data specifying an issue match. - [Newtonsoft.Json.JsonPropertyAttribute("issueMatchData")] - public virtual GoogleCloudContactcenterinsightsV1IssueMatchData IssueMatchData { get; set; } - - /// Data specifying a phrase match. - [Newtonsoft.Json.JsonPropertyAttribute("phraseMatchData")] - public virtual GoogleCloudContactcenterinsightsV1PhraseMatchData PhraseMatchData { get; set; } - - /// Data specifying sentiment. - [Newtonsoft.Json.JsonPropertyAttribute("sentimentData")] - public virtual GoogleCloudContactcenterinsightsV1SentimentData SentimentData { get; set; } - - /// Data specifying silence. - [Newtonsoft.Json.JsonPropertyAttribute("silenceData")] - public virtual GoogleCloudContactcenterinsightsV1SilenceData SilenceData { get; set; } + public virtual string Parent { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The conversation resource. - public class GoogleCloudContactcenterinsightsV1Conversation : Google.Apis.Requests.IDirectResponseSchema + /// Metadata for deleting an issue model. + public class GoogleCloudContactcenterinsightsV1DeleteIssueModelMetadata : Google.Apis.Requests.IDirectResponseSchema { - /// - /// An opaque, user-specified string representing the human agent who handled the conversation. - /// - [Newtonsoft.Json.JsonPropertyAttribute("agentId")] - public virtual string AgentId { get; set; } - - /// Call-specific metadata. - [Newtonsoft.Json.JsonPropertyAttribute("callMetadata")] - public virtual GoogleCloudContactcenterinsightsV1ConversationCallMetadata CallMetadata { get; set; } - private string _createTimeRaw; private object _createTime; - /// Output only. The time at which the conversation was created. + /// Output only. The time the operation was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -4106,539 +9154,601 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// The source of the audio and transcription for the conversation. - [Newtonsoft.Json.JsonPropertyAttribute("dataSource")] - public virtual GoogleCloudContactcenterinsightsV1ConversationDataSource DataSource { get; set; } - - /// - /// Output only. All the matched Dialogflow intents in the call. The key corresponds to a Dialogflow intent, - /// format: projects/{project}/agent/{agent}/intents/{intent} - /// - [Newtonsoft.Json.JsonPropertyAttribute("dialogflowIntents")] - public virtual System.Collections.Generic.IDictionary DialogflowIntents { get; set; } - - /// Output only. The duration of the conversation. - [Newtonsoft.Json.JsonPropertyAttribute("duration")] - public virtual object Duration { get; set; } - - private string _expireTimeRaw; + private string _endTimeRaw; - private object _expireTime; + private object _endTime; - /// - /// The time at which this conversation should expire. After this time, the conversation data and any associated - /// analyses will be deleted. - /// - [Newtonsoft.Json.JsonPropertyAttribute("expireTime")] - public virtual string ExpireTimeRaw + /// Output only. The time the operation finished running. + [Newtonsoft.Json.JsonPropertyAttribute("endTime")] + public virtual string EndTimeRaw { - get => _expireTimeRaw; + get => _endTimeRaw; set { - _expireTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _expireTimeRaw = value; + _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _endTimeRaw = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use ExpireTimeDateTimeOffset instead.")] - public virtual object ExpireTime + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] + public virtual object EndTime { - get => _expireTime; + get => _endTime; set { - _expireTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _expireTime = value; + _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _endTime = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? ExpireTimeDateTimeOffset + public virtual System.DateTimeOffset? EndTimeDateTimeOffset { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(ExpireTimeRaw); - set => ExpireTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); + set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// - /// A map for the user to specify any custom fields. A maximum of 20 labels per conversation is allowed, with a - /// maximum of 256 characters per entry. - /// - [Newtonsoft.Json.JsonPropertyAttribute("labels")] - public virtual System.Collections.Generic.IDictionary Labels { get; set; } - - /// A user-specified language code for the conversation. - [Newtonsoft.Json.JsonPropertyAttribute("languageCode")] - public virtual string LanguageCode { get; set; } - - /// Output only. The conversation's latest analysis, if one exists. - [Newtonsoft.Json.JsonPropertyAttribute("latestAnalysis")] - public virtual GoogleCloudContactcenterinsightsV1Analysis LatestAnalysis { get; set; } - - /// Output only. Latest summary of the conversation. - [Newtonsoft.Json.JsonPropertyAttribute("latestSummary")] - public virtual GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData LatestSummary { get; set; } - - /// Immutable. The conversation medium, if unspecified will default to PHONE_CALL. - [Newtonsoft.Json.JsonPropertyAttribute("medium")] - public virtual string Medium { get; set; } + /// The original request for deletion. + [Newtonsoft.Json.JsonPropertyAttribute("request")] + public virtual GoogleCloudContactcenterinsightsV1DeleteIssueModelRequest Request { get; set; } - /// - /// Input only. JSON metadata encoded as a string. This field is primarily used by Insights integrations with - /// various telphony systems and must be in one of Insight's supported formats. - /// - [Newtonsoft.Json.JsonPropertyAttribute("metadataJson")] - public virtual string MetadataJson { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// - /// Immutable. The resource name of the conversation. Format: - /// projects/{project}/locations/{location}/conversations/{conversation} - /// + /// The request to delete an issue model. + public class GoogleCloudContactcenterinsightsV1DeleteIssueModelRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. The name of the issue model to delete. [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } - /// Obfuscated user ID which the customer sent to us. - [Newtonsoft.Json.JsonPropertyAttribute("obfuscatedUserId")] - public virtual string ObfuscatedUserId { get; set; } - - /// Conversation metadata related to quality management. - [Newtonsoft.Json.JsonPropertyAttribute("qualityMetadata")] - public virtual GoogleCloudContactcenterinsightsV1ConversationQualityMetadata QualityMetadata { get; set; } - - /// - /// Output only. The annotations that were generated during the customer and agent interaction. - /// - [Newtonsoft.Json.JsonPropertyAttribute("runtimeAnnotations")] - public virtual System.Collections.Generic.IList RuntimeAnnotations { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - private string _startTimeRaw; + /// Metadata for deploying an issue model. + public class GoogleCloudContactcenterinsightsV1DeployIssueModelMetadata : Google.Apis.Requests.IDirectResponseSchema + { + private string _createTimeRaw; - private object _startTime; + private object _createTime; - /// The time at which the conversation started. - [Newtonsoft.Json.JsonPropertyAttribute("startTime")] - public virtual string StartTimeRaw + /// Output only. The time the operation was created. + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw { - get => _startTimeRaw; + get => _createTimeRaw; set { - _startTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _startTimeRaw = value; + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use StartTimeDateTimeOffset instead.")] - public virtual object StartTime + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime { - get => _startTime; + get => _createTime; set { - _startTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _startTime = value; + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? StartTimeDateTimeOffset + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(StartTimeRaw); - set => StartTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// Output only. The conversation transcript. - [Newtonsoft.Json.JsonPropertyAttribute("transcript")] - public virtual GoogleCloudContactcenterinsightsV1ConversationTranscript Transcript { get; set; } - - /// - /// Input only. The TTL for this resource. If specified, then this TTL will be used to calculate the expire - /// time. - /// - [Newtonsoft.Json.JsonPropertyAttribute("ttl")] - public virtual object Ttl { get; set; } - - /// Output only. The number of turns in the conversation. - [Newtonsoft.Json.JsonPropertyAttribute("turnCount")] - public virtual System.Nullable TurnCount { get; set; } - - private string _updateTimeRaw; + private string _endTimeRaw; - private object _updateTime; + private object _endTime; - /// Output only. The most recent time at which the conversation was updated. - [Newtonsoft.Json.JsonPropertyAttribute("updateTime")] - public virtual string UpdateTimeRaw + /// Output only. The time the operation finished running. + [Newtonsoft.Json.JsonPropertyAttribute("endTime")] + public virtual string EndTimeRaw { - get => _updateTimeRaw; + get => _endTimeRaw; set { - _updateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _updateTimeRaw = value; + _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _endTimeRaw = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use UpdateTimeDateTimeOffset instead.")] - public virtual object UpdateTime + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] + public virtual object EndTime { - get => _updateTime; + get => _endTime; set { - _updateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _updateTime = value; + _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _endTime = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset + public virtual System.DateTimeOffset? EndTimeDateTimeOffset { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(UpdateTimeRaw); - set => UpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); + set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } + /// The original request for deployment. + [Newtonsoft.Json.JsonPropertyAttribute("request")] + public virtual GoogleCloudContactcenterinsightsV1DeployIssueModelRequest Request { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The request to deploy an issue model. + public class GoogleCloudContactcenterinsightsV1DeployIssueModelRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. The issue model to deploy. + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The response to deploy an issue model. + public class GoogleCloudContactcenterinsightsV1DeployIssueModelResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The request to deploy a QaScorecardRevision + public class GoogleCloudContactcenterinsightsV1DeployQaScorecardRevisionRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// The data for a Dialogflow intent. Represents a detected intent in the conversation, e.g. MAKES_PROMISE. + /// + public class GoogleCloudContactcenterinsightsV1DialogflowIntent : Google.Apis.Requests.IDirectResponseSchema + { + /// The human-readable name of the intent. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// Call-specific metadata. - public class GoogleCloudContactcenterinsightsV1ConversationCallMetadata : Google.Apis.Requests.IDirectResponseSchema + /// Dialogflow interaction data. + public class GoogleCloudContactcenterinsightsV1DialogflowInteractionData : Google.Apis.Requests.IDirectResponseSchema { - /// The audio channel that contains the agent. - [Newtonsoft.Json.JsonPropertyAttribute("agentChannel")] - public virtual System.Nullable AgentChannel { get; set; } + /// + /// The confidence of the match ranging from 0.0 (completely uncertain) to 1.0 (completely certain). + /// + [Newtonsoft.Json.JsonPropertyAttribute("confidence")] + public virtual System.Nullable Confidence { get; set; } - /// The audio channel that contains the customer. - [Newtonsoft.Json.JsonPropertyAttribute("customerChannel")] - public virtual System.Nullable CustomerChannel { get; set; } + /// + /// The Dialogflow intent resource path. Format: projects/{project}/agent/{agent}/intents/{intent} + /// + [Newtonsoft.Json.JsonPropertyAttribute("dialogflowIntentId")] + public virtual string DialogflowIntentId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The conversation source, which is a combination of transcript and audio. - public class GoogleCloudContactcenterinsightsV1ConversationDataSource : Google.Apis.Requests.IDirectResponseSchema + /// A Dialogflow source of conversation data. + public class GoogleCloudContactcenterinsightsV1DialogflowSource : Google.Apis.Requests.IDirectResponseSchema { - /// The source when the conversation comes from Dialogflow. - [Newtonsoft.Json.JsonPropertyAttribute("dialogflowSource")] - public virtual GoogleCloudContactcenterinsightsV1DialogflowSource DialogflowSource { get; set; } + /// Cloud Storage URI that points to a file that contains the conversation audio. + [Newtonsoft.Json.JsonPropertyAttribute("audioUri")] + public virtual string AudioUri { get; set; } - /// A Cloud Storage location specification for the audio and transcript. - [Newtonsoft.Json.JsonPropertyAttribute("gcsSource")] - public virtual GoogleCloudContactcenterinsightsV1GcsSource GcsSource { get; set; } + /// + /// Output only. The name of the Dialogflow conversation that this conversation resource is derived from. + /// Format: projects/{project}/locations/{location}/conversations/{conversation} + /// + [Newtonsoft.Json.JsonPropertyAttribute("dialogflowConversation")] + public virtual string DialogflowConversation { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// One channel of conversation-level sentiment data. - public class GoogleCloudContactcenterinsightsV1ConversationLevelSentiment : Google.Apis.Requests.IDirectResponseSchema + /// + /// A dimension determines the grouping key for the query. In SQL terms, these would be part of both the "SELECT" + /// and "GROUP BY" clauses. + /// + public class GoogleCloudContactcenterinsightsV1Dimension : Google.Apis.Requests.IDirectResponseSchema { - /// The channel of the audio that the data applies to. - [Newtonsoft.Json.JsonPropertyAttribute("channelTag")] - public virtual System.Nullable ChannelTag { get; set; } + /// Output only. Metadata about the agent dimension. + [Newtonsoft.Json.JsonPropertyAttribute("agentDimensionMetadata")] + public virtual GoogleCloudContactcenterinsightsV1DimensionAgentDimensionMetadata AgentDimensionMetadata { get; set; } - /// Data specifying sentiment. - [Newtonsoft.Json.JsonPropertyAttribute("sentimentData")] - public virtual GoogleCloudContactcenterinsightsV1SentimentData SentimentData { get; set; } + /// The key of the dimension. + [Newtonsoft.Json.JsonPropertyAttribute("dimensionKey")] + public virtual string DimensionKey { get; set; } + + /// Output only. Metadata about the issue dimension. + [Newtonsoft.Json.JsonPropertyAttribute("issueDimensionMetadata")] + public virtual GoogleCloudContactcenterinsightsV1DimensionIssueDimensionMetadata IssueDimensionMetadata { get; set; } + + /// Output only. Metadata about the QA question-answer dimension. + [Newtonsoft.Json.JsonPropertyAttribute("qaQuestionAnswerDimensionMetadata")] + public virtual GoogleCloudContactcenterinsightsV1DimensionQaQuestionAnswerDimensionMetadata QaQuestionAnswerDimensionMetadata { get; set; } + + /// Output only. Metadata about the QA question dimension. + [Newtonsoft.Json.JsonPropertyAttribute("qaQuestionDimensionMetadata")] + public virtual GoogleCloudContactcenterinsightsV1DimensionQaQuestionDimensionMetadata QaQuestionDimensionMetadata { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Conversation-level silence data. - public class GoogleCloudContactcenterinsightsV1ConversationLevelSilence : Google.Apis.Requests.IDirectResponseSchema + /// Metadata about the agent dimension. + public class GoogleCloudContactcenterinsightsV1DimensionAgentDimensionMetadata : Google.Apis.Requests.IDirectResponseSchema { - /// Amount of time calculated to be in silence. - [Newtonsoft.Json.JsonPropertyAttribute("silenceDuration")] - public virtual object SilenceDuration { get; set; } + /// Optional. The agent's name + [Newtonsoft.Json.JsonPropertyAttribute("agentDisplayName")] + public virtual string AgentDisplayName { get; set; } - /// Percentage of the total conversation spent in silence. - [Newtonsoft.Json.JsonPropertyAttribute("silencePercentage")] - public virtual System.Nullable SilencePercentage { get; set; } + /// Optional. A user-specified string representing the agent. + [Newtonsoft.Json.JsonPropertyAttribute("agentId")] + public virtual string AgentId { get; set; } + + /// Optional. A user-specified string representing the agent's team. + [Newtonsoft.Json.JsonPropertyAttribute("agentTeam")] + public virtual string AgentTeam { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The call participant speaking for a given utterance. - public class GoogleCloudContactcenterinsightsV1ConversationParticipant : Google.Apis.Requests.IDirectResponseSchema + /// Metadata about the issue dimension. + public class GoogleCloudContactcenterinsightsV1DimensionIssueDimensionMetadata : Google.Apis.Requests.IDirectResponseSchema { - /// - /// Deprecated. Use `dialogflow_participant_name` instead. The name of the Dialogflow participant. Format: - /// projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant} - /// - [Newtonsoft.Json.JsonPropertyAttribute("dialogflowParticipant")] - public virtual string DialogflowParticipant { get; set; } - - /// - /// The name of the participant provided by Dialogflow. Format: - /// projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant} - /// - [Newtonsoft.Json.JsonPropertyAttribute("dialogflowParticipantName")] - public virtual string DialogflowParticipantName { get; set; } - - /// Obfuscated user ID from Dialogflow. - [Newtonsoft.Json.JsonPropertyAttribute("obfuscatedExternalUserId")] - public virtual string ObfuscatedExternalUserId { get; set; } + /// The issue display name. + [Newtonsoft.Json.JsonPropertyAttribute("issueDisplayName")] + public virtual string IssueDisplayName { get; set; } - /// The role of the participant. - [Newtonsoft.Json.JsonPropertyAttribute("role")] - public virtual string Role { get; set; } + /// The issue ID. + [Newtonsoft.Json.JsonPropertyAttribute("issueId")] + public virtual string IssueId { get; set; } - /// A user-specified ID representing the participant. - [Newtonsoft.Json.JsonPropertyAttribute("userId")] - public virtual string UserId { get; set; } + /// The parent issue model ID. + [Newtonsoft.Json.JsonPropertyAttribute("issueModelId")] + public virtual string IssueModelId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Conversation metadata related to quality management. - public class GoogleCloudContactcenterinsightsV1ConversationQualityMetadata : Google.Apis.Requests.IDirectResponseSchema + /// + /// Metadata about the QA question-answer dimension. This is useful for showing the answer distribution for + /// questions for a given scorecard. + /// + public class GoogleCloudContactcenterinsightsV1DimensionQaQuestionAnswerDimensionMetadata : Google.Apis.Requests.IDirectResponseSchema { - /// Information about agents involved in the call. - [Newtonsoft.Json.JsonPropertyAttribute("agentInfo")] - public virtual System.Collections.Generic.IList AgentInfo { get; set; } + /// Optional. The full body of the question. + [Newtonsoft.Json.JsonPropertyAttribute("answerValue")] + public virtual string AnswerValue { get; set; } - /// An arbitrary integer value indicating the customer's satisfaction rating. - [Newtonsoft.Json.JsonPropertyAttribute("customerSatisfactionRating")] - public virtual System.Nullable CustomerSatisfactionRating { get; set; } + /// Optional. The QA question ID. + [Newtonsoft.Json.JsonPropertyAttribute("qaQuestionId")] + public virtual string QaQuestionId { get; set; } - /// An arbitrary string value specifying the menu path the customer took. - [Newtonsoft.Json.JsonPropertyAttribute("menuPath")] - public virtual string MenuPath { get; set; } + /// Optional. The QA scorecard ID. + [Newtonsoft.Json.JsonPropertyAttribute("qaScorecardId")] + public virtual string QaScorecardId { get; set; } - /// The amount of time the customer waited to connect with an agent. - [Newtonsoft.Json.JsonPropertyAttribute("waitDuration")] - public virtual object WaitDuration { get; set; } + /// Optional. The full body of the question. + [Newtonsoft.Json.JsonPropertyAttribute("questionBody")] + public virtual string QuestionBody { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Information about an agent involved in the conversation. - public class GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfo : Google.Apis.Requests.IDirectResponseSchema + /// Metadata about the QA question dimension. + public class GoogleCloudContactcenterinsightsV1DimensionQaQuestionDimensionMetadata : Google.Apis.Requests.IDirectResponseSchema { - /// A user-specified string representing the agent. - [Newtonsoft.Json.JsonPropertyAttribute("agentId")] - public virtual string AgentId { get; set; } + /// Optional. The QA question ID. + [Newtonsoft.Json.JsonPropertyAttribute("qaQuestionId")] + public virtual string QaQuestionId { get; set; } - /// The agent's name. - [Newtonsoft.Json.JsonPropertyAttribute("displayName")] - public virtual string DisplayName { get; set; } - - /// A user-provided string indicating the outcome of the agent's segment of the call. - [Newtonsoft.Json.JsonPropertyAttribute("dispositionCode")] - public virtual string DispositionCode { get; set; } + /// Optional. The QA scorecard ID. + [Newtonsoft.Json.JsonPropertyAttribute("qaScorecardId")] + public virtual string QaScorecardId { get; set; } - /// A user-specified string representing the agent's team. - [Newtonsoft.Json.JsonPropertyAttribute("team")] - public virtual string Team { get; set; } + /// Optional. The full body of the question. + [Newtonsoft.Json.JsonPropertyAttribute("questionBody")] + public virtual string QuestionBody { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Conversation summarization suggestion data. - public class GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData : Google.Apis.Requests.IDirectResponseSchema + /// + /// A customer-managed encryption key specification that can be applied to all created resources (e.g. + /// `Conversation`). + /// + public class GoogleCloudContactcenterinsightsV1EncryptionSpec : Google.Apis.Requests.IDirectResponseSchema { /// - /// The name of the answer record. Format: projects/{project}/locations/{location}/answerRecords/{answer_record} + /// Required. The name of customer-managed encryption key that is used to secure a resource and its + /// sub-resources. If empty, the resource is secured by our default encryption key. Only the key in the same + /// location as this resource is allowed to be used for encryption. Format: + /// `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{key}` /// - [Newtonsoft.Json.JsonPropertyAttribute("answerRecord")] - public virtual string AnswerRecord { get; set; } - - /// The confidence score of the summarization. - [Newtonsoft.Json.JsonPropertyAttribute("confidence")] - public virtual System.Nullable Confidence { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("kmsKey")] + public virtual string KmsKey { get; set; } /// - /// The name of the model that generates this summary. Format: - /// projects/{project}/locations/{location}/conversationModels/{conversation_model} + /// Immutable. The resource name of the encryption key specification resource. Format: + /// projects/{project}/locations/{location}/encryptionSpec /// - [Newtonsoft.Json.JsonPropertyAttribute("conversationModel")] - public virtual string ConversationModel { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// The data for an entity annotation. Represents a phrase in the conversation that is a known entity, such as a + /// person, an organization, or location. + /// + public class GoogleCloudContactcenterinsightsV1Entity : Google.Apis.Requests.IDirectResponseSchema + { + /// The representative name for the entity. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } /// - /// A map that contains metadata about the summarization and the document from which it originates. + /// Metadata associated with the entity. For most entity types, the metadata is a Wikipedia URL + /// (`wikipedia_url`) and Knowledge Graph MID (`mid`), if they are available. For the metadata associated with + /// other entity types, see the Type table below. /// [Newtonsoft.Json.JsonPropertyAttribute("metadata")] public virtual System.Collections.Generic.IDictionary Metadata { get; set; } - /// The summarization content that is concatenated into one string. - [Newtonsoft.Json.JsonPropertyAttribute("text")] - public virtual string Text { get; set; } + /// + /// The salience score associated with the entity in the [0, 1.0] range. The salience score for an entity + /// provides information about the importance or centrality of that entity to the entire document text. Scores + /// closer to 0 are less salient, while scores closer to 1.0 are highly salient. + /// + [Newtonsoft.Json.JsonPropertyAttribute("salience")] + public virtual System.Nullable Salience { get; set; } + + /// The aggregate sentiment expressed for this entity in the conversation. + [Newtonsoft.Json.JsonPropertyAttribute("sentiment")] + public virtual GoogleCloudContactcenterinsightsV1SentimentData Sentiment { get; set; } + + /// The entity type. + [Newtonsoft.Json.JsonPropertyAttribute("type")] + public virtual string Type { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// + /// The data for an entity mention annotation. This represents a mention of an `Entity` in the conversation. + /// + public class GoogleCloudContactcenterinsightsV1EntityMentionData : Google.Apis.Requests.IDirectResponseSchema + { /// - /// The summarization content that is divided into sections. The key is the section's name and the value is the - /// section's content. There is no specific format for the key or value. + /// The key of this entity in conversation entities. Can be used to retrieve the exact `Entity` this mention is + /// attached to. /// - [Newtonsoft.Json.JsonPropertyAttribute("textSections")] - public virtual System.Collections.Generic.IDictionary TextSections { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("entityUniqueId")] + public virtual string EntityUniqueId { get; set; } + + /// Sentiment expressed for this mention of the entity. + [Newtonsoft.Json.JsonPropertyAttribute("sentiment")] + public virtual GoogleCloudContactcenterinsightsV1SentimentData Sentiment { get; set; } + + /// The type of the entity mention. + [Newtonsoft.Json.JsonPropertyAttribute("type")] + public virtual string Type { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// A message representing the transcript of a conversation. - public class GoogleCloudContactcenterinsightsV1ConversationTranscript : Google.Apis.Requests.IDirectResponseSchema + /// Exact match configuration. + public class GoogleCloudContactcenterinsightsV1ExactMatchConfig : Google.Apis.Requests.IDirectResponseSchema { - /// A list of sequential transcript segments that comprise the conversation. - [Newtonsoft.Json.JsonPropertyAttribute("transcriptSegments")] - public virtual System.Collections.Generic.IList TranscriptSegments { get; set; } + /// Whether to consider case sensitivity when performing an exact match. + [Newtonsoft.Json.JsonPropertyAttribute("caseSensitive")] + public virtual System.Nullable CaseSensitive { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// A segment of a full transcript. - public class GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegment : Google.Apis.Requests.IDirectResponseSchema + /// Metadata for an export insights operation. + public class GoogleCloudContactcenterinsightsV1ExportInsightsDataMetadata : Google.Apis.Requests.IDirectResponseSchema { - /// - /// For conversations derived from multi-channel audio, this is the channel number corresponding to the audio - /// from that channel. For audioChannelCount = N, its output values can range from '1' to 'N'. A channel tag of - /// 0 indicates that the audio is mono. - /// - [Newtonsoft.Json.JsonPropertyAttribute("channelTag")] - public virtual System.Nullable ChannelTag { get; set; } + private string _createTimeRaw; - /// - /// A confidence estimate between 0.0 and 1.0 of the fidelity of this segment. A default value of 0.0 indicates - /// that the value is unset. - /// - [Newtonsoft.Json.JsonPropertyAttribute("confidence")] - public virtual System.Nullable Confidence { get; set; } + private object _createTime; - /// CCAI metadata relating to the current transcript segment. - [Newtonsoft.Json.JsonPropertyAttribute("dialogflowSegmentMetadata")] - public virtual GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentDialogflowSegmentMetadata DialogflowSegmentMetadata { get; set; } + /// Output only. The time the operation was created. + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw + { + get => _createTimeRaw; + set + { + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime + { + get => _createTime; + set + { + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; + } + } - /// - /// The language code of this segment as a [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. - /// Example: "en-US". - /// - [Newtonsoft.Json.JsonPropertyAttribute("languageCode")] - public virtual string LanguageCode { get; set; } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } - private string _messageTimeRaw; + private string _endTimeRaw; - private object _messageTime; + private object _endTime; - /// The time that the message occurred, if provided. - [Newtonsoft.Json.JsonPropertyAttribute("messageTime")] - public virtual string MessageTimeRaw + /// Output only. The time the operation finished running. + [Newtonsoft.Json.JsonPropertyAttribute("endTime")] + public virtual string EndTimeRaw { - get => _messageTimeRaw; + get => _endTimeRaw; set { - _messageTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _messageTimeRaw = value; + _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _endTimeRaw = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use MessageTimeDateTimeOffset instead.")] - public virtual object MessageTime + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] + public virtual object EndTime { - get => _messageTime; + get => _endTime; set { - _messageTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _messageTime = value; + _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _endTime = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? MessageTimeDateTimeOffset + public virtual System.DateTimeOffset? EndTimeDateTimeOffset { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(MessageTimeRaw); - set => MessageTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); + set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// The participant of this segment. - [Newtonsoft.Json.JsonPropertyAttribute("segmentParticipant")] - public virtual GoogleCloudContactcenterinsightsV1ConversationParticipant SegmentParticipant { get; set; } - - /// The sentiment for this transcript segment. - [Newtonsoft.Json.JsonPropertyAttribute("sentiment")] - public virtual GoogleCloudContactcenterinsightsV1SentimentData Sentiment { get; set; } - - /// The text of this segment. - [Newtonsoft.Json.JsonPropertyAttribute("text")] - public virtual string Text { get; set; } + /// + /// Partial errors during export operation that might cause the operation output to be incomplete. + /// + [Newtonsoft.Json.JsonPropertyAttribute("partialErrors")] + public virtual System.Collections.Generic.IList PartialErrors { get; set; } - /// A list of the word-specific information for each word in the segment. - [Newtonsoft.Json.JsonPropertyAttribute("words")] - public virtual System.Collections.Generic.IList Words { get; set; } + /// The original request for export. + [Newtonsoft.Json.JsonPropertyAttribute("request")] + public virtual GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest Request { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Metadata from Dialogflow relating to the current transcript segment. - public class GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentDialogflowSegmentMetadata : Google.Apis.Requests.IDirectResponseSchema + /// The request to export insights. + public class GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest : Google.Apis.Requests.IDirectResponseSchema { + /// Specified if sink is a BigQuery table. + [Newtonsoft.Json.JsonPropertyAttribute("bigQueryDestination")] + public virtual GoogleCloudContactcenterinsightsV1ExportInsightsDataRequestBigQueryDestination BigQueryDestination { get; set; } + /// - /// Whether the transcript segment was covered under the configured smart reply allowlist in Agent Assist. + /// A filter to reduce results to a specific subset. Useful for exporting conversations with specific + /// properties. /// - [Newtonsoft.Json.JsonPropertyAttribute("smartReplyAllowlistCovered")] - public virtual System.Nullable SmartReplyAllowlistCovered { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("filter")] + public virtual string Filter { get; set; } + + /// + /// A fully qualified KMS key name for BigQuery tables protected by CMEK. Format: + /// projects/{project}/locations/{location}/keyRings/{keyring}/cryptoKeys/{key}/cryptoKeyVersions/{version} + /// + [Newtonsoft.Json.JsonPropertyAttribute("kmsKey")] + public virtual string KmsKey { get; set; } + + /// Required. The parent resource to export data from. + [Newtonsoft.Json.JsonPropertyAttribute("parent")] + public virtual string Parent { get; set; } + + /// Options for what to do if the destination table already exists. + [Newtonsoft.Json.JsonPropertyAttribute("writeDisposition")] + public virtual string WriteDisposition { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Word-level info for words in a transcript. - public class GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentWordInfo : Google.Apis.Requests.IDirectResponseSchema + /// A BigQuery Table Reference. + public class GoogleCloudContactcenterinsightsV1ExportInsightsDataRequestBigQueryDestination : Google.Apis.Requests.IDirectResponseSchema { /// - /// A confidence estimate between 0.0 and 1.0 of the fidelity of this word. A default value of 0.0 indicates - /// that the value is unset. + /// Required. The name of the BigQuery dataset that the snapshot result should be exported to. If this dataset + /// does not exist, the export call returns an INVALID_ARGUMENT error. /// - [Newtonsoft.Json.JsonPropertyAttribute("confidence")] - public virtual System.Nullable Confidence { get; set; } - - /// Time offset of the end of this word relative to the beginning of the total conversation. - [Newtonsoft.Json.JsonPropertyAttribute("endOffset")] - public virtual object EndOffset { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("dataset")] + public virtual string Dataset { get; set; } /// - /// Time offset of the start of this word relative to the beginning of the total conversation. + /// A project ID or number. If specified, then export will attempt to write data to this project instead of the + /// resource project. Otherwise, the resource project will be used. /// - [Newtonsoft.Json.JsonPropertyAttribute("startOffset")] - public virtual object StartOffset { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("projectId")] + public virtual string ProjectId { get; set; } - /// The word itself. Includes punctuation marks that surround the word. - [Newtonsoft.Json.JsonPropertyAttribute("word")] - public virtual string Word { get; set; } + /// + /// The BigQuery table name to which the insights data should be written. If this table does not exist, the + /// export call returns an INVALID_ARGUMENT error. + /// + [Newtonsoft.Json.JsonPropertyAttribute("table")] + public virtual string Table { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Metadata for a create analysis operation. - public class GoogleCloudContactcenterinsightsV1CreateAnalysisOperationMetadata : Google.Apis.Requests.IDirectResponseSchema + /// Response for an export insights operation. + public class GoogleCloudContactcenterinsightsV1ExportInsightsDataResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Output only. The annotator selector used for the analysis (if any). - [Newtonsoft.Json.JsonPropertyAttribute("annotatorSelector")] - public virtual GoogleCloudContactcenterinsightsV1AnnotatorSelector AnnotatorSelector { get; set; } - - /// Output only. The Conversation that this Analysis Operation belongs to. - [Newtonsoft.Json.JsonPropertyAttribute("conversation")] - public virtual string Conversation { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Metadata used for export issue model. + public class GoogleCloudContactcenterinsightsV1ExportIssueModelMetadata : Google.Apis.Requests.IDirectResponseSchema + { private string _createTimeRaw; private object _createTime; - /// Output only. The time the operation was created. + /// The time the operation was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -4675,7 +9785,7 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset private object _endTime; - /// Output only. The time the operation finished running. + /// The time the operation finished running. [Newtonsoft.Json.JsonPropertyAttribute("endTime")] public virtual string EndTimeRaw { @@ -4708,18 +9818,94 @@ public virtual System.DateTimeOffset? EndTimeDateTimeOffset set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } + /// The original export request. + [Newtonsoft.Json.JsonPropertyAttribute("request")] + public virtual GoogleCloudContactcenterinsightsV1ExportIssueModelRequest Request { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// Metadata for creating an issue model. - public class GoogleCloudContactcenterinsightsV1CreateIssueModelMetadata : Google.Apis.Requests.IDirectResponseSchema + /// Request to export an issue model. + public class GoogleCloudContactcenterinsightsV1ExportIssueModelRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Google Cloud Storage URI to export the issue model to. + [Newtonsoft.Json.JsonPropertyAttribute("gcsDestination")] + public virtual GoogleCloudContactcenterinsightsV1ExportIssueModelRequestGcsDestination GcsDestination { get; set; } + + /// Required. The issue model to export. + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Google Cloud Storage Object URI to save the issue model to. + public class GoogleCloudContactcenterinsightsV1ExportIssueModelRequestGcsDestination : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. Format: `gs:///` + [Newtonsoft.Json.JsonPropertyAttribute("objectUri")] + public virtual string ObjectUri { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Response from export issue model + public class GoogleCloudContactcenterinsightsV1ExportIssueModelResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Agent Assist frequently-asked-question answer data. + public class GoogleCloudContactcenterinsightsV1FaqAnswerData : Google.Apis.Requests.IDirectResponseSchema + { + /// The piece of text from the `source` knowledge base document. + [Newtonsoft.Json.JsonPropertyAttribute("answer")] + public virtual string Answer { get; set; } + + /// + /// The system's confidence score that this answer is a good match for this conversation, ranging from 0.0 + /// (completely uncertain) to 1.0 (completely certain). + /// + [Newtonsoft.Json.JsonPropertyAttribute("confidenceScore")] + public virtual System.Nullable ConfidenceScore { get; set; } + + /// Map that contains metadata about the FAQ answer and the document that it originates from. + [Newtonsoft.Json.JsonPropertyAttribute("metadata")] + public virtual System.Collections.Generic.IDictionary Metadata { get; set; } + + /// + /// The name of the answer record. Format: projects/{project}/locations/{location}/answerRecords/{answer_record} + /// + [Newtonsoft.Json.JsonPropertyAttribute("queryRecord")] + public virtual string QueryRecord { get; set; } + + /// The corresponding FAQ question. + [Newtonsoft.Json.JsonPropertyAttribute("question")] + public virtual string Question { get; set; } + + /// + /// The knowledge document that this answer was extracted from. Format: + /// projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}. + /// + [Newtonsoft.Json.JsonPropertyAttribute("source")] + public virtual string Source { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Represents a conversation, resource, and label provided by the user. + public class GoogleCloudContactcenterinsightsV1FeedbackLabel : Google.Apis.Requests.IDirectResponseSchema { private string _createTimeRaw; private object _createTime; - /// Output only. The time the operation was created. + /// Output only. Create time of the label. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -4752,74 +9938,98 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - private string _endTimeRaw; + /// String label. + [Newtonsoft.Json.JsonPropertyAttribute("label")] + public virtual string Label { get; set; } - private object _endTime; + /// Resource name of the resource to be labeled. + [Newtonsoft.Json.JsonPropertyAttribute("labeledResource")] + public virtual string LabeledResource { get; set; } + + /// + /// Immutable. Resource name of the FeedbackLabel. Format: + /// projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label} + /// + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// QaAnswer label. + [Newtonsoft.Json.JsonPropertyAttribute("qaAnswerLabel")] + public virtual GoogleCloudContactcenterinsightsV1QaAnswerAnswerValue QaAnswerLabel { get; set; } + + private string _updateTimeRaw; + + private object _updateTime; - /// Output only. The time the operation finished running. - [Newtonsoft.Json.JsonPropertyAttribute("endTime")] - public virtual string EndTimeRaw + /// Output only. Update time of the label. + [Newtonsoft.Json.JsonPropertyAttribute("updateTime")] + public virtual string UpdateTimeRaw { - get => _endTimeRaw; + get => _updateTimeRaw; set { - _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _endTimeRaw = value; + _updateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _updateTimeRaw = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] - public virtual object EndTime + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use UpdateTimeDateTimeOffset instead.")] + public virtual object UpdateTime { - get => _endTime; + get => _updateTime; set { - _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _endTime = value; + _updateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _updateTime = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? EndTimeDateTimeOffset + public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); - set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(UpdateTimeRaw); + set => UpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// The original request for creation. - [Newtonsoft.Json.JsonPropertyAttribute("request")] - public virtual GoogleCloudContactcenterinsightsV1CreateIssueModelRequest Request { get; set; } - /// The ETag of the item. public virtual string ETag { get; set; } } - /// The request to create an issue model. - public class GoogleCloudContactcenterinsightsV1CreateIssueModelRequest : Google.Apis.Requests.IDirectResponseSchema + /// A Cloud Storage source of conversation data. + public class GoogleCloudContactcenterinsightsV1GcsSource : Google.Apis.Requests.IDirectResponseSchema { - /// Required. The issue model to create. - [Newtonsoft.Json.JsonPropertyAttribute("issueModel")] - public virtual GoogleCloudContactcenterinsightsV1IssueModel IssueModel { get; set; } + /// Cloud Storage URI that points to a file that contains the conversation audio. + [Newtonsoft.Json.JsonPropertyAttribute("audioUri")] + public virtual string AudioUri { get; set; } - /// Required. The parent resource of the issue model. - [Newtonsoft.Json.JsonPropertyAttribute("parent")] - public virtual string Parent { get; set; } + /// + /// Immutable. Cloud Storage URI that points to a file that contains the conversation transcript. + /// + [Newtonsoft.Json.JsonPropertyAttribute("transcriptUri")] + public virtual string TranscriptUri { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Metadata for deleting an issue model. - public class GoogleCloudContactcenterinsightsV1DeleteIssueModelMetadata : Google.Apis.Requests.IDirectResponseSchema + /// The data for a hold annotation. + public class GoogleCloudContactcenterinsightsV1HoldData : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Metadata used for import issue model. + public class GoogleCloudContactcenterinsightsV1ImportIssueModelMetadata : Google.Apis.Requests.IDirectResponseSchema { private string _createTimeRaw; private object _createTime; - /// Output only. The time the operation was created. + /// The time the operation was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -4856,7 +10066,7 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset private object _endTime; - /// Output only. The time the operation finished running. + /// The time the operation finished running. [Newtonsoft.Json.JsonPropertyAttribute("endTime")] public virtual string EndTimeRaw { @@ -4889,27 +10099,57 @@ public virtual System.DateTimeOffset? EndTimeDateTimeOffset set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// The original request for deletion. + /// The original import request. [Newtonsoft.Json.JsonPropertyAttribute("request")] - public virtual GoogleCloudContactcenterinsightsV1DeleteIssueModelRequest Request { get; set; } + public virtual GoogleCloudContactcenterinsightsV1ImportIssueModelRequest Request { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The request to delete an issue model. - public class GoogleCloudContactcenterinsightsV1DeleteIssueModelRequest : Google.Apis.Requests.IDirectResponseSchema + /// Request to import an issue model. + public class GoogleCloudContactcenterinsightsV1ImportIssueModelRequest : Google.Apis.Requests.IDirectResponseSchema { - /// Required. The name of the issue model to delete. - [Newtonsoft.Json.JsonPropertyAttribute("name")] - public virtual string Name { get; set; } + /// + /// Optional. If set to true, will create an issue model from the imported file with randomly generated IDs for + /// the issue model and corresponding issues. Otherwise, replaces an existing model with the same ID as the + /// file. + /// + [Newtonsoft.Json.JsonPropertyAttribute("createNewModel")] + public virtual System.Nullable CreateNewModel { get; set; } + + /// Google Cloud Storage source message. + [Newtonsoft.Json.JsonPropertyAttribute("gcsSource")] + public virtual GoogleCloudContactcenterinsightsV1ImportIssueModelRequestGcsSource GcsSource { get; set; } + + /// Required. The parent resource of the issue model. + [Newtonsoft.Json.JsonPropertyAttribute("parent")] + public virtual string Parent { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Metadata for deploying an issue model. - public class GoogleCloudContactcenterinsightsV1DeployIssueModelMetadata : Google.Apis.Requests.IDirectResponseSchema + /// Google Cloud Storage Object URI to get the issue model file from. + public class GoogleCloudContactcenterinsightsV1ImportIssueModelRequestGcsSource : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. Format: `gs:///` + [Newtonsoft.Json.JsonPropertyAttribute("objectUri")] + public virtual string ObjectUri { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Response from import issue model + public class GoogleCloudContactcenterinsightsV1ImportIssueModelResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The metadata for an IngestConversations operation. + public class GoogleCloudContactcenterinsightsV1IngestConversationsMetadata : Google.Apis.Requests.IDirectResponseSchema { private string _createTimeRaw; @@ -4985,183 +10225,179 @@ public virtual System.DateTimeOffset? EndTimeDateTimeOffset set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// The original request for deployment. + /// Output only. Statistics for IngestConversations operation. + [Newtonsoft.Json.JsonPropertyAttribute("ingestConversationsStats")] + public virtual GoogleCloudContactcenterinsightsV1IngestConversationsMetadataIngestConversationsStats IngestConversationsStats { get; set; } + + /// + /// Output only. Partial errors during ingest operation that might cause the operation output to be incomplete. + /// + [Newtonsoft.Json.JsonPropertyAttribute("partialErrors")] + public virtual System.Collections.Generic.IList PartialErrors { get; set; } + + /// Output only. The original request for ingest. [Newtonsoft.Json.JsonPropertyAttribute("request")] - public virtual GoogleCloudContactcenterinsightsV1DeployIssueModelRequest Request { get; set; } + public virtual GoogleCloudContactcenterinsightsV1IngestConversationsRequest Request { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The request to deploy an issue model. - public class GoogleCloudContactcenterinsightsV1DeployIssueModelRequest : Google.Apis.Requests.IDirectResponseSchema + /// Statistics for IngestConversations operation. + public class GoogleCloudContactcenterinsightsV1IngestConversationsMetadataIngestConversationsStats : Google.Apis.Requests.IDirectResponseSchema { - /// Required. The issue model to deploy. - [Newtonsoft.Json.JsonPropertyAttribute("name")] - public virtual string Name { get; set; } + /// + /// Output only. The number of objects skipped because another conversation with the same transcript uri had + /// already been ingested. + /// + [Newtonsoft.Json.JsonPropertyAttribute("duplicatesSkippedCount")] + public virtual System.Nullable DuplicatesSkippedCount { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// + /// Output only. The number of objects which were unable to be ingested due to errors. The errors are populated + /// in the partial_errors field. + /// + [Newtonsoft.Json.JsonPropertyAttribute("failedIngestCount")] + public virtual System.Nullable FailedIngestCount { get; set; } - /// The response to deploy an issue model. - public class GoogleCloudContactcenterinsightsV1DeployIssueModelResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// Output only. The number of objects processed during the ingest operation. + [Newtonsoft.Json.JsonPropertyAttribute("processedObjectCount")] + public virtual System.Nullable ProcessedObjectCount { get; set; } - /// - /// The data for a Dialogflow intent. Represents a detected intent in the conversation, e.g. MAKES_PROMISE. - /// - public class GoogleCloudContactcenterinsightsV1DialogflowIntent : Google.Apis.Requests.IDirectResponseSchema - { - /// The human-readable name of the intent. - [Newtonsoft.Json.JsonPropertyAttribute("displayName")] - public virtual string DisplayName { get; set; } + /// Output only. The number of new conversations added during this ingest operation. + [Newtonsoft.Json.JsonPropertyAttribute("successfulIngestCount")] + public virtual System.Nullable SuccessfulIngestCount { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Dialogflow interaction data. - public class GoogleCloudContactcenterinsightsV1DialogflowInteractionData : Google.Apis.Requests.IDirectResponseSchema + /// The request to ingest conversations. + public class GoogleCloudContactcenterinsightsV1IngestConversationsRequest : Google.Apis.Requests.IDirectResponseSchema { + /// Configuration that applies to all conversations. + [Newtonsoft.Json.JsonPropertyAttribute("conversationConfig")] + public virtual GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig ConversationConfig { get; set; } + /// - /// The confidence of the match ranging from 0.0 (completely uncertain) to 1.0 (completely certain). + /// A cloud storage bucket source. Note that any previously ingested objects from the source will be skipped to + /// avoid duplication. /// - [Newtonsoft.Json.JsonPropertyAttribute("confidence")] - public virtual System.Nullable Confidence { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("gcsSource")] + public virtual GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource GcsSource { get; set; } + + /// Required. The parent resource for new conversations. + [Newtonsoft.Json.JsonPropertyAttribute("parent")] + public virtual string Parent { get; set; } /// - /// The Dialogflow intent resource path. Format: projects/{project}/agent/{agent}/intents/{intent} + /// Optional. DLP settings for transcript redaction. Optional, will default to the config specified in Settings. /// - [Newtonsoft.Json.JsonPropertyAttribute("dialogflowIntentId")] - public virtual string DialogflowIntentId { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } + [Newtonsoft.Json.JsonPropertyAttribute("redactionConfig")] + public virtual GoogleCloudContactcenterinsightsV1RedactionConfig RedactionConfig { get; set; } - /// A Dialogflow source of conversation data. - public class GoogleCloudContactcenterinsightsV1DialogflowSource : Google.Apis.Requests.IDirectResponseSchema - { - /// Cloud Storage URI that points to a file that contains the conversation audio. - [Newtonsoft.Json.JsonPropertyAttribute("audioUri")] - public virtual string AudioUri { get; set; } + /// + /// Optional. If set, this fields indicates the number of objects to ingest from the Cloud Storage bucket. If + /// empty, the entire bucket will be ingested. Unless they are first deleted, conversations produced through + /// sampling won't be ingested by subsequent ingest requests. + /// + [Newtonsoft.Json.JsonPropertyAttribute("sampleSize")] + public virtual System.Nullable SampleSize { get; set; } /// - /// Output only. The name of the Dialogflow conversation that this conversation resource is derived from. - /// Format: projects/{project}/locations/{location}/conversations/{conversation} + /// Optional. Default Speech-to-Text configuration. Optional, will default to the config specified in Settings. /// - [Newtonsoft.Json.JsonPropertyAttribute("dialogflowConversation")] - public virtual string DialogflowConversation { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("speechConfig")] + public virtual GoogleCloudContactcenterinsightsV1SpeechConfig SpeechConfig { get; set; } + + /// Configuration for when `source` contains conversation transcripts. + [Newtonsoft.Json.JsonPropertyAttribute("transcriptObjectConfig")] + public virtual GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig TranscriptObjectConfig { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// - /// A customer-managed encryption key specification that can be applied to all created resources (e.g. - /// `Conversation`). - /// - public class GoogleCloudContactcenterinsightsV1EncryptionSpec : Google.Apis.Requests.IDirectResponseSchema + /// Configuration that applies to all conversations. + public class GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig : Google.Apis.Requests.IDirectResponseSchema { /// - /// Required. The name of customer-managed encryption key that is used to secure a resource and its - /// sub-resources. If empty, the resource is secured by our default encryption key. Only the key in the same - /// location as this resource is allowed to be used for encryption. Format: - /// `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{key}` + /// Optional. Indicates which of the channels, 1 or 2, contains the agent. Note that this must be set for + /// conversations to be properly displayed and analyzed. /// - [Newtonsoft.Json.JsonPropertyAttribute("kmsKey")] - public virtual string KmsKey { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("agentChannel")] + public virtual System.Nullable AgentChannel { get; set; } /// - /// Immutable. The resource name of the encryption key specification resource. Format: - /// projects/{project}/locations/{location}/encryptionSpec + /// Optional. An opaque, user-specified string representing a human agent who handled all conversations in the + /// import. Note that this will be overridden if per-conversation metadata is provided through the + /// `metadata_bucket_uri`. /// - [Newtonsoft.Json.JsonPropertyAttribute("name")] - public virtual string Name { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("agentId")] + public virtual string AgentId { get; set; } + + /// + /// Optional. Indicates which of the channels, 1 or 2, contains the agent. Note that this must be set for + /// conversations to be properly displayed and analyzed. + /// + [Newtonsoft.Json.JsonPropertyAttribute("customerChannel")] + public virtual System.Nullable CustomerChannel { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// - /// The data for an entity annotation. Represents a phrase in the conversation that is a known entity, such as a - /// person, an organization, or location. - /// - public class GoogleCloudContactcenterinsightsV1Entity : Google.Apis.Requests.IDirectResponseSchema + /// Configuration for Cloud Storage bucket sources. + public class GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource : Google.Apis.Requests.IDirectResponseSchema { - /// The representative name for the entity. - [Newtonsoft.Json.JsonPropertyAttribute("displayName")] - public virtual string DisplayName { get; set; } + /// Optional. Specifies the type of the objects in `bucket_uri`. + [Newtonsoft.Json.JsonPropertyAttribute("bucketObjectType")] + public virtual string BucketObjectType { get; set; } + + /// Required. The Cloud Storage bucket containing source objects. + [Newtonsoft.Json.JsonPropertyAttribute("bucketUri")] + public virtual string BucketUri { get; set; } /// - /// Metadata associated with the entity. For most entity types, the metadata is a Wikipedia URL - /// (`wikipedia_url`) and Knowledge Graph MID (`mid`), if they are available. For the metadata associated with - /// other entity types, see the Type table below. + /// Optional. Custom keys to extract as conversation labels from metadata files in `metadata_bucket_uri`. Keys + /// not included in this field will be ignored. Note that there is a limit of 20 labels per conversation. /// - [Newtonsoft.Json.JsonPropertyAttribute("metadata")] - public virtual System.Collections.Generic.IDictionary Metadata { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("customMetadataKeys")] + public virtual System.Collections.Generic.IList CustomMetadataKeys { get; set; } /// - /// The salience score associated with the entity in the [0, 1.0] range. The salience score for an entity - /// provides information about the importance or centrality of that entity to the entire document text. Scores - /// closer to 0 are less salient, while scores closer to 1.0 are highly salient. + /// Optional. The Cloud Storage path to the conversation metadata. Note that: [1] Metadata files are expected to + /// be in JSON format. [2] Metadata and source files (transcripts or audio) must be in separate buckets. [3] A + /// source file and its corresponding metadata file must share the same name to be properly ingested, E.g. + /// `gs://bucket/audio/conversation1.mp3` and `gs://bucket/metadata/conversation1.json`. /// - [Newtonsoft.Json.JsonPropertyAttribute("salience")] - public virtual System.Nullable Salience { get; set; } - - /// The aggregate sentiment expressed for this entity in the conversation. - [Newtonsoft.Json.JsonPropertyAttribute("sentiment")] - public virtual GoogleCloudContactcenterinsightsV1SentimentData Sentiment { get; set; } - - /// The entity type. - [Newtonsoft.Json.JsonPropertyAttribute("type")] - public virtual string Type { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("metadataBucketUri")] + public virtual string MetadataBucketUri { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// - /// The data for an entity mention annotation. This represents a mention of an `Entity` in the conversation. - /// - public class GoogleCloudContactcenterinsightsV1EntityMentionData : Google.Apis.Requests.IDirectResponseSchema + /// Configuration for processing transcript objects. + public class GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig : Google.Apis.Requests.IDirectResponseSchema { - /// - /// The key of this entity in conversation entities. Can be used to retrieve the exact `Entity` this mention is - /// attached to. - /// - [Newtonsoft.Json.JsonPropertyAttribute("entityUniqueId")] - public virtual string EntityUniqueId { get; set; } - - /// Sentiment expressed for this mention of the entity. - [Newtonsoft.Json.JsonPropertyAttribute("sentiment")] - public virtual GoogleCloudContactcenterinsightsV1SentimentData Sentiment { get; set; } - - /// The type of the entity mention. - [Newtonsoft.Json.JsonPropertyAttribute("type")] - public virtual string Type { get; set; } + /// Required. The medium transcript objects represent. + [Newtonsoft.Json.JsonPropertyAttribute("medium")] + public virtual string Medium { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Exact match configuration. - public class GoogleCloudContactcenterinsightsV1ExactMatchConfig : Google.Apis.Requests.IDirectResponseSchema + /// The response to an IngestConversations operation. + public class GoogleCloudContactcenterinsightsV1IngestConversationsResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Whether to consider case sensitivity when performing an exact match. - [Newtonsoft.Json.JsonPropertyAttribute("caseSensitive")] - public virtual System.Nullable CaseSensitive { get; set; } - /// The ETag of the item. public virtual string ETag { get; set; } } - /// Metadata for an export insights operation. - public class GoogleCloudContactcenterinsightsV1ExportInsightsDataMetadata : Google.Apis.Requests.IDirectResponseSchema + /// Metadata for initializing a location-level encryption specification. + public class GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecMetadata : Google.Apis.Requests.IDirectResponseSchema { private string _createTimeRaw; @@ -5238,95 +10474,89 @@ public virtual System.DateTimeOffset? EndTimeDateTimeOffset } /// - /// Partial errors during export operation that might cause the operation output to be incomplete. + /// Partial errors during initializing operation that might cause the operation output to be incomplete. /// [Newtonsoft.Json.JsonPropertyAttribute("partialErrors")] public virtual System.Collections.Generic.IList PartialErrors { get; set; } - /// The original request for export. + /// Output only. The original request for initialization. [Newtonsoft.Json.JsonPropertyAttribute("request")] - public virtual GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest Request { get; set; } + public virtual GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest Request { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The request to export insights. - public class GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest : Google.Apis.Requests.IDirectResponseSchema + /// The request to initialize a location-level encryption specification. + public class GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest : Google.Apis.Requests.IDirectResponseSchema { - /// Specified if sink is a BigQuery table. - [Newtonsoft.Json.JsonPropertyAttribute("bigQueryDestination")] - public virtual GoogleCloudContactcenterinsightsV1ExportInsightsDataRequestBigQueryDestination BigQueryDestination { get; set; } - /// - /// A filter to reduce results to a specific subset. Useful for exporting conversations with specific - /// properties. - /// - [Newtonsoft.Json.JsonPropertyAttribute("filter")] - public virtual string Filter { get; set; } - - /// - /// A fully qualified KMS key name for BigQuery tables protected by CMEK. Format: - /// projects/{project}/locations/{location}/keyRings/{keyring}/cryptoKeys/{key}/cryptoKeyVersions/{version} + /// Required. The encryption spec used for CMEK encryption. It is required that the kms key is in the same + /// region as the endpoint. The same key will be used for all provisioned resources, if encryption is available. + /// If the `kms_key_name` field is left empty, no encryption will be enforced. /// - [Newtonsoft.Json.JsonPropertyAttribute("kmsKey")] - public virtual string KmsKey { get; set; } - - /// Required. The parent resource to export data from. - [Newtonsoft.Json.JsonPropertyAttribute("parent")] - public virtual string Parent { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("encryptionSpec")] + public virtual GoogleCloudContactcenterinsightsV1EncryptionSpec EncryptionSpec { get; set; } - /// Options for what to do if the destination table already exists. - [Newtonsoft.Json.JsonPropertyAttribute("writeDisposition")] - public virtual string WriteDisposition { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// The response to initialize a location-level encryption specification. + public class GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecResponse : Google.Apis.Requests.IDirectResponseSchema + { /// The ETag of the item. public virtual string ETag { get; set; } } - /// A BigQuery Table Reference. - public class GoogleCloudContactcenterinsightsV1ExportInsightsDataRequestBigQueryDestination : Google.Apis.Requests.IDirectResponseSchema + /// + /// The data for an intent. Represents a detected intent in the conversation, for example MAKES_PROMISE. + /// + public class GoogleCloudContactcenterinsightsV1Intent : Google.Apis.Requests.IDirectResponseSchema { - /// - /// Required. The name of the BigQuery dataset that the snapshot result should be exported to. If this dataset - /// does not exist, the export call returns an INVALID_ARGUMENT error. - /// - [Newtonsoft.Json.JsonPropertyAttribute("dataset")] - public virtual string Dataset { get; set; } + /// The human-readable name of the intent. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } - /// - /// A project ID or number. If specified, then export will attempt to write data to this project instead of the - /// resource project. Otherwise, the resource project will be used. - /// - [Newtonsoft.Json.JsonPropertyAttribute("projectId")] - public virtual string ProjectId { get; set; } + /// The unique identifier of the intent. + [Newtonsoft.Json.JsonPropertyAttribute("id")] + public virtual string Id { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// + /// The data for an intent match. Represents an intent match for a text segment in the conversation. A text segment + /// can be part of a sentence, a complete sentence, or an utterance with multiple sentences. + /// + public class GoogleCloudContactcenterinsightsV1IntentMatchData : Google.Apis.Requests.IDirectResponseSchema + { /// - /// The BigQuery table name to which the insights data should be written. If this table does not exist, the - /// export call returns an INVALID_ARGUMENT error. + /// The id of the matched intent. Can be used to retrieve the corresponding intent information. /// - [Newtonsoft.Json.JsonPropertyAttribute("table")] - public virtual string Table { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("intentUniqueId")] + public virtual string IntentUniqueId { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response for an export insights operation. - public class GoogleCloudContactcenterinsightsV1ExportInsightsDataResponse : Google.Apis.Requests.IDirectResponseSchema + /// The data for an interruption annotation. + public class GoogleCloudContactcenterinsightsV1InterruptionData : Google.Apis.Requests.IDirectResponseSchema { /// The ETag of the item. public virtual string ETag { get; set; } } - /// Metadata used for export issue model. - public class GoogleCloudContactcenterinsightsV1ExportIssueModelMetadata : Google.Apis.Requests.IDirectResponseSchema + /// The issue resource. + public class GoogleCloudContactcenterinsightsV1Issue : Google.Apis.Requests.IDirectResponseSchema { private string _createTimeRaw; private object _createTime; - /// The time the operation was created. + /// Output only. The time at which this issue was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -5356,158 +10586,112 @@ public virtual object CreateTime public virtual System.DateTimeOffset? CreateTimeDateTimeOffset { get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); - set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } - - private string _endTimeRaw; - - private object _endTime; - - /// The time the operation finished running. - [Newtonsoft.Json.JsonPropertyAttribute("endTime")] - public virtual string EndTimeRaw - { - get => _endTimeRaw; - set - { - _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _endTimeRaw = value; - } - } - - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] - public virtual object EndTime - { - get => _endTime; - set - { - _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _endTime = value; - } - } - - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? EndTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); - set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } - - /// The original export request. - [Newtonsoft.Json.JsonPropertyAttribute("request")] - public virtual GoogleCloudContactcenterinsightsV1ExportIssueModelRequest Request { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Request to export an issue model. - public class GoogleCloudContactcenterinsightsV1ExportIssueModelRequest : Google.Apis.Requests.IDirectResponseSchema - { - /// Google Cloud Storage URI to export the issue model to. - [Newtonsoft.Json.JsonPropertyAttribute("gcsDestination")] - public virtual GoogleCloudContactcenterinsightsV1ExportIssueModelRequestGcsDestination GcsDestination { get; set; } - - /// Required. The issue model to export. - [Newtonsoft.Json.JsonPropertyAttribute("name")] - public virtual string Name { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Google Cloud Storage Object URI to save the issue model to. - public class GoogleCloudContactcenterinsightsV1ExportIssueModelRequestGcsDestination : Google.Apis.Requests.IDirectResponseSchema - { - /// Required. Format: `gs:///` - [Newtonsoft.Json.JsonPropertyAttribute("objectUri")] - public virtual string ObjectUri { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Response from export issue model - public class GoogleCloudContactcenterinsightsV1ExportIssueModelResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// The ETag of the item. - public virtual string ETag { get; set; } - } + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } - /// Agent Assist frequently-asked-question answer data. - public class GoogleCloudContactcenterinsightsV1FaqAnswerData : Google.Apis.Requests.IDirectResponseSchema - { - /// The piece of text from the `source` knowledge base document. - [Newtonsoft.Json.JsonPropertyAttribute("answer")] - public virtual string Answer { get; set; } + /// Representative description of the issue. + [Newtonsoft.Json.JsonPropertyAttribute("displayDescription")] + public virtual string DisplayDescription { get; set; } + + /// The representative name for the issue. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } /// - /// The system's confidence score that this answer is a good match for this conversation, ranging from 0.0 - /// (completely uncertain) to 1.0 (completely certain). + /// Immutable. The resource name of the issue. Format: + /// projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue} /// - [Newtonsoft.Json.JsonPropertyAttribute("confidenceScore")] - public virtual System.Nullable ConfidenceScore { get; set; } - - /// Map that contains metadata about the FAQ answer and the document that it originates from. - [Newtonsoft.Json.JsonPropertyAttribute("metadata")] - public virtual System.Collections.Generic.IDictionary Metadata { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } /// - /// The name of the answer record. Format: projects/{project}/locations/{location}/answerRecords/{answer_record} + /// Output only. Resource names of the sample representative utterances that match to this issue. /// - [Newtonsoft.Json.JsonPropertyAttribute("queryRecord")] - public virtual string QueryRecord { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("sampleUtterances")] + public virtual System.Collections.Generic.IList SampleUtterances { get; set; } - /// The corresponding FAQ question. - [Newtonsoft.Json.JsonPropertyAttribute("question")] - public virtual string Question { get; set; } + private string _updateTimeRaw; - /// - /// The knowledge document that this answer was extracted from. Format: - /// projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}. - /// - [Newtonsoft.Json.JsonPropertyAttribute("source")] - public virtual string Source { get; set; } + private object _updateTime; + + /// Output only. The most recent time that this issue was updated. + [Newtonsoft.Json.JsonPropertyAttribute("updateTime")] + public virtual string UpdateTimeRaw + { + get => _updateTimeRaw; + set + { + _updateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _updateTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use UpdateTimeDateTimeOffset instead.")] + public virtual object UpdateTime + { + get => _updateTime; + set + { + _updateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _updateTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(UpdateTimeRaw); + set => UpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } /// The ETag of the item. public virtual string ETag { get; set; } } - /// A Cloud Storage source of conversation data. - public class GoogleCloudContactcenterinsightsV1GcsSource : Google.Apis.Requests.IDirectResponseSchema + /// Information about the issue. + public class GoogleCloudContactcenterinsightsV1IssueAssignment : Google.Apis.Requests.IDirectResponseSchema { - /// Cloud Storage URI that points to a file that contains the conversation audio. - [Newtonsoft.Json.JsonPropertyAttribute("audioUri")] - public virtual string AudioUri { get; set; } - /// - /// Immutable. Cloud Storage URI that points to a file that contains the conversation transcript. + /// Immutable. Display name of the assigned issue. This field is set at time of analyis and immutable since + /// then. /// - [Newtonsoft.Json.JsonPropertyAttribute("transcriptUri")] - public virtual string TranscriptUri { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + + /// Resource name of the assigned issue. + [Newtonsoft.Json.JsonPropertyAttribute("issue")] + public virtual string Issue { get; set; } + + /// Score indicating the likelihood of the issue assignment. currently bounded on [0,1]. + [Newtonsoft.Json.JsonPropertyAttribute("score")] + public virtual System.Nullable Score { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The data for a hold annotation. - public class GoogleCloudContactcenterinsightsV1HoldData : Google.Apis.Requests.IDirectResponseSchema + /// The data for an issue match annotation. + public class GoogleCloudContactcenterinsightsV1IssueMatchData : Google.Apis.Requests.IDirectResponseSchema { + /// Information about the issue's assignment. + [Newtonsoft.Json.JsonPropertyAttribute("issueAssignment")] + public virtual GoogleCloudContactcenterinsightsV1IssueAssignment IssueAssignment { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// Metadata used for import issue model. - public class GoogleCloudContactcenterinsightsV1ImportIssueModelMetadata : Google.Apis.Requests.IDirectResponseSchema + /// The issue model resource. + public class GoogleCloudContactcenterinsightsV1IssueModel : Google.Apis.Requests.IDirectResponseSchema { private string _createTimeRaw; private object _createTime; - /// The time the operation was created. + /// Output only. The time at which this issue model was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -5540,501 +10724,714 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - private string _endTimeRaw; + /// The representative name for the issue model. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } - private object _endTime; + /// Configs for the input data that used to create the issue model. + [Newtonsoft.Json.JsonPropertyAttribute("inputDataConfig")] + public virtual GoogleCloudContactcenterinsightsV1IssueModelInputDataConfig InputDataConfig { get; set; } - /// The time the operation finished running. - [Newtonsoft.Json.JsonPropertyAttribute("endTime")] - public virtual string EndTimeRaw + /// Output only. Number of issues in this issue model. + [Newtonsoft.Json.JsonPropertyAttribute("issueCount")] + public virtual System.Nullable IssueCount { get; set; } + + /// Language of the model. + [Newtonsoft.Json.JsonPropertyAttribute("languageCode")] + public virtual string LanguageCode { get; set; } + + /// Type of the model. + [Newtonsoft.Json.JsonPropertyAttribute("modelType")] + public virtual string ModelType { get; set; } + + /// + /// Immutable. The resource name of the issue model. Format: + /// projects/{project}/locations/{location}/issueModels/{issue_model} + /// + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// Output only. State of the model. + [Newtonsoft.Json.JsonPropertyAttribute("state")] + public virtual string State { get; set; } + + /// Output only. Immutable. The issue model's label statistics on its training data. + [Newtonsoft.Json.JsonPropertyAttribute("trainingStats")] + public virtual GoogleCloudContactcenterinsightsV1IssueModelLabelStats TrainingStats { get; set; } + + private string _updateTimeRaw; + + private object _updateTime; + + /// Output only. The most recent time at which the issue model was updated. + [Newtonsoft.Json.JsonPropertyAttribute("updateTime")] + public virtual string UpdateTimeRaw { - get => _endTimeRaw; + get => _updateTimeRaw; set { - _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _endTimeRaw = value; + _updateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _updateTimeRaw = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] - public virtual object EndTime + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use UpdateTimeDateTimeOffset instead.")] + public virtual object UpdateTime { - get => _endTime; + get => _updateTime; set { - _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _endTime = value; + _updateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _updateTime = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? EndTimeDateTimeOffset + public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); - set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(UpdateTimeRaw); + set => UpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// The original import request. - [Newtonsoft.Json.JsonPropertyAttribute("request")] - public virtual GoogleCloudContactcenterinsightsV1ImportIssueModelRequest Request { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Configs for the input data used to create the issue model. + public class GoogleCloudContactcenterinsightsV1IssueModelInputDataConfig : Google.Apis.Requests.IDirectResponseSchema + { + /// A filter to reduce the conversations used for training the model to a specific subset. + [Newtonsoft.Json.JsonPropertyAttribute("filter")] + public virtual string Filter { get; set; } + + /// + /// Medium of conversations used in training data. This field is being deprecated. To specify the medium to be + /// used in training a new issue model, set the `medium` field on `filter`. + /// + [Newtonsoft.Json.JsonPropertyAttribute("medium")] + public virtual string Medium { get; set; } + + /// Output only. Number of conversations used in training. Output only. + [Newtonsoft.Json.JsonPropertyAttribute("trainingConversationsCount")] + public virtual System.Nullable TrainingConversationsCount { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Aggregated statistics about an issue model. + public class GoogleCloudContactcenterinsightsV1IssueModelLabelStats : Google.Apis.Requests.IDirectResponseSchema + { + /// Number of conversations the issue model has analyzed at this point in time. + [Newtonsoft.Json.JsonPropertyAttribute("analyzedConversationsCount")] + public virtual System.Nullable AnalyzedConversationsCount { get; set; } + + /// Statistics on each issue. Key is the issue's resource name. + [Newtonsoft.Json.JsonPropertyAttribute("issueStats")] + public virtual System.Collections.Generic.IDictionary IssueStats { get; set; } + + /// Number of analyzed conversations for which no issue was applicable at this point in time. + [Newtonsoft.Json.JsonPropertyAttribute("unclassifiedConversationsCount")] + public virtual System.Nullable UnclassifiedConversationsCount { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Aggregated statistics about an issue. + public class GoogleCloudContactcenterinsightsV1IssueModelLabelStatsIssueStats : Google.Apis.Requests.IDirectResponseSchema + { + /// Display name of the issue. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + + /// + /// Issue resource. Format: projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue} + /// + [Newtonsoft.Json.JsonPropertyAttribute("issue")] + public virtual string Issue { get; set; } + + /// Number of conversations attached to the issue at this point in time. + [Newtonsoft.Json.JsonPropertyAttribute("labeledConversationsCount")] + public virtual System.Nullable LabeledConversationsCount { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Issue Modeling result on a conversation. + public class GoogleCloudContactcenterinsightsV1IssueModelResult : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Issue model that generates the result. Format: + /// projects/{project}/locations/{location}/issueModels/{issue_model} + /// + [Newtonsoft.Json.JsonPropertyAttribute("issueModel")] + public virtual string IssueModel { get; set; } + + /// All the matched issues. + [Newtonsoft.Json.JsonPropertyAttribute("issues")] + public virtual System.Collections.Generic.IList Issues { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Request to import an issue model. - public class GoogleCloudContactcenterinsightsV1ImportIssueModelRequest : Google.Apis.Requests.IDirectResponseSchema + /// The response for listing all feedback labels. + public class GoogleCloudContactcenterinsightsV1ListAllFeedbackLabelsResponse : Google.Apis.Requests.IDirectResponseSchema { + /// The feedback labels that match the request. + [Newtonsoft.Json.JsonPropertyAttribute("feedbackLabels")] + public virtual System.Collections.Generic.IList FeedbackLabels { get; set; } + /// - /// Optional. If set to true, will create an issue model from the imported file with randomly generated IDs for - /// the issue model and corresponding issues. Otherwise, replaces an existing model with the same ID as the - /// file. + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. /// - [Newtonsoft.Json.JsonPropertyAttribute("createNewModel")] - public virtual System.Nullable CreateNewModel { get; set; } - - /// Google Cloud Storage source message. - [Newtonsoft.Json.JsonPropertyAttribute("gcsSource")] - public virtual GoogleCloudContactcenterinsightsV1ImportIssueModelRequestGcsSource GcsSource { get; set; } - - /// Required. The parent resource of the issue model. - [Newtonsoft.Json.JsonPropertyAttribute("parent")] - public virtual string Parent { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Google Cloud Storage Object URI to get the issue model file from. - public class GoogleCloudContactcenterinsightsV1ImportIssueModelRequestGcsSource : Google.Apis.Requests.IDirectResponseSchema + /// The response to list analyses. + public class GoogleCloudContactcenterinsightsV1ListAnalysesResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Required. Format: `gs:///` - [Newtonsoft.Json.JsonPropertyAttribute("objectUri")] - public virtual string ObjectUri { get; set; } + /// The analyses that match the request. + [Newtonsoft.Json.JsonPropertyAttribute("analyses")] + public virtual System.Collections.Generic.IList Analyses { get; set; } + + /// + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. + /// + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Response from import issue model - public class GoogleCloudContactcenterinsightsV1ImportIssueModelResponse : Google.Apis.Requests.IDirectResponseSchema + /// The response of listing views. + public class GoogleCloudContactcenterinsightsV1ListAnalysisRulesResponse : Google.Apis.Requests.IDirectResponseSchema { + /// The analysis_rule that match the request. + [Newtonsoft.Json.JsonPropertyAttribute("analysisRules")] + public virtual System.Collections.Generic.IList AnalysisRules { get; set; } + + /// + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. + /// + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// The metadata for an IngestConversations operation. - public class GoogleCloudContactcenterinsightsV1IngestConversationsMetadata : Google.Apis.Requests.IDirectResponseSchema + /// The response of listing conversations. + public class GoogleCloudContactcenterinsightsV1ListConversationsResponse : Google.Apis.Requests.IDirectResponseSchema { - private string _createTimeRaw; - - private object _createTime; + /// The conversations that match the request. + [Newtonsoft.Json.JsonPropertyAttribute("conversations")] + public virtual System.Collections.Generic.IList Conversations { get; set; } - /// Output only. The time the operation was created. - [Newtonsoft.Json.JsonPropertyAttribute("createTime")] - public virtual string CreateTimeRaw - { - get => _createTimeRaw; - set - { - _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _createTimeRaw = value; - } - } + /// + /// A token which can be sent as `page_token` to retrieve the next page. If this field is set, it means there is + /// another page available. If it is not set, it means no other pages are available. + /// + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] - public virtual object CreateTime - { - get => _createTime; - set - { - _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _createTime = value; - } - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? CreateTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); - set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } + /// The response for listing feedback labels. + public class GoogleCloudContactcenterinsightsV1ListFeedbackLabelsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The feedback labels that match the request. + [Newtonsoft.Json.JsonPropertyAttribute("feedbackLabels")] + public virtual System.Collections.Generic.IList FeedbackLabels { get; set; } - private string _endTimeRaw; + /// The next page token. + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } - private object _endTime; + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// Output only. The time the operation finished running. - [Newtonsoft.Json.JsonPropertyAttribute("endTime")] - public virtual string EndTimeRaw - { - get => _endTimeRaw; - set - { - _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _endTimeRaw = value; - } - } + /// The response of listing issue models. + public class GoogleCloudContactcenterinsightsV1ListIssueModelsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The issue models that match the request. + [Newtonsoft.Json.JsonPropertyAttribute("issueModels")] + public virtual System.Collections.Generic.IList IssueModels { get; set; } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] - public virtual object EndTime - { - get => _endTime; - set - { - _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _endTime = value; - } - } + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? EndTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); - set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } + /// The response of listing issues. + public class GoogleCloudContactcenterinsightsV1ListIssuesResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The issues that match the request. + [Newtonsoft.Json.JsonPropertyAttribute("issues")] + public virtual System.Collections.Generic.IList Issues { get; set; } - /// Output only. Statistics for IngestConversations operation. - [Newtonsoft.Json.JsonPropertyAttribute("ingestConversationsStats")] - public virtual GoogleCloudContactcenterinsightsV1IngestConversationsMetadataIngestConversationsStats IngestConversationsStats { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// The response of listing phrase matchers. + public class GoogleCloudContactcenterinsightsV1ListPhraseMatchersResponse : Google.Apis.Requests.IDirectResponseSchema + { /// - /// Output only. Partial errors during ingest operation that might cause the operation output to be incomplete. + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. /// - [Newtonsoft.Json.JsonPropertyAttribute("partialErrors")] - public virtual System.Collections.Generic.IList PartialErrors { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } - /// Output only. The original request for ingest. - [Newtonsoft.Json.JsonPropertyAttribute("request")] - public virtual GoogleCloudContactcenterinsightsV1IngestConversationsRequest Request { get; set; } + /// The phrase matchers that match the request. + [Newtonsoft.Json.JsonPropertyAttribute("phraseMatchers")] + public virtual System.Collections.Generic.IList PhraseMatchers { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Statistics for IngestConversations operation. - public class GoogleCloudContactcenterinsightsV1IngestConversationsMetadataIngestConversationsStats : Google.Apis.Requests.IDirectResponseSchema + /// The response from a ListQaQuestions request. + public class GoogleCloudContactcenterinsightsV1ListQaQuestionsResponse : Google.Apis.Requests.IDirectResponseSchema { /// - /// Output only. The number of objects skipped because another conversation with the same transcript uri had - /// already been ingested. - /// - [Newtonsoft.Json.JsonPropertyAttribute("duplicatesSkippedCount")] - public virtual System.Nullable DuplicatesSkippedCount { get; set; } - - /// - /// Output only. The number of objects which were unable to be ingested due to errors. The errors are populated - /// in the partial_errors field. + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. /// - [Newtonsoft.Json.JsonPropertyAttribute("failedIngestCount")] - public virtual System.Nullable FailedIngestCount { get; set; } - - /// Output only. The number of objects processed during the ingest operation. - [Newtonsoft.Json.JsonPropertyAttribute("processedObjectCount")] - public virtual System.Nullable ProcessedObjectCount { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } - /// Output only. The number of new conversations added during this ingest operation. - [Newtonsoft.Json.JsonPropertyAttribute("successfulIngestCount")] - public virtual System.Nullable SuccessfulIngestCount { get; set; } + /// The QaQuestions under the parent. + [Newtonsoft.Json.JsonPropertyAttribute("qaQuestions")] + public virtual System.Collections.Generic.IList QaQuestions { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The request to ingest conversations. - public class GoogleCloudContactcenterinsightsV1IngestConversationsRequest : Google.Apis.Requests.IDirectResponseSchema + /// The response from a ListQaScorecardRevisions request. + public class GoogleCloudContactcenterinsightsV1ListQaScorecardRevisionsResponse : Google.Apis.Requests.IDirectResponseSchema { - /// Configuration that applies to all conversations. - [Newtonsoft.Json.JsonPropertyAttribute("conversationConfig")] - public virtual GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig ConversationConfig { get; set; } - /// - /// A cloud storage bucket source. Note that any previously ingested objects from the source will be skipped to - /// avoid duplication. + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. /// - [Newtonsoft.Json.JsonPropertyAttribute("gcsSource")] - public virtual GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource GcsSource { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } - /// Required. The parent resource for new conversations. - [Newtonsoft.Json.JsonPropertyAttribute("parent")] - public virtual string Parent { get; set; } + /// The QaScorecards under the parent. + [Newtonsoft.Json.JsonPropertyAttribute("qaScorecardRevisions")] + public virtual System.Collections.Generic.IList QaScorecardRevisions { get; set; } - /// - /// Optional. DLP settings for transcript redaction. Optional, will default to the config specified in Settings. - /// - [Newtonsoft.Json.JsonPropertyAttribute("redactionConfig")] - public virtual GoogleCloudContactcenterinsightsV1RedactionConfig RedactionConfig { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// The response from a ListQaScorecards request. + public class GoogleCloudContactcenterinsightsV1ListQaScorecardsResponse : Google.Apis.Requests.IDirectResponseSchema + { /// - /// Optional. If set, this fields indicates the number of objects to ingest from the Cloud Storage bucket. If - /// empty, the entire bucket will be ingested. Unless they are first deleted, conversations produced through - /// sampling won't be ingested by subsequent ingest requests. + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. /// - [Newtonsoft.Json.JsonPropertyAttribute("sampleSize")] - public virtual System.Nullable SampleSize { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + + /// The QaScorecards under the parent. + [Newtonsoft.Json.JsonPropertyAttribute("qaScorecards")] + public virtual System.Collections.Generic.IList QaScorecards { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// The response of listing views. + public class GoogleCloudContactcenterinsightsV1ListViewsResponse : Google.Apis.Requests.IDirectResponseSchema + { /// - /// Optional. Default Speech-to-Text configuration. Optional, will default to the config specified in Settings. + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. /// - [Newtonsoft.Json.JsonPropertyAttribute("speechConfig")] - public virtual GoogleCloudContactcenterinsightsV1SpeechConfig SpeechConfig { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } - /// Configuration for when `source` contains conversation transcripts. - [Newtonsoft.Json.JsonPropertyAttribute("transcriptObjectConfig")] - public virtual GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig TranscriptObjectConfig { get; set; } + /// The views that match the request. + [Newtonsoft.Json.JsonPropertyAttribute("views")] + public virtual System.Collections.Generic.IList Views { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Configuration that applies to all conversations. - public class GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig : Google.Apis.Requests.IDirectResponseSchema + /// + /// The data for a matched phrase matcher. Represents information identifying a phrase matcher for a given match. + /// + public class GoogleCloudContactcenterinsightsV1PhraseMatchData : Google.Apis.Requests.IDirectResponseSchema { - /// - /// Optional. Indicates which of the channels, 1 or 2, contains the agent. Note that this must be set for - /// conversations to be properly displayed and analyzed. - /// - [Newtonsoft.Json.JsonPropertyAttribute("agentChannel")] - public virtual System.Nullable AgentChannel { get; set; } - - /// - /// Optional. An opaque, user-specified string representing a human agent who handled all conversations in the - /// import. Note that this will be overridden if per-conversation metadata is provided through the - /// `metadata_bucket_uri`. - /// - [Newtonsoft.Json.JsonPropertyAttribute("agentId")] - public virtual string AgentId { get; set; } + /// The human-readable name of the phrase matcher. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } - /// - /// Optional. Indicates which of the channels, 1 or 2, contains the agent. Note that this must be set for - /// conversations to be properly displayed and analyzed. - /// - [Newtonsoft.Json.JsonPropertyAttribute("customerChannel")] - public virtual System.Nullable CustomerChannel { get; set; } + /// The unique identifier (the resource name) of the phrase matcher. + [Newtonsoft.Json.JsonPropertyAttribute("phraseMatcher")] + public virtual string PhraseMatcher { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Configuration for Cloud Storage bucket sources. - public class GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource : Google.Apis.Requests.IDirectResponseSchema + /// The data for a phrase match rule. + public class GoogleCloudContactcenterinsightsV1PhraseMatchRule : Google.Apis.Requests.IDirectResponseSchema { - /// Optional. Specifies the type of the objects in `bucket_uri`. - [Newtonsoft.Json.JsonPropertyAttribute("bucketObjectType")] - public virtual string BucketObjectType { get; set; } - - /// Required. The Cloud Storage bucket containing source objects. - [Newtonsoft.Json.JsonPropertyAttribute("bucketUri")] - public virtual string BucketUri { get; set; } + /// Provides additional information about the rule that specifies how to apply the rule. + [Newtonsoft.Json.JsonPropertyAttribute("config")] + public virtual GoogleCloudContactcenterinsightsV1PhraseMatchRuleConfig Config { get; set; } /// - /// Optional. Custom keys to extract as conversation labels from metadata files in `metadata_bucket_uri`. Keys - /// not included in this field will be ignored. Note that there is a limit of 20 labels per conversation. + /// Specifies whether the phrase must be missing from the transcript segment or present in the transcript + /// segment. /// - [Newtonsoft.Json.JsonPropertyAttribute("customMetadataKeys")] - public virtual System.Collections.Generic.IList CustomMetadataKeys { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("negated")] + public virtual System.Nullable Negated { get; set; } - /// - /// Optional. The Cloud Storage path to the conversation metadata. Note that: [1] Metadata files are expected to - /// be in JSON format. [2] Metadata and source files (transcripts or audio) must be in separate buckets. [3] A - /// source file and its corresponding metadata file must share the same name to be properly ingested, E.g. - /// `gs://bucket/audio/conversation1.mp3` and `gs://bucket/metadata/conversation1.json`. - /// - [Newtonsoft.Json.JsonPropertyAttribute("metadataBucketUri")] - public virtual string MetadataBucketUri { get; set; } + /// Required. The phrase to be matched. + [Newtonsoft.Json.JsonPropertyAttribute("query")] + public virtual string Query { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Configuration for processing transcript objects. - public class GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig : Google.Apis.Requests.IDirectResponseSchema + /// Configuration information of a phrase match rule. + public class GoogleCloudContactcenterinsightsV1PhraseMatchRuleConfig : Google.Apis.Requests.IDirectResponseSchema { - /// Required. The medium transcript objects represent. - [Newtonsoft.Json.JsonPropertyAttribute("medium")] - public virtual string Medium { get; set; } + /// The configuration for the exact match rule. + [Newtonsoft.Json.JsonPropertyAttribute("exactMatchConfig")] + public virtual GoogleCloudContactcenterinsightsV1ExactMatchConfig ExactMatchConfig { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The response to an IngestConversations operation. - public class GoogleCloudContactcenterinsightsV1IngestConversationsResponse : Google.Apis.Requests.IDirectResponseSchema + /// A message representing a rule in the phrase matcher. + public class GoogleCloudContactcenterinsightsV1PhraseMatchRuleGroup : Google.Apis.Requests.IDirectResponseSchema { + /// A list of phrase match rules that are included in this group. + [Newtonsoft.Json.JsonPropertyAttribute("phraseMatchRules")] + public virtual System.Collections.Generic.IList PhraseMatchRules { get; set; } + + /// Required. The type of this phrase match rule group. + [Newtonsoft.Json.JsonPropertyAttribute("type")] + public virtual string Type { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// Metadata for initializing a location-level encryption specification. - public class GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecMetadata : Google.Apis.Requests.IDirectResponseSchema + /// The phrase matcher resource. + public class GoogleCloudContactcenterinsightsV1PhraseMatcher : Google.Apis.Requests.IDirectResponseSchema { - private string _createTimeRaw; + private string _activationUpdateTimeRaw; - private object _createTime; + private object _activationUpdateTime; - /// Output only. The time the operation was created. - [Newtonsoft.Json.JsonPropertyAttribute("createTime")] - public virtual string CreateTimeRaw + /// Output only. The most recent time at which the activation status was updated. + [Newtonsoft.Json.JsonPropertyAttribute("activationUpdateTime")] + public virtual string ActivationUpdateTimeRaw { - get => _createTimeRaw; + get => _activationUpdateTimeRaw; set { - _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _createTimeRaw = value; + _activationUpdateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _activationUpdateTimeRaw = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] - public virtual object CreateTime + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use ActivationUpdateTimeDateTimeOffset instead.")] + public virtual object ActivationUpdateTime { - get => _createTime; + get => _activationUpdateTime; set { - _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _createTime = value; + _activationUpdateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _activationUpdateTime = value; } } - /// representation of . + /// + /// representation of . + /// [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? CreateTimeDateTimeOffset + public virtual System.DateTimeOffset? ActivationUpdateTimeDateTimeOffset { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); - set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(ActivationUpdateTimeRaw); + set => ActivationUpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - private string _endTimeRaw; + /// Applies the phrase matcher only when it is active. + [Newtonsoft.Json.JsonPropertyAttribute("active")] + public virtual System.Nullable Active { get; set; } - private object _endTime; + /// The human-readable name of the phrase matcher. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } - /// Output only. The time the operation finished running. - [Newtonsoft.Json.JsonPropertyAttribute("endTime")] - public virtual string EndTimeRaw + /// + /// The resource name of the phrase matcher. Format: + /// projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher} + /// + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// A list of phase match rule groups that are included in this matcher. + [Newtonsoft.Json.JsonPropertyAttribute("phraseMatchRuleGroups")] + public virtual System.Collections.Generic.IList PhraseMatchRuleGroups { get; set; } + + private string _revisionCreateTimeRaw; + + private object _revisionCreateTime; + + /// + /// Output only. The timestamp of when the revision was created. It is also the create time when a new matcher + /// is added. + /// + [Newtonsoft.Json.JsonPropertyAttribute("revisionCreateTime")] + public virtual string RevisionCreateTimeRaw { - get => _endTimeRaw; + get => _revisionCreateTimeRaw; set { - _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _endTimeRaw = value; + _revisionCreateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _revisionCreateTimeRaw = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] - public virtual object EndTime + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use RevisionCreateTimeDateTimeOffset instead.")] + public virtual object RevisionCreateTime { - get => _endTime; + get => _revisionCreateTime; set { - _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _endTime = value; + _revisionCreateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _revisionCreateTime = value; } } - /// representation of . + /// + /// representation of . + /// [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? EndTimeDateTimeOffset + public virtual System.DateTimeOffset? RevisionCreateTimeDateTimeOffset { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); - set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(RevisionCreateTimeRaw); + set => RevisionCreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } /// - /// Partial errors during initializing operation that might cause the operation output to be incomplete. + /// Output only. Immutable. The revision ID of the phrase matcher. A new revision is committed whenever the + /// matcher is changed, except when it is activated or deactivated. A server generated random ID will be used. + /// Example: locations/global/phraseMatchers/my-first-matcher@1234567 /// - [Newtonsoft.Json.JsonPropertyAttribute("partialErrors")] - public virtual System.Collections.Generic.IList PartialErrors { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("revisionId")] + public virtual string RevisionId { get; set; } - /// Output only. The original request for initialization. - [Newtonsoft.Json.JsonPropertyAttribute("request")] - public virtual GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest Request { get; set; } + /// + /// The role whose utterances the phrase matcher should be matched against. If the role is ROLE_UNSPECIFIED it + /// will be matched against any utterances in the transcript. + /// + [Newtonsoft.Json.JsonPropertyAttribute("roleMatch")] + public virtual string RoleMatch { get; set; } + + /// Required. The type of this phrase matcher. + [Newtonsoft.Json.JsonPropertyAttribute("type")] + public virtual string Type { get; set; } + + private string _updateTimeRaw; + + private object _updateTime; + + /// Output only. The most recent time at which the phrase matcher was updated. + [Newtonsoft.Json.JsonPropertyAttribute("updateTime")] + public virtual string UpdateTimeRaw + { + get => _updateTimeRaw; + set + { + _updateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _updateTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use UpdateTimeDateTimeOffset instead.")] + public virtual object UpdateTime + { + get => _updateTime; + set + { + _updateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _updateTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(UpdateTimeRaw); + set => UpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// + /// The customized version tag to use for the phrase matcher. If not specified, it will default to + /// `revision_id`. + /// + [Newtonsoft.Json.JsonPropertyAttribute("versionTag")] + public virtual string VersionTag { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The request to initialize a location-level encryption specification. - public class GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecRequest : Google.Apis.Requests.IDirectResponseSchema + /// An answer to a QaQuestion. + public class GoogleCloudContactcenterinsightsV1QaAnswer : Google.Apis.Requests.IDirectResponseSchema { + /// List of all individual answers given to the question. + [Newtonsoft.Json.JsonPropertyAttribute("answerSources")] + public virtual System.Collections.Generic.IList AnswerSources { get; set; } + + /// The main answer value, incorporating any manual edits if they exist. + [Newtonsoft.Json.JsonPropertyAttribute("answerValue")] + public virtual GoogleCloudContactcenterinsightsV1QaAnswerAnswerValue AnswerValue { get; set; } + + /// The conversation the answer applies to. + [Newtonsoft.Json.JsonPropertyAttribute("conversation")] + public virtual string Conversation { get; set; } + /// - /// Required. The encryption spec used for CMEK encryption. It is required that the kms key is in the same - /// region as the endpoint. The same key will be used for all provisioned resources, if encryption is available. - /// If the `kms_key_name` field is left empty, no encryption will be enforced. + /// The maximum potential score of the question. If the question was answered using `na_value`, this field will + /// be zero. /// - [Newtonsoft.Json.JsonPropertyAttribute("encryptionSpec")] - public virtual GoogleCloudContactcenterinsightsV1EncryptionSpec EncryptionSpec { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("potentialScore")] + public virtual System.Nullable PotentialScore { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// The QaQuestion answered by this answer. + [Newtonsoft.Json.JsonPropertyAttribute("qaQuestion")] + public virtual string QaQuestion { get; set; } + + /// Question text. E.g., "Did the agent greet the customer?" + [Newtonsoft.Json.JsonPropertyAttribute("questionBody")] + public virtual string QuestionBody { get; set; } + + /// + /// User-defined list of arbitrary tags. Matches the value from QaScorecard.ScorecardQuestion.tags. Used for + /// grouping/organization and for weighting the score of each answer. + /// + [Newtonsoft.Json.JsonPropertyAttribute("tags")] + public virtual System.Collections.Generic.IList Tags { get; set; } - /// The response to initialize a location-level encryption specification. - public class GoogleCloudContactcenterinsightsV1InitializeEncryptionSpecResponse : Google.Apis.Requests.IDirectResponseSchema - { /// The ETag of the item. public virtual string ETag { get; set; } } /// - /// The data for an intent. Represents a detected intent in the conversation, for example MAKES_PROMISE. + /// A question may have multiple answers from varying sources, one of which becomes the "main" answer above. + /// AnswerSource represents each individual answer. /// - public class GoogleCloudContactcenterinsightsV1Intent : Google.Apis.Requests.IDirectResponseSchema + public class GoogleCloudContactcenterinsightsV1QaAnswerAnswerSource : Google.Apis.Requests.IDirectResponseSchema { - /// The human-readable name of the intent. - [Newtonsoft.Json.JsonPropertyAttribute("displayName")] - public virtual string DisplayName { get; set; } + /// The answer value from this source. + [Newtonsoft.Json.JsonPropertyAttribute("answerValue")] + public virtual GoogleCloudContactcenterinsightsV1QaAnswerAnswerValue AnswerValue { get; set; } - /// The unique identifier of the intent. - [Newtonsoft.Json.JsonPropertyAttribute("id")] - public virtual string Id { get; set; } + /// What created the answer. + [Newtonsoft.Json.JsonPropertyAttribute("sourceType")] + public virtual string SourceType { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } /// - /// The data for an intent match. Represents an intent match for a text segment in the conversation. A text segment - /// can be part of a sentence, a complete sentence, or an utterance with multiple sentences. + /// Message for holding the value of the answer. QaQuestion.AnswerChoice defines the possible answer values for a + /// question. /// - public class GoogleCloudContactcenterinsightsV1IntentMatchData : Google.Apis.Requests.IDirectResponseSchema + public class GoogleCloudContactcenterinsightsV1QaAnswerAnswerValue : Google.Apis.Requests.IDirectResponseSchema { + /// Boolean value. + [Newtonsoft.Json.JsonPropertyAttribute("boolValue")] + public virtual System.Nullable BoolValue { get; set; } + /// - /// The id of the matched intent. Can be used to retrieve the corresponding intent information. + /// A short string used as an identifier. Matches the value used in QaQuestion.AnswerChoice.key. /// - [Newtonsoft.Json.JsonPropertyAttribute("intentUniqueId")] - public virtual string IntentUniqueId { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("key")] + public virtual string Key { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// A value of "Not Applicable (N/A)". + [Newtonsoft.Json.JsonPropertyAttribute("naValue")] + public virtual System.Nullable NaValue { get; set; } + + /// Numerical value. + [Newtonsoft.Json.JsonPropertyAttribute("numValue")] + public virtual System.Nullable NumValue { get; set; } + + /// Numerical score of the answer. + [Newtonsoft.Json.JsonPropertyAttribute("score")] + public virtual System.Nullable Score { get; set; } + + /// String value. + [Newtonsoft.Json.JsonPropertyAttribute("strValue")] + public virtual string StrValue { get; set; } - /// The data for an interruption annotation. - public class GoogleCloudContactcenterinsightsV1InterruptionData : Google.Apis.Requests.IDirectResponseSchema - { /// The ETag of the item. public virtual string ETag { get; set; } } - /// The issue resource. - public class GoogleCloudContactcenterinsightsV1Issue : Google.Apis.Requests.IDirectResponseSchema + /// A single question to be scored by the Insights QA feature. + public class GoogleCloudContactcenterinsightsV1QaQuestion : Google.Apis.Requests.IDirectResponseSchema { + /// + /// Short, descriptive string, used in the UI where it's not practical to display the full question body. E.g., + /// "Greeting". + /// + [Newtonsoft.Json.JsonPropertyAttribute("abbreviation")] + public virtual string Abbreviation { get; set; } + + /// A list of valid answers to the question, which the LLM must choose from. + [Newtonsoft.Json.JsonPropertyAttribute("answerChoices")] + public virtual System.Collections.Generic.IList AnswerChoices { get; set; } + + /// Instructions describing how to determine the answer. + [Newtonsoft.Json.JsonPropertyAttribute("answerInstructions")] + public virtual string AnswerInstructions { get; set; } + private string _createTimeRaw; private object _createTime; - /// Output only. The time at which this issue was created. + /// Output only. The time at which this question was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -6067,32 +11464,48 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// Representative description of the issue. - [Newtonsoft.Json.JsonPropertyAttribute("displayDescription")] - public virtual string DisplayDescription { get; set; } - - /// The representative name for the issue. - [Newtonsoft.Json.JsonPropertyAttribute("displayName")] - public virtual string DisplayName { get; set; } + /// + /// Metrics of the underlying tuned LLM over a holdout/test set while fine tuning the underlying LLM for the + /// given question. This field will only be populated if and only if the question is part of a scorecard + /// revision that has been tuned. + /// + [Newtonsoft.Json.JsonPropertyAttribute("metrics")] + public virtual GoogleCloudContactcenterinsightsV1QaQuestionMetrics Metrics { get; set; } /// - /// Immutable. The resource name of the issue. Format: - /// projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue} + /// Identifier. The resource name of the question. Format: + /// projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}/qaQuestions/{qa_question} /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } + /// Defines the order of the question within its parent scorecard revision. + [Newtonsoft.Json.JsonPropertyAttribute("order")] + public virtual System.Nullable Order { get; set; } + + /// Question text. E.g., "Did the agent greet the customer?" + [Newtonsoft.Json.JsonPropertyAttribute("questionBody")] + public virtual string QuestionBody { get; set; } + /// - /// Output only. Resource names of the sample representative utterances that match to this issue. + /// User-defined list of arbitrary tags for the question. Used for grouping/organization and for weighting the + /// score of each question. /// - [Newtonsoft.Json.JsonPropertyAttribute("sampleUtterances")] - public virtual System.Collections.Generic.IList SampleUtterances { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("tags")] + public virtual System.Collections.Generic.IList Tags { get; set; } + + /// + /// Metadata about the tuning operation for the question.This field will only be populated if and only if the + /// question is part of a scorecard revision that has been tuned. + /// + [Newtonsoft.Json.JsonPropertyAttribute("tuningMetadata")] + public virtual GoogleCloudContactcenterinsightsV1QaQuestionTuningMetadata TuningMetadata { get; set; } private string _updateTimeRaw; private object _updateTime; - /// Output only. The most recent time that this issue was updated. + /// Output only. The most recent time at which the question was updated. [Newtonsoft.Json.JsonPropertyAttribute("updateTime")] public virtual string UpdateTimeRaw { @@ -6129,47 +11542,91 @@ public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset public virtual string ETag { get; set; } } - /// Information about the issue. - public class GoogleCloudContactcenterinsightsV1IssueAssignment : Google.Apis.Requests.IDirectResponseSchema + /// Message representing a possible answer to the question. + public class GoogleCloudContactcenterinsightsV1QaQuestionAnswerChoice : Google.Apis.Requests.IDirectResponseSchema { + /// Boolean value. + [Newtonsoft.Json.JsonPropertyAttribute("boolValue")] + public virtual System.Nullable BoolValue { get; set; } + + /// A short string used as an identifier. + [Newtonsoft.Json.JsonPropertyAttribute("key")] + public virtual string Key { get; set; } + /// - /// Immutable. Display name of the assigned issue. This field is set at time of analyis and immutable since - /// then. + /// A value of "Not Applicable (N/A)". If provided, this field may only be set to `true`. If a question receives + /// this answer, it will be excluded from any score calculations. /// - [Newtonsoft.Json.JsonPropertyAttribute("displayName")] - public virtual string DisplayName { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("naValue")] + public virtual System.Nullable NaValue { get; set; } - /// Resource name of the assigned issue. - [Newtonsoft.Json.JsonPropertyAttribute("issue")] - public virtual string Issue { get; set; } + /// Numerical value. + [Newtonsoft.Json.JsonPropertyAttribute("numValue")] + public virtual System.Nullable NumValue { get; set; } - /// Score indicating the likelihood of the issue assignment. currently bounded on [0,1]. + /// + /// Numerical score of the answer, used for generating the overall score of a QaScorecardResult. If the answer + /// uses na_value, this field is unused. + /// [Newtonsoft.Json.JsonPropertyAttribute("score")] public virtual System.Nullable Score { get; set; } + /// String value. + [Newtonsoft.Json.JsonPropertyAttribute("strValue")] + public virtual string StrValue { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// The data for an issue match annotation. - public class GoogleCloudContactcenterinsightsV1IssueMatchData : Google.Apis.Requests.IDirectResponseSchema + /// + /// A wrapper representing metrics calculated against a test-set on a LLM that was fine tuned for this question. + /// + public class GoogleCloudContactcenterinsightsV1QaQuestionMetrics : Google.Apis.Requests.IDirectResponseSchema { - /// Information about the issue's assignment. - [Newtonsoft.Json.JsonPropertyAttribute("issueAssignment")] - public virtual GoogleCloudContactcenterinsightsV1IssueAssignment IssueAssignment { get; set; } + /// + /// Output only. Accuracy of the model. Measures the percentage of correct answers the model gave on the test + /// set. + /// + [Newtonsoft.Json.JsonPropertyAttribute("accuracy")] + public virtual System.Nullable Accuracy { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The issue model resource. - public class GoogleCloudContactcenterinsightsV1IssueModel : Google.Apis.Requests.IDirectResponseSchema + /// + /// Metadata about the tuning operation for the question. Will only be set if a scorecard containing this question + /// has been tuned. + /// + public class GoogleCloudContactcenterinsightsV1QaQuestionTuningMetadata : Google.Apis.Requests.IDirectResponseSchema + { + /// A list of any applicable data validation warnings about the question's feedback labels. + [Newtonsoft.Json.JsonPropertyAttribute("datasetValidationWarnings")] + public virtual System.Collections.Generic.IList DatasetValidationWarnings { get; set; } + + /// Total number of valid labels provided for the question at the time of tuining. + [Newtonsoft.Json.JsonPropertyAttribute("totalValidLabelCount")] + public virtual System.Nullable TotalValidLabelCount { get; set; } + + /// + /// Error status of the tuning operation for the question. Will only be set if the tuning operation failed. + /// + [Newtonsoft.Json.JsonPropertyAttribute("tuningError")] + public virtual string TuningError { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// A QaScorecard represents a collection of questions to be scored during analysis. + public class GoogleCloudContactcenterinsightsV1QaScorecard : Google.Apis.Requests.IDirectResponseSchema { private string _createTimeRaw; private object _createTime; - /// Output only. The time at which this issue model was created. + /// Output only. The time at which this scorecard was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -6202,46 +11659,25 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// The representative name for the issue model. + /// A text description explaining the intent of the scorecard. + [Newtonsoft.Json.JsonPropertyAttribute("description")] + public virtual string Description { get; set; } + + /// The user-specified display name of the scorecard. [Newtonsoft.Json.JsonPropertyAttribute("displayName")] public virtual string DisplayName { get; set; } - /// Configs for the input data that used to create the issue model. - [Newtonsoft.Json.JsonPropertyAttribute("inputDataConfig")] - public virtual GoogleCloudContactcenterinsightsV1IssueModelInputDataConfig InputDataConfig { get; set; } - - /// Output only. Number of issues in this issue model. - [Newtonsoft.Json.JsonPropertyAttribute("issueCount")] - public virtual System.Nullable IssueCount { get; set; } - - /// Language of the model. - [Newtonsoft.Json.JsonPropertyAttribute("languageCode")] - public virtual string LanguageCode { get; set; } - - /// Type of the model. - [Newtonsoft.Json.JsonPropertyAttribute("modelType")] - public virtual string ModelType { get; set; } - /// - /// Immutable. The resource name of the issue model. Format: - /// projects/{project}/locations/{location}/issueModels/{issue_model} + /// Identifier. The scorecard name. Format: projects/{project}/locations/{location}/qaScorecards/{qa_scorecard} /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } - /// Output only. State of the model. - [Newtonsoft.Json.JsonPropertyAttribute("state")] - public virtual string State { get; set; } - - /// Output only. Immutable. The issue model's label statistics on its training data. - [Newtonsoft.Json.JsonPropertyAttribute("trainingStats")] - public virtual GoogleCloudContactcenterinsightsV1IssueModelLabelStats TrainingStats { get; set; } - private string _updateTimeRaw; private object _updateTime; - /// Output only. The most recent time at which the issue model was updated. + /// Output only. The most recent time at which the scorecard was updated. [Newtonsoft.Json.JsonPropertyAttribute("updateTime")] public virtual string UpdateTimeRaw { @@ -6259,391 +11695,318 @@ public virtual string UpdateTimeRaw public virtual object UpdateTime { get => _updateTime; - set - { - _updateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _updateTime = value; - } - } - - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(UpdateTimeRaw); - set => UpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Configs for the input data used to create the issue model. - public class GoogleCloudContactcenterinsightsV1IssueModelInputDataConfig : Google.Apis.Requests.IDirectResponseSchema - { - /// A filter to reduce the conversations used for training the model to a specific subset. - [Newtonsoft.Json.JsonPropertyAttribute("filter")] - public virtual string Filter { get; set; } - - /// - /// Medium of conversations used in training data. This field is being deprecated. To specify the medium to be - /// used in training a new issue model, set the `medium` field on `filter`. - /// - [Newtonsoft.Json.JsonPropertyAttribute("medium")] - public virtual string Medium { get; set; } - - /// Output only. Number of conversations used in training. Output only. - [Newtonsoft.Json.JsonPropertyAttribute("trainingConversationsCount")] - public virtual System.Nullable TrainingConversationsCount { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Aggregated statistics about an issue model. - public class GoogleCloudContactcenterinsightsV1IssueModelLabelStats : Google.Apis.Requests.IDirectResponseSchema - { - /// Number of conversations the issue model has analyzed at this point in time. - [Newtonsoft.Json.JsonPropertyAttribute("analyzedConversationsCount")] - public virtual System.Nullable AnalyzedConversationsCount { get; set; } - - /// Statistics on each issue. Key is the issue's resource name. - [Newtonsoft.Json.JsonPropertyAttribute("issueStats")] - public virtual System.Collections.Generic.IDictionary IssueStats { get; set; } - - /// Number of analyzed conversations for which no issue was applicable at this point in time. - [Newtonsoft.Json.JsonPropertyAttribute("unclassifiedConversationsCount")] - public virtual System.Nullable UnclassifiedConversationsCount { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Aggregated statistics about an issue. - public class GoogleCloudContactcenterinsightsV1IssueModelLabelStatsIssueStats : Google.Apis.Requests.IDirectResponseSchema - { - /// Display name of the issue. - [Newtonsoft.Json.JsonPropertyAttribute("displayName")] - public virtual string DisplayName { get; set; } - - /// - /// Issue resource. Format: projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue} - /// - [Newtonsoft.Json.JsonPropertyAttribute("issue")] - public virtual string Issue { get; set; } - - /// Number of conversations attached to the issue at this point in time. - [Newtonsoft.Json.JsonPropertyAttribute("labeledConversationsCount")] - public virtual System.Nullable LabeledConversationsCount { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// Issue Modeling result on a conversation. - public class GoogleCloudContactcenterinsightsV1IssueModelResult : Google.Apis.Requests.IDirectResponseSchema - { - /// - /// Issue model that generates the result. Format: - /// projects/{project}/locations/{location}/issueModels/{issue_model} - /// - [Newtonsoft.Json.JsonPropertyAttribute("issueModel")] - public virtual string IssueModel { get; set; } - - /// All the matched issues. - [Newtonsoft.Json.JsonPropertyAttribute("issues")] - public virtual System.Collections.Generic.IList Issues { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - /// The response to list analyses. - public class GoogleCloudContactcenterinsightsV1ListAnalysesResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// The analyses that match the request. - [Newtonsoft.Json.JsonPropertyAttribute("analyses")] - public virtual System.Collections.Generic.IList Analyses { get; set; } + set + { + _updateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _updateTime = value; + } + } - /// - /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no - /// subsequent pages. - /// - [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] - public virtual string NextPageToken { get; set; } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(UpdateTimeRaw); + set => UpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The response of listing conversations. - public class GoogleCloudContactcenterinsightsV1ListConversationsResponse : Google.Apis.Requests.IDirectResponseSchema + /// + /// The results of scoring a single conversation against a QaScorecard. Contains a collection of QaAnswers and + /// aggregate score. + /// + public class GoogleCloudContactcenterinsightsV1QaScorecardResult : Google.Apis.Requests.IDirectResponseSchema { - /// The conversations that match the request. - [Newtonsoft.Json.JsonPropertyAttribute("conversations")] - public virtual System.Collections.Generic.IList Conversations { get; set; } + /// ID of the agent that handled the conversation. + [Newtonsoft.Json.JsonPropertyAttribute("agentId")] + public virtual string AgentId { get; set; } - /// - /// A token which can be sent as `page_token` to retrieve the next page. If this field is set, it means there is - /// another page available. If it is not set, it means no other pages are available. - /// - [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] - public virtual string NextPageToken { get; set; } + /// The conversation scored by this result. + [Newtonsoft.Json.JsonPropertyAttribute("conversation")] + public virtual string Conversation { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + private string _createTimeRaw; - /// The response of listing issue models. - public class GoogleCloudContactcenterinsightsV1ListIssueModelsResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// The issue models that match the request. - [Newtonsoft.Json.JsonPropertyAttribute("issueModels")] - public virtual System.Collections.Generic.IList IssueModels { get; set; } + private object _createTime; - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// Output only. The timestamp that the revision was created. + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw + { + get => _createTimeRaw; + set + { + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; + } + } - /// The response of listing issues. - public class GoogleCloudContactcenterinsightsV1ListIssuesResponse : Google.Apis.Requests.IDirectResponseSchema - { - /// The issues that match the request. - [Newtonsoft.Json.JsonPropertyAttribute("issues")] - public virtual System.Collections.Generic.IList Issues { get; set; } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime + { + get => _createTime; + set + { + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; + } + } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } - /// The response of listing phrase matchers. - public class GoogleCloudContactcenterinsightsV1ListPhraseMatchersResponse : Google.Apis.Requests.IDirectResponseSchema - { /// - /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no - /// subsequent pages. + /// Identifier. The name of the scorecard result. Format: + /// projects/{project}/locations/{location}/qaScorecardResults/{qa_scorecard_result} /// - [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] - public virtual string NextPageToken { get; set; } - - /// The phrase matchers that match the request. - [Newtonsoft.Json.JsonPropertyAttribute("phraseMatchers")] - public virtual System.Collections.Generic.IList PhraseMatchers { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// + /// The normalized score, which is the score divided by the potential score. Any manual edits are included if + /// they exist. + /// + [Newtonsoft.Json.JsonPropertyAttribute("normalizedScore")] + public virtual System.Nullable NormalizedScore { get; set; } - /// The response of listing views. - public class GoogleCloudContactcenterinsightsV1ListViewsResponse : Google.Apis.Requests.IDirectResponseSchema - { /// - /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no - /// subsequent pages. + /// The maximum potential overall score of the scorecard. Any questions answered using `na_value` are excluded + /// from this calculation. /// - [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] - public virtual string NextPageToken { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("potentialScore")] + public virtual System.Nullable PotentialScore { get; set; } - /// The views that match the request. - [Newtonsoft.Json.JsonPropertyAttribute("views")] - public virtual System.Collections.Generic.IList Views { get; set; } + /// Set of QaAnswers represented in the result. + [Newtonsoft.Json.JsonPropertyAttribute("qaAnswers")] + public virtual System.Collections.Generic.IList QaAnswers { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// The QaScorecardRevision scored by this result. + [Newtonsoft.Json.JsonPropertyAttribute("qaScorecardRevision")] + public virtual string QaScorecardRevision { get; set; } - /// - /// The data for a matched phrase matcher. Represents information identifying a phrase matcher for a given match. - /// - public class GoogleCloudContactcenterinsightsV1PhraseMatchData : Google.Apis.Requests.IDirectResponseSchema - { - /// The human-readable name of the phrase matcher. - [Newtonsoft.Json.JsonPropertyAttribute("displayName")] - public virtual string DisplayName { get; set; } + /// Collection of tags and their scores. + [Newtonsoft.Json.JsonPropertyAttribute("qaTagResults")] + public virtual System.Collections.Generic.IList QaTagResults { get; set; } - /// The unique identifier (the resource name) of the phrase matcher. - [Newtonsoft.Json.JsonPropertyAttribute("phraseMatcher")] - public virtual string PhraseMatcher { get; set; } + /// The overall numerical score of the result, incorporating any manual edits if they exist. + [Newtonsoft.Json.JsonPropertyAttribute("score")] + public virtual System.Nullable Score { get; set; } + + /// List of all individual score sets. + [Newtonsoft.Json.JsonPropertyAttribute("scoreSources")] + public virtual System.Collections.Generic.IList ScoreSources { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The data for a phrase match rule. - public class GoogleCloudContactcenterinsightsV1PhraseMatchRule : Google.Apis.Requests.IDirectResponseSchema + /// Tags and their corresponding results. + public class GoogleCloudContactcenterinsightsV1QaScorecardResultQaTagResult : Google.Apis.Requests.IDirectResponseSchema { - /// Provides additional information about the rule that specifies how to apply the rule. - [Newtonsoft.Json.JsonPropertyAttribute("config")] - public virtual GoogleCloudContactcenterinsightsV1PhraseMatchRuleConfig Config { get; set; } + /// The normalized score the tag applies to. + [Newtonsoft.Json.JsonPropertyAttribute("normalizedScore")] + public virtual System.Nullable NormalizedScore { get; set; } - /// - /// Specifies whether the phrase must be missing from the transcript segment or present in the transcript - /// segment. - /// - [Newtonsoft.Json.JsonPropertyAttribute("negated")] - public virtual System.Nullable Negated { get; set; } + /// The potential score the tag applies to. + [Newtonsoft.Json.JsonPropertyAttribute("potentialScore")] + public virtual System.Nullable PotentialScore { get; set; } - /// Required. The phrase to be matched. - [Newtonsoft.Json.JsonPropertyAttribute("query")] - public virtual string Query { get; set; } + /// The score the tag applies to. + [Newtonsoft.Json.JsonPropertyAttribute("score")] + public virtual System.Nullable Score { get; set; } + + /// The tag the score applies to. + [Newtonsoft.Json.JsonPropertyAttribute("tag")] + public virtual string Tag { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Configuration information of a phrase match rule. - public class GoogleCloudContactcenterinsightsV1PhraseMatchRuleConfig : Google.Apis.Requests.IDirectResponseSchema + /// + /// A scorecard result may have multiple sets of scores from varying sources, one of which becomes the "main" answer + /// above. A ScoreSource represents each individual set of scores. + /// + public class GoogleCloudContactcenterinsightsV1QaScorecardResultScoreSource : Google.Apis.Requests.IDirectResponseSchema { - /// The configuration for the exact match rule. - [Newtonsoft.Json.JsonPropertyAttribute("exactMatchConfig")] - public virtual GoogleCloudContactcenterinsightsV1ExactMatchConfig ExactMatchConfig { get; set; } + /// The normalized score, which is the score divided by the potential score. + [Newtonsoft.Json.JsonPropertyAttribute("normalizedScore")] + public virtual System.Nullable NormalizedScore { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// + /// The maximum potential overall score of the scorecard. Any questions answered using `na_value` are excluded + /// from this calculation. + /// + [Newtonsoft.Json.JsonPropertyAttribute("potentialScore")] + public virtual System.Nullable PotentialScore { get; set; } - /// A message representing a rule in the phrase matcher. - public class GoogleCloudContactcenterinsightsV1PhraseMatchRuleGroup : Google.Apis.Requests.IDirectResponseSchema - { - /// A list of phrase match rules that are included in this group. - [Newtonsoft.Json.JsonPropertyAttribute("phraseMatchRules")] - public virtual System.Collections.Generic.IList PhraseMatchRules { get; set; } + /// Collection of tags and their scores. + [Newtonsoft.Json.JsonPropertyAttribute("qaTagResults")] + public virtual System.Collections.Generic.IList QaTagResults { get; set; } - /// Required. The type of this phrase match rule group. - [Newtonsoft.Json.JsonPropertyAttribute("type")] - public virtual string Type { get; set; } + /// The overall numerical score of the result. + [Newtonsoft.Json.JsonPropertyAttribute("score")] + public virtual System.Nullable Score { get; set; } + + /// What created the score. + [Newtonsoft.Json.JsonPropertyAttribute("sourceType")] + public virtual string SourceType { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The phrase matcher resource. - public class GoogleCloudContactcenterinsightsV1PhraseMatcher : Google.Apis.Requests.IDirectResponseSchema + /// + /// A revision of a QaScorecard. Modifying published scorecard fields would invalidate existing scorecard results ā€” + /// the questions may have changed, or the score weighting will make existing scores impossible to understand. So + /// changes must create a new revision, rather than modifying the existing resource. + /// + public class GoogleCloudContactcenterinsightsV1QaScorecardRevision : Google.Apis.Requests.IDirectResponseSchema { - private string _activationUpdateTimeRaw; + /// Output only. Alternative IDs for this revision of the scorecard, e.g., `latest`. + [Newtonsoft.Json.JsonPropertyAttribute("alternateIds")] + public virtual System.Collections.Generic.IList AlternateIds { get; set; } - private object _activationUpdateTime; + private string _createTimeRaw; - /// Output only. The most recent time at which the activation status was updated. - [Newtonsoft.Json.JsonPropertyAttribute("activationUpdateTime")] - public virtual string ActivationUpdateTimeRaw + private object _createTime; + + /// Output only. The timestamp that the revision was created. + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw { - get => _activationUpdateTimeRaw; + get => _createTimeRaw; set { - _activationUpdateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _activationUpdateTimeRaw = value; + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; } } - /// representation of . + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use ActivationUpdateTimeDateTimeOffset instead.")] - public virtual object ActivationUpdateTime + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime { - get => _activationUpdateTime; + get => _createTime; set { - _activationUpdateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _activationUpdateTime = value; + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; } } - /// - /// representation of . - /// + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? ActivationUpdateTimeDateTimeOffset + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(ActivationUpdateTimeRaw); - set => ActivationUpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// Applies the phrase matcher only when it is active. - [Newtonsoft.Json.JsonPropertyAttribute("active")] - public virtual System.Nullable Active { get; set; } - - /// The human-readable name of the phrase matcher. - [Newtonsoft.Json.JsonPropertyAttribute("displayName")] - public virtual string DisplayName { get; set; } - /// - /// The resource name of the phrase matcher. Format: - /// projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher} + /// Identifier. The name of the scorecard revision. Format: + /// projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision} /// [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } - /// A list of phase match rule groups that are included in this matcher. - [Newtonsoft.Json.JsonPropertyAttribute("phraseMatchRuleGroups")] - public virtual System.Collections.Generic.IList PhraseMatchRuleGroups { get; set; } - - private string _revisionCreateTimeRaw; - - private object _revisionCreateTime; + /// The snapshot of the scorecard at the time of this revision's creation. + [Newtonsoft.Json.JsonPropertyAttribute("snapshot")] + public virtual GoogleCloudContactcenterinsightsV1QaScorecard Snapshot { get; set; } /// - /// Output only. The timestamp of when the revision was created. It is also the create time when a new matcher - /// is added. + /// Output only. State of the scorecard revision, indicating whether it's ready to be used in analysis. /// - [Newtonsoft.Json.JsonPropertyAttribute("revisionCreateTime")] - public virtual string RevisionCreateTimeRaw - { - get => _revisionCreateTimeRaw; - set - { - _revisionCreateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); - _revisionCreateTimeRaw = value; - } - } + [Newtonsoft.Json.JsonPropertyAttribute("state")] + public virtual string State { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The metadata from querying metrics. + public class GoogleCloudContactcenterinsightsV1QueryMetricsMetadata : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } - /// representation of . - [Newtonsoft.Json.JsonIgnoreAttribute] - [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use RevisionCreateTimeDateTimeOffset instead.")] - public virtual object RevisionCreateTime - { - get => _revisionCreateTime; - set - { - _revisionCreateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); - _revisionCreateTime = value; - } - } + /// The request for querying metrics. + public class GoogleCloudContactcenterinsightsV1QueryMetricsRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// The dimensions that determine the grouping key for the query. Defaults to no dimension if this field is + /// unspecified. If a dimension is specified, its key must also be specified. Each dimension's key must be + /// unique. If a time granularity is also specified, metric values in the dimension will be bucketed by this + /// granularity. Up to one dimension is supported for now. + /// + [Newtonsoft.Json.JsonPropertyAttribute("dimensions")] + public virtual System.Collections.Generic.IList Dimensions { get; set; } /// - /// representation of . + /// Required. Filter to select a subset of conversations to compute the metrics. Must specify a window of the + /// conversation create time to compute the metrics. The returned metrics will be from the range [DATE(starting + /// create time), DATE(ending create time)). /// - [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? RevisionCreateTimeDateTimeOffset - { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(RevisionCreateTimeRaw); - set => RevisionCreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); - } + [Newtonsoft.Json.JsonPropertyAttribute("filter")] + public virtual string Filter { get; set; } /// - /// Output only. Immutable. The revision ID of the phrase matcher. A new revision is committed whenever the - /// matcher is changed, except when it is activated or deactivated. A server generated random ID will be used. - /// Example: locations/global/phraseMatchers/my-first-matcher@1234567 + /// Measures to return. Defaults to all measures if this field is unspecified. A valid mask should traverse from + /// the `measure` field from the response. For example, a path from a measure mask to get the conversation count + /// is "conversation_measure.count". /// - [Newtonsoft.Json.JsonPropertyAttribute("revisionId")] - public virtual string RevisionId { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("measureMask")] + public virtual object MeasureMask { get; set; } /// - /// The role whose utterances the phrase matcher should be matched against. If the role is ROLE_UNSPECIFIED it - /// will be matched against any utterances in the transcript. + /// The time granularity of each data point in the time series. Defaults to NONE if this field is unspecified. /// - [Newtonsoft.Json.JsonPropertyAttribute("roleMatch")] - public virtual string RoleMatch { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("timeGranularity")] + public virtual string TimeGranularity { get; set; } - /// Required. The type of this phrase matcher. - [Newtonsoft.Json.JsonPropertyAttribute("type")] - public virtual string Type { get; set; } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The response for querying metrics. + public class GoogleCloudContactcenterinsightsV1QueryMetricsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. The location of the data. "projects/{project}/locations/{location}" + [Newtonsoft.Json.JsonPropertyAttribute("location")] + public virtual string Location { get; set; } + + /// + /// The macro average slice contains aggregated averages across the selected dimension. i.e. if group_by agent + /// is specified this field will contain the average across all agents. This field is only populated if the + /// request specifies a Dimension. + /// + [Newtonsoft.Json.JsonPropertyAttribute("macroAverageSlice")] + public virtual GoogleCloudContactcenterinsightsV1QueryMetricsResponseSlice MacroAverageSlice { get; set; } + + /// + /// A slice contains a total and (if the request specified a time granularity) a time series of metric values. + /// Each slice contains a unique combination of the cardinality of dimensions from the request. + /// + [Newtonsoft.Json.JsonPropertyAttribute("slices")] + public virtual System.Collections.Generic.IList Slices { get; set; } private string _updateTimeRaw; private object _updateTime; - /// Output only. The most recent time at which the phrase matcher was updated. + /// The metrics last update time. [Newtonsoft.Json.JsonPropertyAttribute("updateTime")] public virtual string UpdateTimeRaw { @@ -6676,12 +12039,131 @@ public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset set => UpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// A slice contains a total and (if the request specified a time granularity) a time series of metric values. Each + /// slice contains a unique combination of the cardinality of dimensions from the request. For example, if the + /// request specifies a single ISSUE dimension and it has a cardinality of 2 (i.e. the data used to compute the + /// metrics has 2 issues in total), the response will have 2 slices: * Slice 1 -&gt; dimensions=[Issue 1] * + /// Slice 2 -&gt; dimensions=[Issue 2] + /// + public class GoogleCloudContactcenterinsightsV1QueryMetricsResponseSlice : Google.Apis.Requests.IDirectResponseSchema + { + /// A unique combination of dimensions that this slice represents. + [Newtonsoft.Json.JsonPropertyAttribute("dimensions")] + public virtual System.Collections.Generic.IList Dimensions { get; set; } + /// - /// The customized version tag to use for the phrase matcher. If not specified, it will default to - /// `revision_id`. + /// A time series of metric values. This is only populated if the request specifies a time granularity other + /// than NONE. /// - [Newtonsoft.Json.JsonPropertyAttribute("versionTag")] - public virtual string VersionTag { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("timeSeries")] + public virtual GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceTimeSeries TimeSeries { get; set; } + + /// + /// The total metric value. The interval of this data point is [starting create time, ending create time) from + /// the request. + /// + [Newtonsoft.Json.JsonPropertyAttribute("total")] + public virtual GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPoint Total { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// A data point contains the metric values mapped to an interval. + public class GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPoint : Google.Apis.Requests.IDirectResponseSchema + { + /// The measure related to conversations. + [Newtonsoft.Json.JsonPropertyAttribute("conversationMeasure")] + public virtual GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointConversationMeasure ConversationMeasure { get; set; } + + /// + /// The interval that this data point represents. * If this is the total data point, the interval is [starting + /// create time, ending create time) from the request. * If this a data point from the time series, the interval + /// is [time, time + time granularity from the request). + /// + [Newtonsoft.Json.JsonPropertyAttribute("interval")] + public virtual GoogleTypeInterval Interval { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The measure related to conversations. + public class GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointConversationMeasure : Google.Apis.Requests.IDirectResponseSchema + { + /// The average agent's sentiment score. + [Newtonsoft.Json.JsonPropertyAttribute("averageAgentSentimentScore")] + public virtual System.Nullable AverageAgentSentimentScore { get; set; } + + /// The average client's sentiment score. + [Newtonsoft.Json.JsonPropertyAttribute("averageClientSentimentScore")] + public virtual System.Nullable AverageClientSentimentScore { get; set; } + + /// The average customer satisfaction rating. + [Newtonsoft.Json.JsonPropertyAttribute("averageCustomerSatisfactionRating")] + public virtual System.Nullable AverageCustomerSatisfactionRating { get; set; } + + /// The average duration. + [Newtonsoft.Json.JsonPropertyAttribute("averageDuration")] + public virtual object AverageDuration { get; set; } + + /// Average QA normalized score. Will exclude 0's in average calculation. + [Newtonsoft.Json.JsonPropertyAttribute("averageQaNormalizedScore")] + public virtual System.Nullable AverageQaNormalizedScore { get; set; } + + /// + /// Average QA normalized score averaged for questions averaged across all revisions of the parent scorecard. + /// Will be only populated if the request specifies a dimension of QA_QUESTION_ID. + /// + [Newtonsoft.Json.JsonPropertyAttribute("averageQaQuestionNormalizedScore")] + public virtual System.Nullable AverageQaQuestionNormalizedScore { get; set; } + + /// The average silence percentage. + [Newtonsoft.Json.JsonPropertyAttribute("averageSilencePercentage")] + public virtual System.Nullable AverageSilencePercentage { get; set; } + + /// The average turn count. + [Newtonsoft.Json.JsonPropertyAttribute("averageTurnCount")] + public virtual System.Nullable AverageTurnCount { get; set; } + + /// The conversation count. + [Newtonsoft.Json.JsonPropertyAttribute("conversationCount")] + public virtual System.Nullable ConversationCount { get; set; } + + /// Average QA normalized score for all the tags. + [Newtonsoft.Json.JsonPropertyAttribute("qaTagScores")] + public virtual System.Collections.Generic.IList QaTagScores { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Average QA normalized score for the tag. + public class GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointConversationMeasureQaTagScore : Google.Apis.Requests.IDirectResponseSchema + { + /// Average tag normalized score per tag. + [Newtonsoft.Json.JsonPropertyAttribute("averageTagNormalizedScore")] + public virtual System.Nullable AverageTagNormalizedScore { get; set; } + + /// Tag name. + [Newtonsoft.Json.JsonPropertyAttribute("tag")] + public virtual string Tag { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// A time series of metric values. + public class GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceTimeSeries : Google.Apis.Requests.IDirectResponseSchema + { + /// The data points that make up the time series . + [Newtonsoft.Json.JsonPropertyAttribute("dataPoints")] + public virtual System.Collections.Generic.IList DataPoints { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } @@ -7099,6 +12581,29 @@ public class GoogleCloudContactcenterinsightsV1SpeechConfig : Google.Apis.Reques public virtual string ETag { get; set; } } + /// Request for TuneQaScorecardRevision endpoint. + public class GoogleCloudContactcenterinsightsV1TuneQaScorecardRevisionRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Required. Filter for selecting the feedback labels that needs to be used for training. This filter can be + /// used to limit the feedback labels used for tuning to a feedback labels created or updated for a specific + /// time-window etc. + /// + [Newtonsoft.Json.JsonPropertyAttribute("filter")] + public virtual string Filter { get; set; } + + /// + /// Optional. Run in validate only mode, no fine tuning will actually run. Data quality validations like + /// training data distributions will run. Even when set to false, the data quality validations will still run + /// but once the validations complete we will proceed with the fine tune, if applicable. + /// + [Newtonsoft.Json.JsonPropertyAttribute("validateOnly")] + public virtual System.Nullable ValidateOnly { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Metadata for undeploying an issue model. public class GoogleCloudContactcenterinsightsV1UndeployIssueModelMetadata : Google.Apis.Requests.IDirectResponseSchema { @@ -7202,6 +12707,13 @@ public class GoogleCloudContactcenterinsightsV1UndeployIssueModelResponse : Goog public virtual string ETag { get; set; } } + /// The request to undeploy a QaScorecardRevision + public class GoogleCloudContactcenterinsightsV1UndeployQaScorecardRevisionRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// The metadata for an `UploadConversation` operation. public class GoogleCloudContactcenterinsightsV1UploadConversationMetadata : Google.Apis.Requests.IDirectResponseSchema { @@ -7596,6 +13108,10 @@ public class GoogleCloudContactcenterinsightsV1alpha1AnalysisResultCallAnalysisM [Newtonsoft.Json.JsonPropertyAttribute("phraseMatchers")] public virtual System.Collections.Generic.IDictionary PhraseMatchers { get; set; } + /// Results of scoring QaScorecards. + [Newtonsoft.Json.JsonPropertyAttribute("qaScorecardResults")] + public virtual System.Collections.Generic.IList QaScorecardResults { get; set; } + /// Overall conversation-level sentiment for each channel of the call. [Newtonsoft.Json.JsonPropertyAttribute("sentiments")] public virtual System.Collections.Generic.IList Sentiments { get; set; } @@ -7650,6 +13166,10 @@ public class GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelector : Google. [Newtonsoft.Json.JsonPropertyAttribute("phraseMatchers")] public virtual System.Collections.Generic.IList PhraseMatchers { get; set; } + /// Configuration for the QA annotator. + [Newtonsoft.Json.JsonPropertyAttribute("qaConfig")] + public virtual GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorQaConfig QaConfig { get; set; } + /// Whether to run the entity annotator. [Newtonsoft.Json.JsonPropertyAttribute("runEntityAnnotator")] public virtual System.Nullable RunEntityAnnotator { get; set; } @@ -7672,6 +13192,10 @@ public class GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelector : Google. [Newtonsoft.Json.JsonPropertyAttribute("runPhraseMatcherAnnotator")] public virtual System.Nullable RunPhraseMatcherAnnotator { get; set; } + /// Whether to run the QA annotator. + [Newtonsoft.Json.JsonPropertyAttribute("runQaAnnotator")] + public virtual System.Nullable RunQaAnnotator { get; set; } + /// Whether to run the sentiment annotator. [Newtonsoft.Json.JsonPropertyAttribute("runSentimentAnnotator")] public virtual System.Nullable RunSentimentAnnotator { get; set; } @@ -7692,6 +13216,28 @@ public class GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelector : Google. public virtual string ETag { get; set; } } + /// Configuration for the QA feature. + public class GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorQaConfig : Google.Apis.Requests.IDirectResponseSchema + { + /// A manual list of scorecards to score. + [Newtonsoft.Json.JsonPropertyAttribute("scorecardList")] + public virtual GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorQaConfigScorecardList ScorecardList { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Container for a list of scorecards. + public class GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorQaConfigScorecardList : Google.Apis.Requests.IDirectResponseSchema + { + /// List of QaScorecardRevisions. + [Newtonsoft.Json.JsonPropertyAttribute("qaScorecardRevisions")] + public virtual System.Collections.Generic.IList QaScorecardRevisions { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Configuration for summarization. public class GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorSummarizationConfig : Google.Apis.Requests.IDirectResponseSchema { @@ -9105,6 +14651,119 @@ public class GoogleCloudContactcenterinsightsV1alpha1DialogflowSource : Google.A public virtual string ETag { get; set; } } + /// + /// A dimension determines the grouping key for the query. In SQL terms, these would be part of both the "SELECT" + /// and "GROUP BY" clauses. + /// + public class GoogleCloudContactcenterinsightsV1alpha1Dimension : Google.Apis.Requests.IDirectResponseSchema + { + /// Output only. Metadata about the agent dimension. + [Newtonsoft.Json.JsonPropertyAttribute("agentDimensionMetadata")] + public virtual GoogleCloudContactcenterinsightsV1alpha1DimensionAgentDimensionMetadata AgentDimensionMetadata { get; set; } + + /// The key of the dimension. + [Newtonsoft.Json.JsonPropertyAttribute("dimensionKey")] + public virtual string DimensionKey { get; set; } + + /// Output only. Metadata about the issue dimension. + [Newtonsoft.Json.JsonPropertyAttribute("issueDimensionMetadata")] + public virtual GoogleCloudContactcenterinsightsV1alpha1DimensionIssueDimensionMetadata IssueDimensionMetadata { get; set; } + + /// Output only. Metadata about the QA question-answer dimension. + [Newtonsoft.Json.JsonPropertyAttribute("qaQuestionAnswerDimensionMetadata")] + public virtual GoogleCloudContactcenterinsightsV1alpha1DimensionQaQuestionAnswerDimensionMetadata QaQuestionAnswerDimensionMetadata { get; set; } + + /// Output only. Metadata about the QA question dimension. + [Newtonsoft.Json.JsonPropertyAttribute("qaQuestionDimensionMetadata")] + public virtual GoogleCloudContactcenterinsightsV1alpha1DimensionQaQuestionDimensionMetadata QaQuestionDimensionMetadata { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Metadata about the agent dimension. + public class GoogleCloudContactcenterinsightsV1alpha1DimensionAgentDimensionMetadata : Google.Apis.Requests.IDirectResponseSchema + { + /// Optional. The agent's name + [Newtonsoft.Json.JsonPropertyAttribute("agentDisplayName")] + public virtual string AgentDisplayName { get; set; } + + /// Optional. A user-specified string representing the agent. + [Newtonsoft.Json.JsonPropertyAttribute("agentId")] + public virtual string AgentId { get; set; } + + /// Optional. A user-specified string representing the agent's team. + [Newtonsoft.Json.JsonPropertyAttribute("agentTeam")] + public virtual string AgentTeam { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Metadata about the issue dimension. + public class GoogleCloudContactcenterinsightsV1alpha1DimensionIssueDimensionMetadata : Google.Apis.Requests.IDirectResponseSchema + { + /// The issue display name. + [Newtonsoft.Json.JsonPropertyAttribute("issueDisplayName")] + public virtual string IssueDisplayName { get; set; } + + /// The issue ID. + [Newtonsoft.Json.JsonPropertyAttribute("issueId")] + public virtual string IssueId { get; set; } + + /// The parent issue model ID. + [Newtonsoft.Json.JsonPropertyAttribute("issueModelId")] + public virtual string IssueModelId { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// Metadata about the QA question-answer dimension. This is useful for showing the answer distribution for + /// questions for a given scorecard. + /// + public class GoogleCloudContactcenterinsightsV1alpha1DimensionQaQuestionAnswerDimensionMetadata : Google.Apis.Requests.IDirectResponseSchema + { + /// Optional. The full body of the question. + [Newtonsoft.Json.JsonPropertyAttribute("answerValue")] + public virtual string AnswerValue { get; set; } + + /// Optional. The QA question ID. + [Newtonsoft.Json.JsonPropertyAttribute("qaQuestionId")] + public virtual string QaQuestionId { get; set; } + + /// Optional. The QA scorecard ID. + [Newtonsoft.Json.JsonPropertyAttribute("qaScorecardId")] + public virtual string QaScorecardId { get; set; } + + /// Optional. The full body of the question. + [Newtonsoft.Json.JsonPropertyAttribute("questionBody")] + public virtual string QuestionBody { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Metadata about the QA question dimension. + public class GoogleCloudContactcenterinsightsV1alpha1DimensionQaQuestionDimensionMetadata : Google.Apis.Requests.IDirectResponseSchema + { + /// Optional. The QA question ID. + [Newtonsoft.Json.JsonPropertyAttribute("qaQuestionId")] + public virtual string QaQuestionId { get; set; } + + /// Optional. The QA scorecard ID. + [Newtonsoft.Json.JsonPropertyAttribute("qaScorecardId")] + public virtual string QaScorecardId { get; set; } + + /// Optional. The full body of the question. + [Newtonsoft.Json.JsonPropertyAttribute("questionBody")] + public virtual string QuestionBody { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// /// A customer-managed encryption key specification that can be applied to all created resources (e.g. /// `Conversation`). @@ -9494,16 +15153,116 @@ public class GoogleCloudContactcenterinsightsV1alpha1FaqAnswerData : Google.Apis [Newtonsoft.Json.JsonPropertyAttribute("queryRecord")] public virtual string QueryRecord { get; set; } - /// The corresponding FAQ question. - [Newtonsoft.Json.JsonPropertyAttribute("question")] - public virtual string Question { get; set; } + /// The corresponding FAQ question. + [Newtonsoft.Json.JsonPropertyAttribute("question")] + public virtual string Question { get; set; } + + /// + /// The knowledge document that this answer was extracted from. Format: + /// projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}. + /// + [Newtonsoft.Json.JsonPropertyAttribute("source")] + public virtual string Source { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Represents a conversation, resource, and label provided by the user. + public class GoogleCloudContactcenterinsightsV1alpha1FeedbackLabel : Google.Apis.Requests.IDirectResponseSchema + { + private string _createTimeRaw; + + private object _createTime; + + /// Output only. Create time of the label. + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw + { + get => _createTimeRaw; + set + { + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime + { + get => _createTime; + set + { + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// String label. + [Newtonsoft.Json.JsonPropertyAttribute("label")] + public virtual string Label { get; set; } + + /// Resource name of the resource to be labeled. + [Newtonsoft.Json.JsonPropertyAttribute("labeledResource")] + public virtual string LabeledResource { get; set; } + + /// + /// Immutable. Resource name of the FeedbackLabel. Format: + /// projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label} + /// + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// QaAnswer label. + [Newtonsoft.Json.JsonPropertyAttribute("qaAnswerLabel")] + public virtual GoogleCloudContactcenterinsightsV1alpha1QaAnswerAnswerValue QaAnswerLabel { get; set; } + + private string _updateTimeRaw; + + private object _updateTime; + + /// Output only. Update time of the label. + [Newtonsoft.Json.JsonPropertyAttribute("updateTime")] + public virtual string UpdateTimeRaw + { + get => _updateTimeRaw; + set + { + _updateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _updateTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use UpdateTimeDateTimeOffset instead.")] + public virtual object UpdateTime + { + get => _updateTime; + set + { + _updateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _updateTime = value; + } + } - /// - /// The knowledge document that this answer was extracted from. Format: - /// projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}. - /// - [Newtonsoft.Json.JsonPropertyAttribute("source")] - public virtual string Source { get; set; } + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(UpdateTimeRaw); + set => UpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } /// The ETag of the item. public virtual string ETag { get; set; } @@ -9976,131 +15735,483 @@ public virtual object EndTime } } - /// representation of . + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? EndTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); + set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// + /// Partial errors during initializing operation that might cause the operation output to be incomplete. + /// + [Newtonsoft.Json.JsonPropertyAttribute("partialErrors")] + public virtual System.Collections.Generic.IList PartialErrors { get; set; } + + /// Output only. The original request for initialization. + [Newtonsoft.Json.JsonPropertyAttribute("request")] + public virtual GoogleCloudContactcenterinsightsV1alpha1InitializeEncryptionSpecRequest Request { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The request to initialize a location-level encryption specification. + public class GoogleCloudContactcenterinsightsV1alpha1InitializeEncryptionSpecRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Required. The encryption spec used for CMEK encryption. It is required that the kms key is in the same + /// region as the endpoint. The same key will be used for all provisioned resources, if encryption is available. + /// If the `kms_key_name` field is left empty, no encryption will be enforced. + /// + [Newtonsoft.Json.JsonPropertyAttribute("encryptionSpec")] + public virtual GoogleCloudContactcenterinsightsV1alpha1EncryptionSpec EncryptionSpec { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The response to initialize a location-level encryption specification. + public class GoogleCloudContactcenterinsightsV1alpha1InitializeEncryptionSpecResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// The data for an intent. Represents a detected intent in the conversation, for example MAKES_PROMISE. + /// + public class GoogleCloudContactcenterinsightsV1alpha1Intent : Google.Apis.Requests.IDirectResponseSchema + { + /// The human-readable name of the intent. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + + /// The unique identifier of the intent. + [Newtonsoft.Json.JsonPropertyAttribute("id")] + public virtual string Id { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// The data for an intent match. Represents an intent match for a text segment in the conversation. A text segment + /// can be part of a sentence, a complete sentence, or an utterance with multiple sentences. + /// + public class GoogleCloudContactcenterinsightsV1alpha1IntentMatchData : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// The id of the matched intent. Can be used to retrieve the corresponding intent information. + /// + [Newtonsoft.Json.JsonPropertyAttribute("intentUniqueId")] + public virtual string IntentUniqueId { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The data for an interruption annotation. + public class GoogleCloudContactcenterinsightsV1alpha1InterruptionData : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Information about the issue. + public class GoogleCloudContactcenterinsightsV1alpha1IssueAssignment : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Immutable. Display name of the assigned issue. This field is set at time of analyis and immutable since + /// then. + /// + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + + /// Resource name of the assigned issue. + [Newtonsoft.Json.JsonPropertyAttribute("issue")] + public virtual string Issue { get; set; } + + /// Score indicating the likelihood of the issue assignment. currently bounded on [0,1]. + [Newtonsoft.Json.JsonPropertyAttribute("score")] + public virtual System.Nullable Score { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The data for an issue match annotation. + public class GoogleCloudContactcenterinsightsV1alpha1IssueMatchData : Google.Apis.Requests.IDirectResponseSchema + { + /// Information about the issue's assignment. + [Newtonsoft.Json.JsonPropertyAttribute("issueAssignment")] + public virtual GoogleCloudContactcenterinsightsV1alpha1IssueAssignment IssueAssignment { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The issue model resource. + public class GoogleCloudContactcenterinsightsV1alpha1IssueModel : Google.Apis.Requests.IDirectResponseSchema + { + private string _createTimeRaw; + + private object _createTime; + + /// Output only. The time at which this issue model was created. + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw + { + get => _createTimeRaw; + set + { + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime + { + get => _createTime; + set + { + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// The representative name for the issue model. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + + /// Configs for the input data that used to create the issue model. + [Newtonsoft.Json.JsonPropertyAttribute("inputDataConfig")] + public virtual GoogleCloudContactcenterinsightsV1alpha1IssueModelInputDataConfig InputDataConfig { get; set; } + + /// Output only. Number of issues in this issue model. + [Newtonsoft.Json.JsonPropertyAttribute("issueCount")] + public virtual System.Nullable IssueCount { get; set; } + + /// Language of the model. + [Newtonsoft.Json.JsonPropertyAttribute("languageCode")] + public virtual string LanguageCode { get; set; } + + /// Type of the model. + [Newtonsoft.Json.JsonPropertyAttribute("modelType")] + public virtual string ModelType { get; set; } + + /// + /// Immutable. The resource name of the issue model. Format: + /// projects/{project}/locations/{location}/issueModels/{issue_model} + /// + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// Output only. State of the model. + [Newtonsoft.Json.JsonPropertyAttribute("state")] + public virtual string State { get; set; } + + /// Output only. Immutable. The issue model's label statistics on its training data. + [Newtonsoft.Json.JsonPropertyAttribute("trainingStats")] + public virtual GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStats TrainingStats { get; set; } + + private string _updateTimeRaw; + + private object _updateTime; + + /// Output only. The most recent time at which the issue model was updated. + [Newtonsoft.Json.JsonPropertyAttribute("updateTime")] + public virtual string UpdateTimeRaw + { + get => _updateTimeRaw; + set + { + _updateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _updateTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use UpdateTimeDateTimeOffset instead.")] + public virtual object UpdateTime + { + get => _updateTime; + set + { + _updateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _updateTime = value; + } + } + + /// representation of . [Newtonsoft.Json.JsonIgnoreAttribute] - public virtual System.DateTimeOffset? EndTimeDateTimeOffset + public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset { - get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); - set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(UpdateTimeRaw); + set => UpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Configs for the input data used to create the issue model. + public class GoogleCloudContactcenterinsightsV1alpha1IssueModelInputDataConfig : Google.Apis.Requests.IDirectResponseSchema + { + /// A filter to reduce the conversations used for training the model to a specific subset. + [Newtonsoft.Json.JsonPropertyAttribute("filter")] + public virtual string Filter { get; set; } + /// - /// Partial errors during initializing operation that might cause the operation output to be incomplete. + /// Medium of conversations used in training data. This field is being deprecated. To specify the medium to be + /// used in training a new issue model, set the `medium` field on `filter`. /// - [Newtonsoft.Json.JsonPropertyAttribute("partialErrors")] - public virtual System.Collections.Generic.IList PartialErrors { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("medium")] + public virtual string Medium { get; set; } - /// Output only. The original request for initialization. - [Newtonsoft.Json.JsonPropertyAttribute("request")] - public virtual GoogleCloudContactcenterinsightsV1alpha1InitializeEncryptionSpecRequest Request { get; set; } + /// Output only. Number of conversations used in training. Output only. + [Newtonsoft.Json.JsonPropertyAttribute("trainingConversationsCount")] + public virtual System.Nullable TrainingConversationsCount { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The request to initialize a location-level encryption specification. - public class GoogleCloudContactcenterinsightsV1alpha1InitializeEncryptionSpecRequest : Google.Apis.Requests.IDirectResponseSchema + /// Aggregated statistics about an issue model. + public class GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStats : Google.Apis.Requests.IDirectResponseSchema + { + /// Number of conversations the issue model has analyzed at this point in time. + [Newtonsoft.Json.JsonPropertyAttribute("analyzedConversationsCount")] + public virtual System.Nullable AnalyzedConversationsCount { get; set; } + + /// Statistics on each issue. Key is the issue's resource name. + [Newtonsoft.Json.JsonPropertyAttribute("issueStats")] + public virtual System.Collections.Generic.IDictionary IssueStats { get; set; } + + /// Number of analyzed conversations for which no issue was applicable at this point in time. + [Newtonsoft.Json.JsonPropertyAttribute("unclassifiedConversationsCount")] + public virtual System.Nullable UnclassifiedConversationsCount { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Aggregated statistics about an issue. + public class GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStatsIssueStats : Google.Apis.Requests.IDirectResponseSchema { + /// Display name of the issue. + [Newtonsoft.Json.JsonPropertyAttribute("displayName")] + public virtual string DisplayName { get; set; } + /// - /// Required. The encryption spec used for CMEK encryption. It is required that the kms key is in the same - /// region as the endpoint. The same key will be used for all provisioned resources, if encryption is available. - /// If the `kms_key_name` field is left empty, no encryption will be enforced. + /// Issue resource. Format: projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue} /// - [Newtonsoft.Json.JsonPropertyAttribute("encryptionSpec")] - public virtual GoogleCloudContactcenterinsightsV1alpha1EncryptionSpec EncryptionSpec { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("issue")] + public virtual string Issue { get; set; } + + /// Number of conversations attached to the issue at this point in time. + [Newtonsoft.Json.JsonPropertyAttribute("labeledConversationsCount")] + public virtual System.Nullable LabeledConversationsCount { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The response to initialize a location-level encryption specification. - public class GoogleCloudContactcenterinsightsV1alpha1InitializeEncryptionSpecResponse : Google.Apis.Requests.IDirectResponseSchema + /// Issue Modeling result on a conversation. + public class GoogleCloudContactcenterinsightsV1alpha1IssueModelResult : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Issue model that generates the result. Format: + /// projects/{project}/locations/{location}/issueModels/{issue_model} + /// + [Newtonsoft.Json.JsonPropertyAttribute("issueModel")] + public virtual string IssueModel { get; set; } + + /// All the matched issues. + [Newtonsoft.Json.JsonPropertyAttribute("issues")] + public virtual System.Collections.Generic.IList Issues { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The response for listing all feedback labels. + public class GoogleCloudContactcenterinsightsV1alpha1ListAllFeedbackLabelsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The feedback labels that match the request. + [Newtonsoft.Json.JsonPropertyAttribute("feedbackLabels")] + public virtual System.Collections.Generic.IList FeedbackLabels { get; set; } + + /// + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. + /// + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The response for listing feedback labels. + public class GoogleCloudContactcenterinsightsV1alpha1ListFeedbackLabelsResponse : Google.Apis.Requests.IDirectResponseSchema { + /// The feedback labels that match the request. + [Newtonsoft.Json.JsonPropertyAttribute("feedbackLabels")] + public virtual System.Collections.Generic.IList FeedbackLabels { get; set; } + + /// The next page token. + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } /// - /// The data for an intent. Represents a detected intent in the conversation, for example MAKES_PROMISE. + /// The data for a matched phrase matcher. Represents information identifying a phrase matcher for a given match. /// - public class GoogleCloudContactcenterinsightsV1alpha1Intent : Google.Apis.Requests.IDirectResponseSchema + public class GoogleCloudContactcenterinsightsV1alpha1PhraseMatchData : Google.Apis.Requests.IDirectResponseSchema { - /// The human-readable name of the intent. + /// The human-readable name of the phrase matcher. [Newtonsoft.Json.JsonPropertyAttribute("displayName")] public virtual string DisplayName { get; set; } - /// The unique identifier of the intent. - [Newtonsoft.Json.JsonPropertyAttribute("id")] - public virtual string Id { get; set; } + /// The unique identifier (the resource name) of the phrase matcher. + [Newtonsoft.Json.JsonPropertyAttribute("phraseMatcher")] + public virtual string PhraseMatcher { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// - /// The data for an intent match. Represents an intent match for a text segment in the conversation. A text segment - /// can be part of a sentence, a complete sentence, or an utterance with multiple sentences. - /// - public class GoogleCloudContactcenterinsightsV1alpha1IntentMatchData : Google.Apis.Requests.IDirectResponseSchema + /// An answer to a QaQuestion. + public class GoogleCloudContactcenterinsightsV1alpha1QaAnswer : Google.Apis.Requests.IDirectResponseSchema { + /// List of all individual answers given to the question. + [Newtonsoft.Json.JsonPropertyAttribute("answerSources")] + public virtual System.Collections.Generic.IList AnswerSources { get; set; } + + /// The main answer value, incorporating any manual edits if they exist. + [Newtonsoft.Json.JsonPropertyAttribute("answerValue")] + public virtual GoogleCloudContactcenterinsightsV1alpha1QaAnswerAnswerValue AnswerValue { get; set; } + + /// The conversation the answer applies to. + [Newtonsoft.Json.JsonPropertyAttribute("conversation")] + public virtual string Conversation { get; set; } + /// - /// The id of the matched intent. Can be used to retrieve the corresponding intent information. + /// The maximum potential score of the question. If the question was answered using `na_value`, this field will + /// be zero. /// - [Newtonsoft.Json.JsonPropertyAttribute("intentUniqueId")] - public virtual string IntentUniqueId { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("potentialScore")] + public virtual System.Nullable PotentialScore { get; set; } + + /// The QaQuestion answered by this answer. + [Newtonsoft.Json.JsonPropertyAttribute("qaQuestion")] + public virtual string QaQuestion { get; set; } + + /// Question text. E.g., "Did the agent greet the customer?" + [Newtonsoft.Json.JsonPropertyAttribute("questionBody")] + public virtual string QuestionBody { get; set; } + + /// + /// User-defined list of arbitrary tags. Matches the value from QaScorecard.ScorecardQuestion.tags. Used for + /// grouping/organization and for weighting the score of each answer. + /// + [Newtonsoft.Json.JsonPropertyAttribute("tags")] + public virtual System.Collections.Generic.IList Tags { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// The data for an interruption annotation. - public class GoogleCloudContactcenterinsightsV1alpha1InterruptionData : Google.Apis.Requests.IDirectResponseSchema + /// + /// A question may have multiple answers from varying sources, one of which becomes the "main" answer above. + /// AnswerSource represents each individual answer. + /// + public class GoogleCloudContactcenterinsightsV1alpha1QaAnswerAnswerSource : Google.Apis.Requests.IDirectResponseSchema { + /// The answer value from this source. + [Newtonsoft.Json.JsonPropertyAttribute("answerValue")] + public virtual GoogleCloudContactcenterinsightsV1alpha1QaAnswerAnswerValue AnswerValue { get; set; } + + /// What created the answer. + [Newtonsoft.Json.JsonPropertyAttribute("sourceType")] + public virtual string SourceType { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// Information about the issue. - public class GoogleCloudContactcenterinsightsV1alpha1IssueAssignment : Google.Apis.Requests.IDirectResponseSchema + /// + /// Message for holding the value of the answer. QaQuestion.AnswerChoice defines the possible answer values for a + /// question. + /// + public class GoogleCloudContactcenterinsightsV1alpha1QaAnswerAnswerValue : Google.Apis.Requests.IDirectResponseSchema { + /// Boolean value. + [Newtonsoft.Json.JsonPropertyAttribute("boolValue")] + public virtual System.Nullable BoolValue { get; set; } + /// - /// Immutable. Display name of the assigned issue. This field is set at time of analyis and immutable since - /// then. + /// A short string used as an identifier. Matches the value used in QaQuestion.AnswerChoice.key. /// - [Newtonsoft.Json.JsonPropertyAttribute("displayName")] - public virtual string DisplayName { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("key")] + public virtual string Key { get; set; } - /// Resource name of the assigned issue. - [Newtonsoft.Json.JsonPropertyAttribute("issue")] - public virtual string Issue { get; set; } + /// A value of "Not Applicable (N/A)". + [Newtonsoft.Json.JsonPropertyAttribute("naValue")] + public virtual System.Nullable NaValue { get; set; } - /// Score indicating the likelihood of the issue assignment. currently bounded on [0,1]. + /// Numerical value. + [Newtonsoft.Json.JsonPropertyAttribute("numValue")] + public virtual System.Nullable NumValue { get; set; } + + /// Numerical score of the answer. [Newtonsoft.Json.JsonPropertyAttribute("score")] public virtual System.Nullable Score { get; set; } + /// String value. + [Newtonsoft.Json.JsonPropertyAttribute("strValue")] + public virtual string StrValue { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } - /// The data for an issue match annotation. - public class GoogleCloudContactcenterinsightsV1alpha1IssueMatchData : Google.Apis.Requests.IDirectResponseSchema + /// + /// The results of scoring a single conversation against a QaScorecard. Contains a collection of QaAnswers and + /// aggregate score. + /// + public class GoogleCloudContactcenterinsightsV1alpha1QaScorecardResult : Google.Apis.Requests.IDirectResponseSchema { - /// Information about the issue's assignment. - [Newtonsoft.Json.JsonPropertyAttribute("issueAssignment")] - public virtual GoogleCloudContactcenterinsightsV1alpha1IssueAssignment IssueAssignment { get; set; } + /// ID of the agent that handled the conversation. + [Newtonsoft.Json.JsonPropertyAttribute("agentId")] + public virtual string AgentId { get; set; } - /// The ETag of the item. - public virtual string ETag { get; set; } - } + /// The conversation scored by this result. + [Newtonsoft.Json.JsonPropertyAttribute("conversation")] + public virtual string Conversation { get; set; } - /// The issue model resource. - public class GoogleCloudContactcenterinsightsV1alpha1IssueModel : Google.Apis.Requests.IDirectResponseSchema - { private string _createTimeRaw; private object _createTime; - /// Output only. The time at which this issue model was created. + /// Output only. The timestamp that the revision was created. [Newtonsoft.Json.JsonPropertyAttribute("createTime")] public virtual string CreateTimeRaw { @@ -10133,46 +16244,141 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); } - /// The representative name for the issue model. - [Newtonsoft.Json.JsonPropertyAttribute("displayName")] - public virtual string DisplayName { get; set; } + /// + /// Identifier. The name of the scorecard result. Format: + /// projects/{project}/locations/{location}/qaScorecardResults/{qa_scorecard_result} + /// + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } - /// Configs for the input data that used to create the issue model. - [Newtonsoft.Json.JsonPropertyAttribute("inputDataConfig")] - public virtual GoogleCloudContactcenterinsightsV1alpha1IssueModelInputDataConfig InputDataConfig { get; set; } + /// + /// The normalized score, which is the score divided by the potential score. Any manual edits are included if + /// they exist. + /// + [Newtonsoft.Json.JsonPropertyAttribute("normalizedScore")] + public virtual System.Nullable NormalizedScore { get; set; } - /// Output only. Number of issues in this issue model. - [Newtonsoft.Json.JsonPropertyAttribute("issueCount")] - public virtual System.Nullable IssueCount { get; set; } + /// + /// The maximum potential overall score of the scorecard. Any questions answered using `na_value` are excluded + /// from this calculation. + /// + [Newtonsoft.Json.JsonPropertyAttribute("potentialScore")] + public virtual System.Nullable PotentialScore { get; set; } - /// Language of the model. - [Newtonsoft.Json.JsonPropertyAttribute("languageCode")] - public virtual string LanguageCode { get; set; } + /// Set of QaAnswers represented in the result. + [Newtonsoft.Json.JsonPropertyAttribute("qaAnswers")] + public virtual System.Collections.Generic.IList QaAnswers { get; set; } - /// Type of the model. - [Newtonsoft.Json.JsonPropertyAttribute("modelType")] - public virtual string ModelType { get; set; } + /// The QaScorecardRevision scored by this result. + [Newtonsoft.Json.JsonPropertyAttribute("qaScorecardRevision")] + public virtual string QaScorecardRevision { get; set; } + + /// Collection of tags and their scores. + [Newtonsoft.Json.JsonPropertyAttribute("qaTagResults")] + public virtual System.Collections.Generic.IList QaTagResults { get; set; } + + /// The overall numerical score of the result, incorporating any manual edits if they exist. + [Newtonsoft.Json.JsonPropertyAttribute("score")] + public virtual System.Nullable Score { get; set; } + + /// List of all individual score sets. + [Newtonsoft.Json.JsonPropertyAttribute("scoreSources")] + public virtual System.Collections.Generic.IList ScoreSources { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Tags and their corresponding results. + public class GoogleCloudContactcenterinsightsV1alpha1QaScorecardResultQaTagResult : Google.Apis.Requests.IDirectResponseSchema + { + /// The normalized score the tag applies to. + [Newtonsoft.Json.JsonPropertyAttribute("normalizedScore")] + public virtual System.Nullable NormalizedScore { get; set; } + + /// The potential score the tag applies to. + [Newtonsoft.Json.JsonPropertyAttribute("potentialScore")] + public virtual System.Nullable PotentialScore { get; set; } + + /// The score the tag applies to. + [Newtonsoft.Json.JsonPropertyAttribute("score")] + public virtual System.Nullable Score { get; set; } + + /// The tag the score applies to. + [Newtonsoft.Json.JsonPropertyAttribute("tag")] + public virtual string Tag { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// A scorecard result may have multiple sets of scores from varying sources, one of which becomes the "main" answer + /// above. A ScoreSource represents each individual set of scores. + /// + public class GoogleCloudContactcenterinsightsV1alpha1QaScorecardResultScoreSource : Google.Apis.Requests.IDirectResponseSchema + { + /// The normalized score, which is the score divided by the potential score. + [Newtonsoft.Json.JsonPropertyAttribute("normalizedScore")] + public virtual System.Nullable NormalizedScore { get; set; } /// - /// Immutable. The resource name of the issue model. Format: - /// projects/{project}/locations/{location}/issueModels/{issue_model} + /// The maximum potential overall score of the scorecard. Any questions answered using `na_value` are excluded + /// from this calculation. /// - [Newtonsoft.Json.JsonPropertyAttribute("name")] - public virtual string Name { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("potentialScore")] + public virtual System.Nullable PotentialScore { get; set; } - /// Output only. State of the model. - [Newtonsoft.Json.JsonPropertyAttribute("state")] - public virtual string State { get; set; } + /// Collection of tags and their scores. + [Newtonsoft.Json.JsonPropertyAttribute("qaTagResults")] + public virtual System.Collections.Generic.IList QaTagResults { get; set; } - /// Output only. Immutable. The issue model's label statistics on its training data. - [Newtonsoft.Json.JsonPropertyAttribute("trainingStats")] - public virtual GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStats TrainingStats { get; set; } + /// The overall numerical score of the result. + [Newtonsoft.Json.JsonPropertyAttribute("score")] + public virtual System.Nullable Score { get; set; } + + /// What created the score. + [Newtonsoft.Json.JsonPropertyAttribute("sourceType")] + public virtual string SourceType { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The metadata from querying metrics. + public class GoogleCloudContactcenterinsightsV1alpha1QueryMetricsMetadata : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The response for querying metrics. + public class GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. The location of the data. "projects/{project}/locations/{location}" + [Newtonsoft.Json.JsonPropertyAttribute("location")] + public virtual string Location { get; set; } + + /// + /// The macro average slice contains aggregated averages across the selected dimension. i.e. if group_by agent + /// is specified this field will contain the average across all agents. This field is only populated if the + /// request specifies a Dimension. + /// + [Newtonsoft.Json.JsonPropertyAttribute("macroAverageSlice")] + public virtual GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSlice MacroAverageSlice { get; set; } + + /// + /// A slice contains a total and (if the request specified a time granularity) a time series of metric values. + /// Each slice contains a unique combination of the cardinality of dimensions from the request. + /// + [Newtonsoft.Json.JsonPropertyAttribute("slices")] + public virtual System.Collections.Generic.IList Slices { get; set; } private string _updateTimeRaw; private object _updateTime; - /// Output only. The most recent time at which the issue model was updated. + /// The metrics last update time. [Newtonsoft.Json.JsonPropertyAttribute("updateTime")] public virtual string UpdateTimeRaw { @@ -10209,98 +16415,127 @@ public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset public virtual string ETag { get; set; } } - /// Configs for the input data used to create the issue model. - public class GoogleCloudContactcenterinsightsV1alpha1IssueModelInputDataConfig : Google.Apis.Requests.IDirectResponseSchema + /// + /// A slice contains a total and (if the request specified a time granularity) a time series of metric values. Each + /// slice contains a unique combination of the cardinality of dimensions from the request. For example, if the + /// request specifies a single ISSUE dimension and it has a cardinality of 2 (i.e. the data used to compute the + /// metrics has 2 issues in total), the response will have 2 slices: * Slice 1 -&gt; dimensions=[Issue 1] * + /// Slice 2 -&gt; dimensions=[Issue 2] + /// + public class GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSlice : Google.Apis.Requests.IDirectResponseSchema { - /// A filter to reduce the conversations used for training the model to a specific subset. - [Newtonsoft.Json.JsonPropertyAttribute("filter")] - public virtual string Filter { get; set; } + /// A unique combination of dimensions that this slice represents. + [Newtonsoft.Json.JsonPropertyAttribute("dimensions")] + public virtual System.Collections.Generic.IList Dimensions { get; set; } /// - /// Medium of conversations used in training data. This field is being deprecated. To specify the medium to be - /// used in training a new issue model, set the `medium` field on `filter`. + /// A time series of metric values. This is only populated if the request specifies a time granularity other + /// than NONE. /// - [Newtonsoft.Json.JsonPropertyAttribute("medium")] - public virtual string Medium { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("timeSeries")] + public virtual GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceTimeSeries TimeSeries { get; set; } - /// Output only. Number of conversations used in training. Output only. - [Newtonsoft.Json.JsonPropertyAttribute("trainingConversationsCount")] - public virtual System.Nullable TrainingConversationsCount { get; set; } + /// + /// The total metric value. The interval of this data point is [starting create time, ending create time) from + /// the request. + /// + [Newtonsoft.Json.JsonPropertyAttribute("total")] + public virtual GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPoint Total { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Aggregated statistics about an issue model. - public class GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStats : Google.Apis.Requests.IDirectResponseSchema + /// A data point contains the metric values mapped to an interval. + public class GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPoint : Google.Apis.Requests.IDirectResponseSchema { - /// Number of conversations the issue model has analyzed at this point in time. - [Newtonsoft.Json.JsonPropertyAttribute("analyzedConversationsCount")] - public virtual System.Nullable AnalyzedConversationsCount { get; set; } - - /// Statistics on each issue. Key is the issue's resource name. - [Newtonsoft.Json.JsonPropertyAttribute("issueStats")] - public virtual System.Collections.Generic.IDictionary IssueStats { get; set; } + /// The measure related to conversations. + [Newtonsoft.Json.JsonPropertyAttribute("conversationMeasure")] + public virtual GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointConversationMeasure ConversationMeasure { get; set; } - /// Number of analyzed conversations for which no issue was applicable at this point in time. - [Newtonsoft.Json.JsonPropertyAttribute("unclassifiedConversationsCount")] - public virtual System.Nullable UnclassifiedConversationsCount { get; set; } + /// + /// The interval that this data point represents. * If this is the total data point, the interval is [starting + /// create time, ending create time) from the request. * If this a data point from the time series, the interval + /// is [time, time + time granularity from the request). + /// + [Newtonsoft.Json.JsonPropertyAttribute("interval")] + public virtual GoogleTypeInterval Interval { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Aggregated statistics about an issue. - public class GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStatsIssueStats : Google.Apis.Requests.IDirectResponseSchema + /// The measure related to conversations. + public class GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointConversationMeasure : Google.Apis.Requests.IDirectResponseSchema { - /// Display name of the issue. - [Newtonsoft.Json.JsonPropertyAttribute("displayName")] - public virtual string DisplayName { get; set; } + /// The average agent's sentiment score. + [Newtonsoft.Json.JsonPropertyAttribute("averageAgentSentimentScore")] + public virtual System.Nullable AverageAgentSentimentScore { get; set; } + + /// The average client's sentiment score. + [Newtonsoft.Json.JsonPropertyAttribute("averageClientSentimentScore")] + public virtual System.Nullable AverageClientSentimentScore { get; set; } + + /// The average customer satisfaction rating. + [Newtonsoft.Json.JsonPropertyAttribute("averageCustomerSatisfactionRating")] + public virtual System.Nullable AverageCustomerSatisfactionRating { get; set; } + + /// The average duration. + [Newtonsoft.Json.JsonPropertyAttribute("averageDuration")] + public virtual object AverageDuration { get; set; } + + /// Average QA normalized score. Will exclude 0's in average calculation. + [Newtonsoft.Json.JsonPropertyAttribute("averageQaNormalizedScore")] + public virtual System.Nullable AverageQaNormalizedScore { get; set; } /// - /// Issue resource. Format: projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue} + /// Average QA normalized score averaged for questions averaged across all revisions of the parent scorecard. + /// Will be only populated if the request specifies a dimension of QA_QUESTION_ID. /// - [Newtonsoft.Json.JsonPropertyAttribute("issue")] - public virtual string Issue { get; set; } + [Newtonsoft.Json.JsonPropertyAttribute("averageQaQuestionNormalizedScore")] + public virtual System.Nullable AverageQaQuestionNormalizedScore { get; set; } - /// Number of conversations attached to the issue at this point in time. - [Newtonsoft.Json.JsonPropertyAttribute("labeledConversationsCount")] - public virtual System.Nullable LabeledConversationsCount { get; set; } + /// The average silence percentage. + [Newtonsoft.Json.JsonPropertyAttribute("averageSilencePercentage")] + public virtual System.Nullable AverageSilencePercentage { get; set; } + + /// The average turn count. + [Newtonsoft.Json.JsonPropertyAttribute("averageTurnCount")] + public virtual System.Nullable AverageTurnCount { get; set; } + + /// The conversation count. + [Newtonsoft.Json.JsonPropertyAttribute("conversationCount")] + public virtual System.Nullable ConversationCount { get; set; } + + /// Average QA normalized score for all the tags. + [Newtonsoft.Json.JsonPropertyAttribute("qaTagScores")] + public virtual System.Collections.Generic.IList QaTagScores { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// Issue Modeling result on a conversation. - public class GoogleCloudContactcenterinsightsV1alpha1IssueModelResult : Google.Apis.Requests.IDirectResponseSchema + /// Average QA normalized score for the tag. + public class GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointConversationMeasureQaTagScore : Google.Apis.Requests.IDirectResponseSchema { - /// - /// Issue model that generates the result. Format: - /// projects/{project}/locations/{location}/issueModels/{issue_model} - /// - [Newtonsoft.Json.JsonPropertyAttribute("issueModel")] - public virtual string IssueModel { get; set; } + /// Average tag normalized score per tag. + [Newtonsoft.Json.JsonPropertyAttribute("averageTagNormalizedScore")] + public virtual System.Nullable AverageTagNormalizedScore { get; set; } - /// All the matched issues. - [Newtonsoft.Json.JsonPropertyAttribute("issues")] - public virtual System.Collections.Generic.IList Issues { get; set; } + /// Tag name. + [Newtonsoft.Json.JsonPropertyAttribute("tag")] + public virtual string Tag { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } } - /// - /// The data for a matched phrase matcher. Represents information identifying a phrase matcher for a given match. - /// - public class GoogleCloudContactcenterinsightsV1alpha1PhraseMatchData : Google.Apis.Requests.IDirectResponseSchema + /// A time series of metric values. + public class GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceTimeSeries : Google.Apis.Requests.IDirectResponseSchema { - /// The human-readable name of the phrase matcher. - [Newtonsoft.Json.JsonPropertyAttribute("displayName")] - public virtual string DisplayName { get; set; } - - /// The unique identifier (the resource name) of the phrase matcher. - [Newtonsoft.Json.JsonPropertyAttribute("phraseMatcher")] - public virtual string PhraseMatcher { get; set; } + /// The data points that make up the time series . + [Newtonsoft.Json.JsonPropertyAttribute("dataPoints")] + public virtual System.Collections.Generic.IList DataPoints { get; set; } /// The ETag of the item. public virtual string ETag { get; set; } @@ -10777,6 +17012,256 @@ public class GoogleCloudContactcenterinsightsV1alpha1UploadConversationRequest : public virtual string ETag { get; set; } } + /// + /// Specifies the audit configuration for a service. The configuration determines which permission types are logged, + /// and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If + /// there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used + /// for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each + /// AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { "audit_configs": [ { "service": + /// "allServices", "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [ "user:jose@example.com" ] + /// }, { "log_type": "DATA_WRITE" }, { "log_type": "ADMIN_READ" } ] }, { "service": "sampleservice.googleapis.com", + /// "audit_log_configs": [ { "log_type": "DATA_READ" }, { "log_type": "DATA_WRITE", "exempted_members": [ + /// "user:aliya@example.com" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ + /// logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE + /// logging. + /// + public class GoogleIamV1AuditConfig : Google.Apis.Requests.IDirectResponseSchema + { + /// The configuration for logging of each type of permission. + [Newtonsoft.Json.JsonPropertyAttribute("auditLogConfigs")] + public virtual System.Collections.Generic.IList AuditLogConfigs { get; set; } + + /// + /// Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, + /// `cloudsql.googleapis.com`. `allServices` is a special value that covers all services. + /// + [Newtonsoft.Json.JsonPropertyAttribute("service")] + public virtual string Service { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// Provides the configuration for logging a type of permissions. Example: { "audit_log_configs": [ { "log_type": + /// "DATA_READ", "exempted_members": [ "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" } ] } This enables + /// 'DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ logging. + /// + public class GoogleIamV1AuditLogConfig : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Specifies the identities that do not cause logging for this type of permission. Follows the same format of + /// Binding.members. + /// + [Newtonsoft.Json.JsonPropertyAttribute("exemptedMembers")] + public virtual System.Collections.Generic.IList ExemptedMembers { get; set; } + + /// The log type that this config enables. + [Newtonsoft.Json.JsonPropertyAttribute("logType")] + public virtual string LogType { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Associates `members`, or principals, with a `role`. + public class GoogleIamV1Binding : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// The condition that is associated with this binding. If the condition evaluates to `true`, then this binding + /// applies to the current request. If the condition evaluates to `false`, then this binding does not apply to + /// the current request. However, a different role binding might grant the same role to one or more of the + /// principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM + /// documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + /// + [Newtonsoft.Json.JsonPropertyAttribute("condition")] + public virtual GoogleTypeExpr Condition { get; set; } + + /// + /// Specifies the principals requesting access for a Google Cloud resource. `members` can have the following + /// values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a + /// Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated + /// with a Google account or a service account. Does not include identities that come from external identity + /// providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a + /// specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address + /// that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * + /// `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes + /// service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For + /// example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that + /// represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain + /// (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * + /// `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: + /// A single identity in a workforce identity pool. * + /// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`: All + /// workforce identities in a group. * + /// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: + /// All workforce identities with a specific attribute value. * + /// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`: All identities in a + /// workforce identity pool. * + /// `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: + /// A single identity in a workload identity pool. * + /// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: + /// A workload identity pool group. * + /// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: + /// All identities in a workload identity pool with a certain attribute. * + /// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`: + /// All identities in a workload identity pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address + /// (plus unique identifier) representing a user that has been recently deleted. For example, + /// `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to + /// `user:{emailid}` and the recovered user retains the role in the binding. * + /// `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a + /// service account that has been recently deleted. For example, + /// `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, + /// this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the + /// binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing + /// a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. + /// If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role + /// in the binding. * + /// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: + /// Deleted single identity in a workforce identity pool. For example, + /// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`. + /// + [Newtonsoft.Json.JsonPropertyAttribute("members")] + public virtual System.Collections.Generic.IList Members { get; set; } + + /// + /// Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, + /// or `roles/owner`. For an overview of the IAM roles and permissions, see the [IAM + /// documentation](https://cloud.google.com/iam/docs/roles-overview). For a list of the available pre-defined + /// roles, see [here](https://cloud.google.com/iam/docs/understanding-roles). + /// + [Newtonsoft.Json.JsonPropertyAttribute("role")] + public virtual string Role { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A + /// `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single + /// `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A + /// `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. + /// For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical + /// expression that allows access to a resource only if the expression evaluates to `true`. A condition can add + /// constraints based on attributes of the request, the resource, or both. To learn which resources support + /// conditions in their IAM policies, see the [IAM + /// documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** + /// ``` + /// { + /// "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", + /// "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, + /// { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { + /// "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time + /// &lt; timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag": "BwWWja0YfJA=", "version": 3 } + /// ``` + /// **YAML + /// example:** + /// ``` + /// bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - + /// serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - + /// members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable + /// access description: Does not grant access after Sep 2020 expression: request.time &lt; + /// timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 + /// ``` + /// For a description of IAM and its + /// features, see the [IAM documentation](https://cloud.google.com/iam/docs/). + /// + public class GoogleIamV1Policy : Google.Apis.Requests.IDirectResponseSchema + { + /// Specifies cloud audit logging configuration for this policy. + [Newtonsoft.Json.JsonPropertyAttribute("auditConfigs")] + public virtual System.Collections.Generic.IList AuditConfigs { get; set; } + + /// + /// Associates a list of `members`, or principals, with a `role`. Optionally, may specify a `condition` that + /// determines how and when the `bindings` are applied. Each of the `bindings` must contain at least one + /// principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 of these principals + /// can be Google groups. Each occurrence of a principal counts towards these limits. For example, if the + /// `bindings` grant 50 different roles to `user:alice@example.com`, and not to any other principal, then you + /// can add another 1,450 principals to the `bindings` in the `Policy`. + /// + [Newtonsoft.Json.JsonPropertyAttribute("bindings")] + public virtual System.Collections.Generic.IList Bindings { get; set; } + + /// + /// `etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy + /// from overwriting each other. It is strongly suggested that systems make use of the `etag` in the + /// read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned + /// in the response to `getIamPolicy`, and systems are expected to put that etag in the request to + /// `setIamPolicy` to ensure that their change will be applied to the same version of the policy. **Important:** + /// If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit + /// this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the + /// conditions in the version `3` policy are lost. + /// + [Newtonsoft.Json.JsonPropertyAttribute("etag")] + public virtual string ETag { get; set; } + + /// + /// Specifies the format of the policy. Valid values are `0`, `1`, and `3`. Requests that specify an invalid + /// value are rejected. Any operation that affects conditional role bindings must specify version `3`. This + /// requirement applies to the following operations: * Getting a policy that includes a conditional role binding + /// * Adding a conditional role binding to a policy * Changing a conditional role binding in a policy * Removing + /// any role binding, with or without a condition, from a policy that includes conditions **Important:** If you + /// use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this + /// field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the + /// conditions in the version `3` policy are lost. If a policy does not include any conditions, operations on + /// that policy may specify any valid version or leave the field unset. To learn which resources support + /// conditions in their IAM policies, see the [IAM + /// documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + /// + [Newtonsoft.Json.JsonPropertyAttribute("version")] + public virtual System.Nullable Version { get; set; } + } + + /// Request message for `SetIamPolicy` method. + public class GoogleIamV1SetIamPolicyRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few + /// 10s of KB. An empty policy is a valid policy but certain Google Cloud services (such as Projects) might + /// reject them. + /// + [Newtonsoft.Json.JsonPropertyAttribute("policy")] + public virtual GoogleIamV1Policy Policy { get; set; } + + /// + /// OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only the fields in the mask will be + /// modified. If no mask is provided, the following default mask is used: `paths: "bindings, etag"` + /// + [Newtonsoft.Json.JsonPropertyAttribute("updateMask")] + public virtual object UpdateMask { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Request message for `TestIamPermissions` method. + public class GoogleIamV1TestIamPermissionsRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// The set of permissions to check for the `resource`. Permissions with wildcards (such as `*` or `storage.*`) + /// are not allowed. For more information see [IAM + /// Overview](https://cloud.google.com/iam/docs/overview#permissions). + /// + [Newtonsoft.Json.JsonPropertyAttribute("permissions")] + public virtual System.Collections.Generic.IList Permissions { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Response message for `TestIamPermissions` method. + public class GoogleIamV1TestIamPermissionsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// A subset of `TestPermissionsRequest.permissions` that the caller is allowed. + [Newtonsoft.Json.JsonPropertyAttribute("permissions")] + public virtual System.Collections.Generic.IList Permissions { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// The response message for Operations.ListOperations. public class GoogleLongrunningListOperationsResponse : Google.Apis.Requests.IDirectResponseSchema { @@ -10874,4 +17359,139 @@ public class GoogleRpcStatus : Google.Apis.Requests.IDirectResponseSchema /// The ETag of the item. public virtual string ETag { get; set; } } + + /// + /// Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression + /// language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example + /// (Comparison): title: "Summary size limit" description: "Determines if a summary is less than 100 chars" + /// expression: "document.summary.size() &lt; 100" Example (Equality): title: "Requestor is owner" description: + /// "Determines if requestor is the document owner" expression: "document.owner == request.auth.claims.email" + /// Example (Logic): title: "Public documents" description: "Determine whether the document should be publicly + /// visible" expression: "document.type != 'private' &amp;&amp; document.type != 'internal'" Example (Data + /// Manipulation): title: "Notification string" description: "Create a notification string with a timestamp." + /// expression: "'New message received at ' + string(document.create_time)" The exact variables and functions that + /// may be referenced within an expression are determined by the service that evaluates it. See the service + /// documentation for additional information. + /// + public class GoogleTypeExpr : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Optional. Description of the expression. This is a longer text which describes the expression, e.g. when + /// hovered over it in a UI. + /// + [Newtonsoft.Json.JsonPropertyAttribute("description")] + public virtual string Description { get; set; } + + /// Textual representation of an expression in Common Expression Language syntax. + [Newtonsoft.Json.JsonPropertyAttribute("expression")] + public virtual string Expression { get; set; } + + /// + /// Optional. String indicating the location of the expression for error reporting, e.g. a file name and a + /// position in the file. + /// + [Newtonsoft.Json.JsonPropertyAttribute("location")] + public virtual string Location { get; set; } + + /// + /// Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs + /// which allow to enter the expression. + /// + [Newtonsoft.Json.JsonPropertyAttribute("title")] + public virtual string Title { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive). The start + /// must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). + /// When both start and end are unspecified, the interval matches any time. + /// + public class GoogleTypeInterval : Google.Apis.Requests.IDirectResponseSchema + { + private string _endTimeRaw; + + private object _endTime; + + /// + /// Optional. Exclusive end of the interval. If specified, a Timestamp matching this interval will have to be + /// before the end. + /// + [Newtonsoft.Json.JsonPropertyAttribute("endTime")] + public virtual string EndTimeRaw + { + get => _endTimeRaw; + set + { + _endTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _endTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use EndTimeDateTimeOffset instead.")] + public virtual object EndTime + { + get => _endTime; + set + { + _endTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _endTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? EndTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(EndTimeRaw); + set => EndTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + private string _startTimeRaw; + + private object _startTime; + + /// + /// Optional. Inclusive start of the interval. If specified, a Timestamp matching this interval will have to be + /// the same or after the start. + /// + [Newtonsoft.Json.JsonPropertyAttribute("startTime")] + public virtual string StartTimeRaw + { + get => _startTimeRaw; + set + { + _startTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _startTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use StartTimeDateTimeOffset instead.")] + public virtual object StartTime + { + get => _startTime; + set + { + _startTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _startTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? StartTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(StartTimeRaw); + set => StartTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } } diff --git a/Src/Generated/Google.Apis.Contactcenterinsights.v1/Google.Apis.Contactcenterinsights.v1.csproj b/Src/Generated/Google.Apis.Contactcenterinsights.v1/Google.Apis.Contactcenterinsights.v1.csproj index 6313ff1def0..ac1fbcf7aa9 100644 --- a/Src/Generated/Google.Apis.Contactcenterinsights.v1/Google.Apis.Contactcenterinsights.v1.csproj +++ b/Src/Generated/Google.Apis.Contactcenterinsights.v1/Google.Apis.Contactcenterinsights.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Contactcenterinsights.v1 Client Library - 1.68.0.3568 + 1.68.0.3575 Google LLC Copyright 2024 Google LLC Google From 1597565078cc08c43f8b14e607da5a5f9bca413b Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:40 -0700 Subject: [PATCH 16/61] feat: Generate Google.Apis.ShoppingContent.v2_1 version 1.68.0.3575 --- DiscoveryJson/content.v2.1.json | 6 +++--- .../Google.Apis.ShoppingContent.v2_1.csproj | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/DiscoveryJson/content.v2.1.json b/DiscoveryJson/content.v2.1.json index faa3cdadba2..fdbbdfedacf 100644 --- a/DiscoveryJson/content.v2.1.json +++ b/DiscoveryJson/content.v2.1.json @@ -4705,7 +4705,7 @@ } } }, - "revision": "20240825", + "revision": "20241015", "rootUrl": "https://shoppingcontent.googleapis.com/", "schemas": { "Account": { @@ -7926,7 +7926,7 @@ "No issues available to review.", "Account will be automatically reviewed at the end of the grace period.", "Account is retired. Should not appear in MC.", - "Account was already reviewd." + "Account has already been reviewed. You can't request further reviews." ], "type": "string" }, @@ -14109,7 +14109,7 @@ "No issues available to review.", "Account will be automatically reviewed at the end of the grace period.", "Account is retired. Should not appear in MC.", - "Account was already reviewd." + "Account has already been reviewed. You can't request further reviews." ], "type": "string" }, diff --git a/Src/Generated/Google.Apis.ShoppingContent.v2_1/Google.Apis.ShoppingContent.v2_1.csproj b/Src/Generated/Google.Apis.ShoppingContent.v2_1/Google.Apis.ShoppingContent.v2_1.csproj index 44ea81bb597..e1cf1899a77 100644 --- a/Src/Generated/Google.Apis.ShoppingContent.v2_1/Google.Apis.ShoppingContent.v2_1.csproj +++ b/Src/Generated/Google.Apis.ShoppingContent.v2_1/Google.Apis.ShoppingContent.v2_1.csproj @@ -3,7 +3,7 @@ Google.Apis.ShoppingContent.v2_1 Client Library - 1.68.0.3524 + 1.68.0.3575 Google LLC Copyright 2024 Google LLC Google From 29c3a85152fa276511398ff97a187d32fd6090f6 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:43 -0700 Subject: [PATCH 17/61] feat: Generate Google.Apis.Dataflow.v1b3 version 1.68.0.3574 --- DiscoveryJson/dataflow.v1b3.json | 6 +++--- .../Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.cs | 4 ++-- .../Google.Apis.Dataflow.v1b3.csproj | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/DiscoveryJson/dataflow.v1b3.json b/DiscoveryJson/dataflow.v1b3.json index f1bb46b6384..f59592a541c 100644 --- a/DiscoveryJson/dataflow.v1b3.json +++ b/DiscoveryJson/dataflow.v1b3.json @@ -2208,7 +2208,7 @@ } } }, - "revision": "20240817", + "revision": "20241014", "rootUrl": "https://dataflow.googleapis.com/", "schemas": { "ApproximateProgress": { @@ -3446,7 +3446,7 @@ "type": "object" }, "FlexTemplateRuntimeEnvironment": { - "description": "The environment values to be set at runtime for flex template. LINT.IfChange", + "description": "The environment values to be set at runtime for flex template.", "id": "FlexTemplateRuntimeEnvironment", "properties": { "additionalExperiments": { @@ -5485,7 +5485,7 @@ "type": "object" }, "RuntimeEnvironment": { - "description": "The environment values to set at runtime. LINT.IfChange", + "description": "The environment values to set at runtime.", "id": "RuntimeEnvironment", "properties": { "additionalExperiments": { diff --git a/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.cs b/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.cs index 9817dc0ff58..c492655b679 100644 --- a/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.cs +++ b/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.cs @@ -6435,7 +6435,7 @@ public class FlattenInstruction : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } - /// The environment values to be set at runtime for flex template. LINT.IfChange + /// The environment values to be set at runtime for flex template. public class FlexTemplateRuntimeEnvironment : Google.Apis.Requests.IDirectResponseSchema { /// Additional experiment flags for the job. @@ -8758,7 +8758,7 @@ public class ResourceUtilizationReportResponse : Google.Apis.Requests.IDirectRes public virtual string ETag { get; set; } } - /// The environment values to set at runtime. LINT.IfChange + /// The environment values to set at runtime. public class RuntimeEnvironment : Google.Apis.Requests.IDirectResponseSchema { /// diff --git a/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.csproj b/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.csproj index 00b686fcd6c..1136d28e1ab 100644 --- a/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.csproj +++ b/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.csproj @@ -3,7 +3,7 @@ Google.Apis.Dataflow.v1b3 Client Library - 1.68.0.3516 + 1.68.0.3574 Google LLC Copyright 2024 Google LLC Google From cf8996bf5d7c91b868fa72bb448b88c214e855f6 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:46 -0700 Subject: [PATCH 18/61] feat: Generate Google.Apis.Datastore.v1 version 1.68.0.3568 --- DiscoveryJson/datastore.v1.json | 73 +++++++++++++- .../Google.Apis.Datastore.v1.cs | 95 +++++++++++++++++++ .../Google.Apis.Datastore.v1.csproj | 2 +- 3 files changed, 168 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/datastore.v1.json b/DiscoveryJson/datastore.v1.json index 43fc0f800dd..c90156478ef 100644 --- a/DiscoveryJson/datastore.v1.json +++ b/DiscoveryJson/datastore.v1.json @@ -654,7 +654,7 @@ } } }, - "revision": "20240317", + "revision": "20241008", "rootUrl": "https://datastore.googleapis.com/", "schemas": { "Aggregation": { @@ -1937,6 +1937,20 @@ "format": "int64", "type": "string" }, + "conflictResolutionStrategy": { + "description": "The strategy to use when a conflict is detected. Defaults to `SERVER_VALUE`. If this is set, then `conflict_detection_strategy` must also be set.", + "enum": [ + "STRATEGY_UNSPECIFIED", + "SERVER_VALUE", + "FAIL" + ], + "enumDescriptions": [ + "Unspecified. Defaults to `SERVER_VALUE`.", + "The server entity is kept.", + "The whole commit request fails." + ], + "type": "string" + }, "delete": { "$ref": "Key", "description": "The key of the entity to delete. The entity may or may not already exist. Must have a complete key path and must not be reserved/read-only." @@ -1949,6 +1963,13 @@ "$ref": "PropertyMask", "description": "The properties to write in this mutation. None of the properties in the mask may have a reserved name, except for `__key__`. This field is ignored for `delete`. If the entity already exists, only properties referenced in the mask are updated, others are left untouched. Properties referenced in the mask but not in the entity are deleted." }, + "propertyTransforms": { + "description": "Optional. The transforms to perform on the entity. This field can be set only when the operation is `insert`, `update`, or `upsert`. If present, the transforms are be applied to the entity regardless of the property mask, in order, after the operation.", + "items": { + "$ref": "PropertyTransform" + }, + "type": "array" + }, "update": { "$ref": "Entity", "description": "The entity to update. The entity must already exist. Must have a complete key path." @@ -1982,6 +2003,13 @@ "$ref": "Key", "description": "The automatically allocated key. Set only when the mutation allocated a key." }, + "transformResults": { + "description": "The results of applying each PropertyTransform, in the same order of the request.", + "items": { + "$ref": "Value" + }, + "type": "array" + }, "updateTime": { "description": "The update time of the entity on the server after processing the mutation. If the mutation doesn't change anything on the server, then the timestamp will be the update timestamp of the current entity. This field will not be set after a 'delete'.", "format": "google-datetime", @@ -2156,6 +2184,49 @@ }, "type": "object" }, + "PropertyTransform": { + "description": "A transformation of an entity property.", + "id": "PropertyTransform", + "properties": { + "appendMissingElements": { + "$ref": "ArrayValue", + "description": "Appends the given elements in order if they are not already present in the current property value. If the property is not an array, or if the property does not yet exist, it is first set to the empty array. Equivalent numbers of different types (e.g. 3L and 3.0) are considered equal when checking if a value is missing. NaN is equal to NaN, and the null value is equal to the null value. If the input contains multiple equivalent values, only the first will be considered. The corresponding transform result will be the null value." + }, + "increment": { + "$ref": "Value", + "description": "Adds the given value to the property's current value. This must be an integer or a double value. If the property is not an integer or double, or if the property does not yet exist, the transformation will set the property to the given value. If either of the given value or the current property value are doubles, both values will be interpreted as doubles. Double arithmetic and representation of double values follows IEEE 754 semantics. If there is positive/negative integer overflow, the property is resolved to the largest magnitude positive/negative integer." + }, + "maximum": { + "$ref": "Value", + "description": "Sets the property to the maximum of its current value and the given value. This must be an integer or a double value. If the property is not an integer or double, or if the property does not yet exist, the transformation will set the property to the given value. If a maximum operation is applied where the property and the input value are of mixed types (that is - one is an integer and one is a double) the property takes on the type of the larger operand. If the operands are equivalent (e.g. 3 and 3.0), the property does not change. 0, 0.0, and -0.0 are all zero. The maximum of a zero stored value and zero input value is always the stored value. The maximum of any numeric value x and NaN is NaN." + }, + "minimum": { + "$ref": "Value", + "description": "Sets the property to the minimum of its current value and the given value. This must be an integer or a double value. If the property is not an integer or double, or if the property does not yet exist, the transformation will set the property to the input value. If a minimum operation is applied where the property and the input value are of mixed types (that is - one is an integer and one is a double) the property takes on the type of the smaller operand. If the operands are equivalent (e.g. 3 and 3.0), the property does not change. 0, 0.0, and -0.0 are all zero. The minimum of a zero stored value and zero input value is always the stored value. The minimum of any numeric value x and NaN is NaN." + }, + "property": { + "description": "Optional. The name of the property. Property paths (a list of property names separated by dots (`.`)) may be used to refer to properties inside entity values. For example `foo.bar` means the property `bar` inside the entity property `foo`. If a property name contains a dot `.` or a backlslash `\\`, then that name must be escaped.", + "type": "string" + }, + "removeAllFromArray": { + "$ref": "ArrayValue", + "description": "Removes all of the given elements from the array in the property. If the property is not an array, or if the property does not yet exist, it is set to the empty array. Equivalent numbers of different types (e.g. 3L and 3.0) are considered equal when deciding whether an element should be removed. NaN is equal to NaN, and the null value is equal to the null value. This will remove all equivalent values if there are duplicates. The corresponding transform result will be the null value." + }, + "setToServerValue": { + "description": "Sets the property to the given server value.", + "enum": [ + "SERVER_VALUE_UNSPECIFIED", + "REQUEST_TIME" + ], + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "The time at which the server processed the request, with millisecond precision. If used on multiple properties (same or different entities) in a transaction, all the properties will get the same server timestamp." + ], + "type": "string" + } + }, + "type": "object" + }, "Query": { "description": "A query for entities.", "id": "Query", diff --git a/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.cs b/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.cs index b0cb44902a9..2e90d0d65dd 100644 --- a/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.cs +++ b/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.cs @@ -2935,6 +2935,13 @@ public class Mutation : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("baseVersion")] public virtual System.Nullable BaseVersion { get; set; } + /// + /// The strategy to use when a conflict is detected. Defaults to `SERVER_VALUE`. If this is set, then + /// `conflict_detection_strategy` must also be set. + /// + [Newtonsoft.Json.JsonPropertyAttribute("conflictResolutionStrategy")] + public virtual string ConflictResolutionStrategy { get; set; } + /// /// The key of the entity to delete. The entity may or may not already exist. Must have a complete key path and /// must not be reserved/read-only. @@ -2958,6 +2965,14 @@ public class Mutation : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("propertyMask")] public virtual PropertyMask PropertyMask { get; set; } + /// + /// Optional. The transforms to perform on the entity. This field can be set only when the operation is + /// `insert`, `update`, or `upsert`. If present, the transforms are be applied to the entity regardless of the + /// property mask, in order, after the operation. + /// + [Newtonsoft.Json.JsonPropertyAttribute("propertyTransforms")] + public virtual System.Collections.Generic.IList PropertyTransforms { get; set; } + /// The entity to update. The entity must already exist. Must have a complete key path. [Newtonsoft.Json.JsonPropertyAttribute("update")] public virtual Entity Update { get; set; } @@ -3064,6 +3079,10 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("key")] public virtual Key Key { get; set; } + /// The results of applying each PropertyTransform, in the same order of the request. + [Newtonsoft.Json.JsonPropertyAttribute("transformResults")] + public virtual System.Collections.Generic.IList TransformResults { get; set; } + private string _updateTimeRaw; private object _updateTime; @@ -3270,6 +3289,82 @@ public class PropertyReference : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + /// A transformation of an entity property. + public class PropertyTransform : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Appends the given elements in order if they are not already present in the current property value. If the + /// property is not an array, or if the property does not yet exist, it is first set to the empty array. + /// Equivalent numbers of different types (e.g. 3L and 3.0) are considered equal when checking if a value is + /// missing. NaN is equal to NaN, and the null value is equal to the null value. If the input contains multiple + /// equivalent values, only the first will be considered. The corresponding transform result will be the null + /// value. + /// + [Newtonsoft.Json.JsonPropertyAttribute("appendMissingElements")] + public virtual ArrayValue AppendMissingElements { get; set; } + + /// + /// Adds the given value to the property's current value. This must be an integer or a double value. If the + /// property is not an integer or double, or if the property does not yet exist, the transformation will set the + /// property to the given value. If either of the given value or the current property value are doubles, both + /// values will be interpreted as doubles. Double arithmetic and representation of double values follows IEEE + /// 754 semantics. If there is positive/negative integer overflow, the property is resolved to the largest + /// magnitude positive/negative integer. + /// + [Newtonsoft.Json.JsonPropertyAttribute("increment")] + public virtual Value Increment { get; set; } + + /// + /// Sets the property to the maximum of its current value and the given value. This must be an integer or a + /// double value. If the property is not an integer or double, or if the property does not yet exist, the + /// transformation will set the property to the given value. If a maximum operation is applied where the + /// property and the input value are of mixed types (that is - one is an integer and one is a double) the + /// property takes on the type of the larger operand. If the operands are equivalent (e.g. 3 and 3.0), the + /// property does not change. 0, 0.0, and -0.0 are all zero. The maximum of a zero stored value and zero input + /// value is always the stored value. The maximum of any numeric value x and NaN is NaN. + /// + [Newtonsoft.Json.JsonPropertyAttribute("maximum")] + public virtual Value Maximum { get; set; } + + /// + /// Sets the property to the minimum of its current value and the given value. This must be an integer or a + /// double value. If the property is not an integer or double, or if the property does not yet exist, the + /// transformation will set the property to the input value. If a minimum operation is applied where the + /// property and the input value are of mixed types (that is - one is an integer and one is a double) the + /// property takes on the type of the smaller operand. If the operands are equivalent (e.g. 3 and 3.0), the + /// property does not change. 0, 0.0, and -0.0 are all zero. The minimum of a zero stored value and zero input + /// value is always the stored value. The minimum of any numeric value x and NaN is NaN. + /// + [Newtonsoft.Json.JsonPropertyAttribute("minimum")] + public virtual Value Minimum { get; set; } + + /// + /// Optional. The name of the property. Property paths (a list of property names separated by dots (`.`)) may be + /// used to refer to properties inside entity values. For example `foo.bar` means the property `bar` inside the + /// entity property `foo`. If a property name contains a dot `.` or a backlslash `\`, then that name must be + /// escaped. + /// + [Newtonsoft.Json.JsonPropertyAttribute("property")] + public virtual string Property { get; set; } + + /// + /// Removes all of the given elements from the array in the property. If the property is not an array, or if the + /// property does not yet exist, it is set to the empty array. Equivalent numbers of different types (e.g. 3L + /// and 3.0) are considered equal when deciding whether an element should be removed. NaN is equal to NaN, and + /// the null value is equal to the null value. This will remove all equivalent values if there are duplicates. + /// The corresponding transform result will be the null value. + /// + [Newtonsoft.Json.JsonPropertyAttribute("removeAllFromArray")] + public virtual ArrayValue RemoveAllFromArray { get; set; } + + /// Sets the property to the given server value. + [Newtonsoft.Json.JsonPropertyAttribute("setToServerValue")] + public virtual string SetToServerValue { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// A query for entities. public class Query : Google.Apis.Requests.IDirectResponseSchema { diff --git a/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.csproj b/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.csproj index 81470141547..a0c42cd5b81 100644 --- a/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.csproj +++ b/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Datastore.v1 Client Library - 1.68.0.3363 + 1.68.0.3568 Google LLC Copyright 2024 Google LLC Google From 1a08307a16608eccf16fd38ad98306dedefd6e36 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:49 -0700 Subject: [PATCH 19/61] feat: Generate Google.Apis.Datastore.v1beta3 version 1.68.0.3568 --- DiscoveryJson/datastore.v1beta3.json | 73 +++++++++++++- .../Google.Apis.Datastore.v1beta3.cs | 95 +++++++++++++++++++ .../Google.Apis.Datastore.v1beta3.csproj | 2 +- 3 files changed, 168 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/datastore.v1beta3.json b/DiscoveryJson/datastore.v1beta3.json index 5f4ade2adbf..3ca50524a54 100644 --- a/DiscoveryJson/datastore.v1beta3.json +++ b/DiscoveryJson/datastore.v1beta3.json @@ -336,7 +336,7 @@ } } }, - "revision": "20240317", + "revision": "20241008", "rootUrl": "https://datastore.googleapis.com/", "schemas": { "Aggregation": { @@ -1387,6 +1387,20 @@ "format": "int64", "type": "string" }, + "conflictResolutionStrategy": { + "description": "The strategy to use when a conflict is detected. Defaults to `SERVER_VALUE`. If this is set, then `conflict_detection_strategy` must also be set.", + "enum": [ + "STRATEGY_UNSPECIFIED", + "SERVER_VALUE", + "FAIL" + ], + "enumDescriptions": [ + "Unspecified. Defaults to `SERVER_VALUE`.", + "The server entity is kept.", + "The whole commit request fails." + ], + "type": "string" + }, "delete": { "$ref": "Key", "description": "The key of the entity to delete. The entity may or may not already exist. Must have a complete key path and must not be reserved/read-only." @@ -1399,6 +1413,13 @@ "$ref": "PropertyMask", "description": "The properties to write in this mutation. None of the properties in the mask may have a reserved name, except for `__key__`. This field is ignored for `delete`. If the entity already exists, only properties referenced in the mask are updated, others are left untouched. Properties referenced in the mask but not in the entity are deleted." }, + "propertyTransforms": { + "description": "Optional. The transforms to perform on the entity. This field can be set only when the operation is `insert`, `update`, or `upsert`. If present, the transforms are be applied to the entity regardless of the property mask, in order, after the operation.", + "items": { + "$ref": "PropertyTransform" + }, + "type": "array" + }, "update": { "$ref": "Entity", "description": "The entity to update. The entity must already exist. Must have a complete key path." @@ -1432,6 +1453,13 @@ "$ref": "Key", "description": "The automatically allocated key. Set only when the mutation allocated a key." }, + "transformResults": { + "description": "The results of applying each PropertyTransform, in the same order of the request.", + "items": { + "$ref": "Value" + }, + "type": "array" + }, "updateTime": { "description": "The update time of the entity on the server after processing the mutation. If the mutation doesn't change anything on the server, then the timestamp will be the update timestamp of the current entity. This field will not be set after a 'delete'.", "format": "google-datetime", @@ -1602,6 +1630,49 @@ }, "type": "object" }, + "PropertyTransform": { + "description": "A transformation of an entity property.", + "id": "PropertyTransform", + "properties": { + "appendMissingElements": { + "$ref": "ArrayValue", + "description": "Appends the given elements in order if they are not already present in the current property value. If the property is not an array, or if the property does not yet exist, it is first set to the empty array. Equivalent numbers of different types (e.g. 3L and 3.0) are considered equal when checking if a value is missing. NaN is equal to NaN, and the null value is equal to the null value. If the input contains multiple equivalent values, only the first will be considered. The corresponding transform result will be the null value." + }, + "increment": { + "$ref": "Value", + "description": "Adds the given value to the property's current value. This must be an integer or a double value. If the property is not an integer or double, or if the property does not yet exist, the transformation will set the property to the given value. If either of the given value or the current property value are doubles, both values will be interpreted as doubles. Double arithmetic and representation of double values follows IEEE 754 semantics. If there is positive/negative integer overflow, the property is resolved to the largest magnitude positive/negative integer." + }, + "maximum": { + "$ref": "Value", + "description": "Sets the property to the maximum of its current value and the given value. This must be an integer or a double value. If the property is not an integer or double, or if the property does not yet exist, the transformation will set the property to the given value. If a maximum operation is applied where the property and the input value are of mixed types (that is - one is an integer and one is a double) the property takes on the type of the larger operand. If the operands are equivalent (e.g. 3 and 3.0), the property does not change. 0, 0.0, and -0.0 are all zero. The maximum of a zero stored value and zero input value is always the stored value. The maximum of any numeric value x and NaN is NaN." + }, + "minimum": { + "$ref": "Value", + "description": "Sets the property to the minimum of its current value and the given value. This must be an integer or a double value. If the property is not an integer or double, or if the property does not yet exist, the transformation will set the property to the input value. If a minimum operation is applied where the property and the input value are of mixed types (that is - one is an integer and one is a double) the property takes on the type of the smaller operand. If the operands are equivalent (e.g. 3 and 3.0), the property does not change. 0, 0.0, and -0.0 are all zero. The minimum of a zero stored value and zero input value is always the stored value. The minimum of any numeric value x and NaN is NaN." + }, + "property": { + "description": "Optional. The name of the property. Property paths (a list of property names separated by dots (`.`)) may be used to refer to properties inside entity values. For example `foo.bar` means the property `bar` inside the entity property `foo`. If a property name contains a dot `.` or a backlslash `\\`, then that name must be escaped.", + "type": "string" + }, + "removeAllFromArray": { + "$ref": "ArrayValue", + "description": "Removes all of the given elements from the array in the property. If the property is not an array, or if the property does not yet exist, it is set to the empty array. Equivalent numbers of different types (e.g. 3L and 3.0) are considered equal when deciding whether an element should be removed. NaN is equal to NaN, and the null value is equal to the null value. This will remove all equivalent values if there are duplicates. The corresponding transform result will be the null value." + }, + "setToServerValue": { + "description": "Sets the property to the given server value.", + "enum": [ + "SERVER_VALUE_UNSPECIFIED", + "REQUEST_TIME" + ], + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "The time at which the server processed the request, with millisecond precision. If used on multiple properties (same or different entities) in a transaction, all the properties will get the same server timestamp." + ], + "type": "string" + } + }, + "type": "object" + }, "Query": { "description": "A query for entities.", "id": "Query", diff --git a/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.cs b/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.cs index 2fe3900027a..2970777a3c2 100644 --- a/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.cs +++ b/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.cs @@ -1997,6 +1997,13 @@ public class Mutation : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("baseVersion")] public virtual System.Nullable BaseVersion { get; set; } + /// + /// The strategy to use when a conflict is detected. Defaults to `SERVER_VALUE`. If this is set, then + /// `conflict_detection_strategy` must also be set. + /// + [Newtonsoft.Json.JsonPropertyAttribute("conflictResolutionStrategy")] + public virtual string ConflictResolutionStrategy { get; set; } + /// /// The key of the entity to delete. The entity may or may not already exist. Must have a complete key path and /// must not be reserved/read-only. @@ -2020,6 +2027,14 @@ public class Mutation : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("propertyMask")] public virtual PropertyMask PropertyMask { get; set; } + /// + /// Optional. The transforms to perform on the entity. This field can be set only when the operation is + /// `insert`, `update`, or `upsert`. If present, the transforms are be applied to the entity regardless of the + /// property mask, in order, after the operation. + /// + [Newtonsoft.Json.JsonPropertyAttribute("propertyTransforms")] + public virtual System.Collections.Generic.IList PropertyTransforms { get; set; } + /// The entity to update. The entity must already exist. Must have a complete key path. [Newtonsoft.Json.JsonPropertyAttribute("update")] public virtual Entity Update { get; set; } @@ -2126,6 +2141,10 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("key")] public virtual Key Key { get; set; } + /// The results of applying each PropertyTransform, in the same order of the request. + [Newtonsoft.Json.JsonPropertyAttribute("transformResults")] + public virtual System.Collections.Generic.IList TransformResults { get; set; } + private string _updateTimeRaw; private object _updateTime; @@ -2328,6 +2347,82 @@ public class PropertyReference : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + /// A transformation of an entity property. + public class PropertyTransform : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Appends the given elements in order if they are not already present in the current property value. If the + /// property is not an array, or if the property does not yet exist, it is first set to the empty array. + /// Equivalent numbers of different types (e.g. 3L and 3.0) are considered equal when checking if a value is + /// missing. NaN is equal to NaN, and the null value is equal to the null value. If the input contains multiple + /// equivalent values, only the first will be considered. The corresponding transform result will be the null + /// value. + /// + [Newtonsoft.Json.JsonPropertyAttribute("appendMissingElements")] + public virtual ArrayValue AppendMissingElements { get; set; } + + /// + /// Adds the given value to the property's current value. This must be an integer or a double value. If the + /// property is not an integer or double, or if the property does not yet exist, the transformation will set the + /// property to the given value. If either of the given value or the current property value are doubles, both + /// values will be interpreted as doubles. Double arithmetic and representation of double values follows IEEE + /// 754 semantics. If there is positive/negative integer overflow, the property is resolved to the largest + /// magnitude positive/negative integer. + /// + [Newtonsoft.Json.JsonPropertyAttribute("increment")] + public virtual Value Increment { get; set; } + + /// + /// Sets the property to the maximum of its current value and the given value. This must be an integer or a + /// double value. If the property is not an integer or double, or if the property does not yet exist, the + /// transformation will set the property to the given value. If a maximum operation is applied where the + /// property and the input value are of mixed types (that is - one is an integer and one is a double) the + /// property takes on the type of the larger operand. If the operands are equivalent (e.g. 3 and 3.0), the + /// property does not change. 0, 0.0, and -0.0 are all zero. The maximum of a zero stored value and zero input + /// value is always the stored value. The maximum of any numeric value x and NaN is NaN. + /// + [Newtonsoft.Json.JsonPropertyAttribute("maximum")] + public virtual Value Maximum { get; set; } + + /// + /// Sets the property to the minimum of its current value and the given value. This must be an integer or a + /// double value. If the property is not an integer or double, or if the property does not yet exist, the + /// transformation will set the property to the input value. If a minimum operation is applied where the + /// property and the input value are of mixed types (that is - one is an integer and one is a double) the + /// property takes on the type of the smaller operand. If the operands are equivalent (e.g. 3 and 3.0), the + /// property does not change. 0, 0.0, and -0.0 are all zero. The minimum of a zero stored value and zero input + /// value is always the stored value. The minimum of any numeric value x and NaN is NaN. + /// + [Newtonsoft.Json.JsonPropertyAttribute("minimum")] + public virtual Value Minimum { get; set; } + + /// + /// Optional. The name of the property. Property paths (a list of property names separated by dots (`.`)) may be + /// used to refer to properties inside entity values. For example `foo.bar` means the property `bar` inside the + /// entity property `foo`. If a property name contains a dot `.` or a backlslash `\`, then that name must be + /// escaped. + /// + [Newtonsoft.Json.JsonPropertyAttribute("property")] + public virtual string Property { get; set; } + + /// + /// Removes all of the given elements from the array in the property. If the property is not an array, or if the + /// property does not yet exist, it is set to the empty array. Equivalent numbers of different types (e.g. 3L + /// and 3.0) are considered equal when deciding whether an element should be removed. NaN is equal to NaN, and + /// the null value is equal to the null value. This will remove all equivalent values if there are duplicates. + /// The corresponding transform result will be the null value. + /// + [Newtonsoft.Json.JsonPropertyAttribute("removeAllFromArray")] + public virtual ArrayValue RemoveAllFromArray { get; set; } + + /// Sets the property to the given server value. + [Newtonsoft.Json.JsonPropertyAttribute("setToServerValue")] + public virtual string SetToServerValue { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// A query for entities. public class Query : Google.Apis.Requests.IDirectResponseSchema { diff --git a/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.csproj b/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.csproj index 7470e4b2740..b00061e130e 100644 --- a/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.csproj +++ b/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.csproj @@ -3,7 +3,7 @@ Google.Apis.Datastore.v1beta3 Client Library - 1.68.0.3363 + 1.68.0.3568 Google LLC Copyright 2024 Google LLC Google From c85314c7f783d6895b75a8b286b123e39fbd0cea Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:52 -0700 Subject: [PATCH 20/61] feat: Generate Google.Apis.DeveloperConnect.v1 version 1.68.0.3574 --- DiscoveryJson/developerconnect.v1.json | 140 +++++++++- .../Google.Apis.DeveloperConnect.v1.cs | 254 ++++++++++++++++++ .../Google.Apis.DeveloperConnect.v1.csproj | 2 +- 3 files changed, 394 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/developerconnect.v1.json b/DiscoveryJson/developerconnect.v1.json index a0ebd2a6f7f..cb5bb5449e6 100644 --- a/DiscoveryJson/developerconnect.v1.json +++ b/DiscoveryJson/developerconnect.v1.json @@ -494,6 +494,31 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "processGitHubEnterpriseWebhook": { + "description": "ProcessGitHubEnterpriseWebhook is called by the external GitHub Enterprise instances for notifying events.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections:processGitHubEnterpriseWebhook", + "httpMethod": "POST", + "id": "developerconnect.projects.locations.connections.processGitHubEnterpriseWebhook", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Project and location where the webhook will be received. Format: `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/connections:processGitHubEnterpriseWebhook", + "request": { + "$ref": "ProcessGitHubEnterpriseWebhookRequest" + }, + "response": { + "$ref": "Empty" + } } }, "resources": { @@ -759,6 +784,59 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "processGitLabEnterpriseWebhook": { + "description": "ProcessGitLabEnterpriseWebhook is called by the external GitLab Enterprise instances for notifying events.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/gitRepositoryLinks/{gitRepositoryLinksId}:processGitLabEnterpriseWebhook", + "httpMethod": "POST", + "id": "developerconnect.projects.locations.connections.gitRepositoryLinks.processGitLabEnterpriseWebhook", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The GitRepositoryLink resource where the webhook will be received. Format: `projects/*/locations/*/connections/*/gitRepositoryLinks/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/gitRepositoryLinks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:processGitLabEnterpriseWebhook", + "request": { + "$ref": "ProcessGitLabEnterpriseWebhookRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "processGitLabWebhook": { + "description": "ProcessGitLabWebhook is called by the GitLab.com for notifying events.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/gitRepositoryLinks/{gitRepositoryLinksId}:processGitLabWebhook", + "httpMethod": "POST", + "id": "developerconnect.projects.locations.connections.gitRepositoryLinks.processGitLabWebhook", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The GitRepositoryLink resource where the webhook will be received. Format: `projects/*/locations/*/connections/*/gitRepositoryLinks/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/gitRepositoryLinks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:processGitLabWebhook", + "request": { + "$ref": "ProcessGitLabWebhookRequest" + }, + "response": { + "$ref": "Empty" + } } } } @@ -892,7 +970,7 @@ } } }, - "revision": "20240926", + "revision": "20241014", "rootUrl": "https://developerconnect.googleapis.com/", "schemas": { "CancelOperationRequest": { @@ -1314,6 +1392,33 @@ }, "type": "object" }, + "HttpBody": { + "description": "Message that represents an arbitrary HTTP body. It should only be used for payload formats that can't be represented as JSON, such as raw binary or an HTML page. This message can be used both in streaming and non-streaming API methods in the request as well as the response. It can be used as a top-level request field, which is convenient if one wants to extract parameters from either the URL or HTTP template into the request fields and also want access to the raw HTTP body. Example: message GetResourceRequest { // A unique request id. string request_id = 1; // The raw HTTP body is bound to this field. google.api.HttpBody http_body = 2; } service ResourceService { rpc GetResource(GetResourceRequest) returns (google.api.HttpBody); rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty); } Example with streaming methods: service CaldavService { rpc GetCalendar(stream google.api.HttpBody) returns (stream google.api.HttpBody); rpc UpdateCalendar(stream google.api.HttpBody) returns (stream google.api.HttpBody); } Use of this type only changes how the request and response bodies are handled, all other features will continue to work unchanged.", + "id": "HttpBody", + "properties": { + "contentType": { + "description": "The HTTP Content-Type header value specifying the content type of the body.", + "type": "string" + }, + "data": { + "description": "The HTTP request/response body as raw binary.", + "format": "byte", + "type": "string" + }, + "extensions": { + "description": "Application specific response metadata. Must be set in the first response for streaming APIs.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, "Installation": { "description": "Represents an installation of the GitHub App.", "id": "Installation", @@ -1596,6 +1701,39 @@ }, "type": "object" }, + "ProcessGitHubEnterpriseWebhookRequest": { + "description": "RPC request object accepted by the ProcessGitHubEnterpriseWebhook RPC method.", + "id": "ProcessGitHubEnterpriseWebhookRequest", + "properties": { + "body": { + "$ref": "HttpBody", + "description": "Required. HTTP request body." + } + }, + "type": "object" + }, + "ProcessGitLabEnterpriseWebhookRequest": { + "description": "RPC request object accepted by the ProcessGitLabEnterpriseWebhook RPC method.", + "id": "ProcessGitLabEnterpriseWebhookRequest", + "properties": { + "body": { + "$ref": "HttpBody", + "description": "Required. HTTP request body." + } + }, + "type": "object" + }, + "ProcessGitLabWebhookRequest": { + "description": "RPC request object accepted by the ProcessGitLabWebhook RPC method.", + "id": "ProcessGitLabWebhookRequest", + "properties": { + "body": { + "$ref": "HttpBody", + "description": "Required. HTTP request body." + } + }, + "type": "object" + }, "ServiceDirectoryConfig": { "description": "ServiceDirectoryConfig represents Service Directory configuration for a connection.", "id": "ServiceDirectoryConfig", diff --git a/Src/Generated/Google.Apis.DeveloperConnect.v1/Google.Apis.DeveloperConnect.v1.cs b/Src/Generated/Google.Apis.DeveloperConnect.v1/Google.Apis.DeveloperConnect.v1.cs index e74465b6a2f..4cc09ee44da 100644 --- a/Src/Generated/Google.Apis.DeveloperConnect.v1/Google.Apis.DeveloperConnect.v1.cs +++ b/Src/Generated/Google.Apis.DeveloperConnect.v1/Google.Apis.DeveloperConnect.v1.cs @@ -900,6 +900,130 @@ protected override void InitParameters() }); } } + + /// + /// ProcessGitLabEnterpriseWebhook is called by the external GitLab Enterprise instances for + /// notifying events. + /// + /// The body of the request. + /// + /// Required. The GitRepositoryLink resource where the webhook will be received. Format: + /// `projects/*/locations/*/connections/*/gitRepositoryLinks/*`. + /// + public virtual ProcessGitLabEnterpriseWebhookRequest ProcessGitLabEnterpriseWebhook(Google.Apis.DeveloperConnect.v1.Data.ProcessGitLabEnterpriseWebhookRequest body, string name) + { + return new ProcessGitLabEnterpriseWebhookRequest(this.service, body, name); + } + + /// + /// ProcessGitLabEnterpriseWebhook is called by the external GitLab Enterprise instances for + /// notifying events. + /// + public class ProcessGitLabEnterpriseWebhookRequest : DeveloperConnectBaseServiceRequest + { + /// Constructs a new ProcessGitLabEnterpriseWebhook request. + public ProcessGitLabEnterpriseWebhookRequest(Google.Apis.Services.IClientService service, Google.Apis.DeveloperConnect.v1.Data.ProcessGitLabEnterpriseWebhookRequest body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Required. The GitRepositoryLink resource where the webhook will be received. Format: + /// `projects/*/locations/*/connections/*/gitRepositoryLinks/*`. + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.DeveloperConnect.v1.Data.ProcessGitLabEnterpriseWebhookRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "processGitLabEnterpriseWebhook"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}:processGitLabEnterpriseWebhook"; + + /// Initializes ProcessGitLabEnterpriseWebhook parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/connections/[^/]+/gitRepositoryLinks/[^/]+$", + }); + } + } + + /// ProcessGitLabWebhook is called by the GitLab.com for notifying events. + /// The body of the request. + /// + /// Required. The GitRepositoryLink resource where the webhook will be received. Format: + /// `projects/*/locations/*/connections/*/gitRepositoryLinks/*`. + /// + public virtual ProcessGitLabWebhookRequest ProcessGitLabWebhook(Google.Apis.DeveloperConnect.v1.Data.ProcessGitLabWebhookRequest body, string name) + { + return new ProcessGitLabWebhookRequest(this.service, body, name); + } + + /// ProcessGitLabWebhook is called by the GitLab.com for notifying events. + public class ProcessGitLabWebhookRequest : DeveloperConnectBaseServiceRequest + { + /// Constructs a new ProcessGitLabWebhook request. + public ProcessGitLabWebhookRequest(Google.Apis.Services.IClientService service, Google.Apis.DeveloperConnect.v1.Data.ProcessGitLabWebhookRequest body, string name) : base(service) + { + Name = name; + Body = body; + InitParameters(); + } + + /// + /// Required. The GitRepositoryLink resource where the webhook will be received. Format: + /// `projects/*/locations/*/connections/*/gitRepositoryLinks/*`. + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.DeveloperConnect.v1.Data.ProcessGitLabWebhookRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "processGitLabWebhook"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+name}:processGitLabWebhook"; + + /// Initializes ProcessGitLabWebhook parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+/connections/[^/]+/gitRepositoryLinks/[^/]+$", + }); + } + } } /// Creates a new Connection in a given project and location. @@ -1499,6 +1623,70 @@ protected override void InitParameters() }); } } + + /// + /// ProcessGitHubEnterpriseWebhook is called by the external GitHub Enterprise instances for notifying + /// events. + /// + /// The body of the request. + /// + /// Required. Project and location where the webhook will be received. Format: `projects/*/locations/*`. + /// + public virtual ProcessGitHubEnterpriseWebhookRequest ProcessGitHubEnterpriseWebhook(Google.Apis.DeveloperConnect.v1.Data.ProcessGitHubEnterpriseWebhookRequest body, string parent) + { + return new ProcessGitHubEnterpriseWebhookRequest(this.service, body, parent); + } + + /// + /// ProcessGitHubEnterpriseWebhook is called by the external GitHub Enterprise instances for notifying + /// events. + /// + public class ProcessGitHubEnterpriseWebhookRequest : DeveloperConnectBaseServiceRequest + { + /// Constructs a new ProcessGitHubEnterpriseWebhook request. + public ProcessGitHubEnterpriseWebhookRequest(Google.Apis.Services.IClientService service, Google.Apis.DeveloperConnect.v1.Data.ProcessGitHubEnterpriseWebhookRequest body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// + /// Required. Project and location where the webhook will be received. Format: + /// `projects/*/locations/*`. + /// + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// Gets or sets the body of this request. + Google.Apis.DeveloperConnect.v1.Data.ProcessGitHubEnterpriseWebhookRequest Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "processGitHubEnterpriseWebhook"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "v1/{+parent}/connections:processGitHubEnterpriseWebhook"; + + /// Initializes ProcessGitHubEnterpriseWebhook parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+/locations/[^/]+$", + }); + } + } } /// Gets the Operations resource. @@ -2631,6 +2819,39 @@ public virtual System.DateTimeOffset? UpdateTimeDateTimeOffset public virtual string WebhookId { get; set; } } + /// + /// Message that represents an arbitrary HTTP body. It should only be used for payload formats that can't be + /// represented as JSON, such as raw binary or an HTML page. This message can be used both in streaming and + /// non-streaming API methods in the request as well as the response. It can be used as a top-level request field, + /// which is convenient if one wants to extract parameters from either the URL or HTTP template into the request + /// fields and also want access to the raw HTTP body. Example: message GetResourceRequest { // A unique request id. + /// string request_id = 1; // The raw HTTP body is bound to this field. google.api.HttpBody http_body = 2; } service + /// ResourceService { rpc GetResource(GetResourceRequest) returns (google.api.HttpBody); rpc + /// UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty); } Example with streaming methods: service + /// CaldavService { rpc GetCalendar(stream google.api.HttpBody) returns (stream google.api.HttpBody); rpc + /// UpdateCalendar(stream google.api.HttpBody) returns (stream google.api.HttpBody); } Use of this type only changes + /// how the request and response bodies are handled, all other features will continue to work unchanged. + /// + public class HttpBody : Google.Apis.Requests.IDirectResponseSchema + { + /// The HTTP Content-Type header value specifying the content type of the body. + [Newtonsoft.Json.JsonPropertyAttribute("contentType")] + public virtual string ContentType { get; set; } + + /// The HTTP request/response body as raw binary. + [Newtonsoft.Json.JsonPropertyAttribute("data")] + public virtual string Data { get; set; } + + /// + /// Application specific response metadata. Must be set in the first response for streaming APIs. + /// + [Newtonsoft.Json.JsonPropertyAttribute("extensions")] + public virtual System.Collections.Generic.IList> Extensions { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Represents an installation of the GitHub App. public class Installation : Google.Apis.Requests.IDirectResponseSchema { @@ -2956,6 +3177,39 @@ public virtual System.DateTimeOffset? EndTimeDateTimeOffset public virtual string ETag { get; set; } } + /// RPC request object accepted by the ProcessGitHubEnterpriseWebhook RPC method. + public class ProcessGitHubEnterpriseWebhookRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. HTTP request body. + [Newtonsoft.Json.JsonPropertyAttribute("body")] + public virtual HttpBody Body { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// RPC request object accepted by the ProcessGitLabEnterpriseWebhook RPC method. + public class ProcessGitLabEnterpriseWebhookRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. HTTP request body. + [Newtonsoft.Json.JsonPropertyAttribute("body")] + public virtual HttpBody Body { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// RPC request object accepted by the ProcessGitLabWebhook RPC method. + public class ProcessGitLabWebhookRequest : Google.Apis.Requests.IDirectResponseSchema + { + /// Required. HTTP request body. + [Newtonsoft.Json.JsonPropertyAttribute("body")] + public virtual HttpBody Body { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// ServiceDirectoryConfig represents Service Directory configuration for a connection. public class ServiceDirectoryConfig : Google.Apis.Requests.IDirectResponseSchema { diff --git a/Src/Generated/Google.Apis.DeveloperConnect.v1/Google.Apis.DeveloperConnect.v1.csproj b/Src/Generated/Google.Apis.DeveloperConnect.v1/Google.Apis.DeveloperConnect.v1.csproj index f4f8001dd91..2cc9f10b7df 100644 --- a/Src/Generated/Google.Apis.DeveloperConnect.v1/Google.Apis.DeveloperConnect.v1.csproj +++ b/Src/Generated/Google.Apis.DeveloperConnect.v1/Google.Apis.DeveloperConnect.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.DeveloperConnect.v1 Client Library - 1.68.0.3556 + 1.68.0.3574 Google LLC Copyright 2024 Google LLC Google From cb8f00e0e50a481ac1bc26aff2c35c989286f1cf Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:56 -0700 Subject: [PATCH 21/61] feat: Generate Google.Apis.Dialogflow.v2 version 1.68.0.3578 --- DiscoveryJson/dialogflow.v2.json | 12 ++++---- .../Google.Apis.Dialogflow.v2.cs | 28 +++++++++---------- .../Google.Apis.Dialogflow.v2.csproj | 2 +- 3 files changed, 21 insertions(+), 21 deletions(-) diff --git a/DiscoveryJson/dialogflow.v2.json b/DiscoveryJson/dialogflow.v2.json index 4339f0185cb..6d22527d984 100644 --- a/DiscoveryJson/dialogflow.v2.json +++ b/DiscoveryJson/dialogflow.v2.json @@ -3284,7 +3284,7 @@ ], "parameters": { "conversationId": { - "description": "Optional. Identifier of the conversation. Generally it's auto generated by Google. Only set it if you cannot wait for the response to return a auto-generated one to you. The conversation ID must be compliant with the regression fomula `a-zA-Z*` with the characters length in range of [3,64]. If the field is provided, the caller is resposible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", + "description": "Optional. Identifier of the conversation. Generally it's auto generated by Google. Only set it if you cannot wait for the response to return a auto-generated one to you. The conversation ID must be compliant with the regression formula `a-zA-Z*` with the characters length in range of [3,64]. If the field is provided, the caller is responsible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", "location": "query", "type": "string" }, @@ -3782,7 +3782,7 @@ ], "parameters": { "generatorId": { - "description": "Optional. The ID to use for the generator, which will become the final component of the generator's resource name. The generator ID must be compliant with the regression fomula `a-zA-Z*` with the characters length in range of [3,64]. If the field is not provided, an Id will be auto-generated. If the field is provided, the caller is resposible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", + "description": "Optional. The ID to use for the generator, which will become the final component of the generator's resource name. The generator ID must be compliant with the regression formula `a-zA-Z*` with the characters length in range of [3,64]. If the field is not provided, an Id will be auto-generated. If the field is provided, the caller is responsible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", "location": "query", "type": "string" }, @@ -7257,7 +7257,7 @@ ], "parameters": { "conversationId": { - "description": "Optional. Identifier of the conversation. Generally it's auto generated by Google. Only set it if you cannot wait for the response to return a auto-generated one to you. The conversation ID must be compliant with the regression fomula `a-zA-Z*` with the characters length in range of [3,64]. If the field is provided, the caller is resposible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", + "description": "Optional. Identifier of the conversation. Generally it's auto generated by Google. Only set it if you cannot wait for the response to return a auto-generated one to you. The conversation ID must be compliant with the regression formula `a-zA-Z*` with the characters length in range of [3,64]. If the field is provided, the caller is responsible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", "location": "query", "type": "string" }, @@ -7788,7 +7788,7 @@ ], "parameters": { "generatorId": { - "description": "Optional. The ID to use for the generator, which will become the final component of the generator's resource name. The generator ID must be compliant with the regression fomula `a-zA-Z*` with the characters length in range of [3,64]. If the field is not provided, an Id will be auto-generated. If the field is provided, the caller is resposible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", + "description": "Optional. The ID to use for the generator, which will become the final component of the generator's resource name. The generator ID must be compliant with the regression formula `a-zA-Z*` with the characters length in range of [3,64]. If the field is not provided, an Id will be auto-generated. If the field is provided, the caller is responsible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", "location": "query", "type": "string" }, @@ -7848,7 +7848,7 @@ ], "parameters": { "name": { - "description": "Required. The generator resource name to retrieve. Format: `projects//locations/`/generators/`", + "description": "Required. The generator resource name to retrieve. Format: `projects//locations//generators/`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/generators/[^/]+$", "required": true, @@ -8714,7 +8714,7 @@ } } }, - "revision": "20240924", + "revision": "20241018", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { diff --git a/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.cs b/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.cs index 170e4deedbc..ce222739ca4 100644 --- a/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.cs +++ b/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.cs @@ -8449,10 +8449,10 @@ public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Di /// /// Optional. Identifier of the conversation. Generally it's auto generated by Google. Only set it if /// you cannot wait for the response to return a auto-generated one to you. The conversation ID must be - /// compliant with the regression fomula `a-zA-Z*` with the characters length in range of [3,64]. If the - /// field is provided, the caller is resposible for 1. the uniqueness of the ID, otherwise the request - /// will be rejected. 2. the consistency for whether to use custom ID or not under a project to better - /// ensure uniqueness. + /// compliant with the regression formula `a-zA-Z*` with the characters length in range of [3,64]. If + /// the field is provided, the caller is responsible for 1. the uniqueness of the ID, otherwise the + /// request will be rejected. 2. the consistency for whether to use custom ID or not under a project to + /// better ensure uniqueness. /// [Google.Apis.Util.RequestParameterAttribute("conversationId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ConversationId { get; set; } @@ -8683,9 +8683,9 @@ public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Di /// /// Optional. The ID to use for the generator, which will become the final component of the generator's - /// resource name. The generator ID must be compliant with the regression fomula `a-zA-Z*` with the + /// resource name. The generator ID must be compliant with the regression formula `a-zA-Z*` with the /// characters length in range of [3,64]. If the field is not provided, an Id will be auto-generated. If - /// the field is provided, the caller is resposible for 1. the uniqueness of the ID, otherwise the + /// the field is provided, the caller is responsible for 1. the uniqueness of the ID, otherwise the /// request will be rejected. 2. the consistency for whether to use custom ID or not under a project to /// better ensure uniqueness. /// @@ -17393,8 +17393,8 @@ public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Di /// /// Optional. Identifier of the conversation. Generally it's auto generated by Google. Only set it /// if you cannot wait for the response to return a auto-generated one to you. The conversation ID - /// must be compliant with the regression fomula `a-zA-Z*` with the characters length in range of - /// [3,64]. If the field is provided, the caller is resposible for 1. the uniqueness of the ID, + /// must be compliant with the regression formula `a-zA-Z*` with the characters length in range of + /// [3,64]. If the field is provided, the caller is responsible for 1. the uniqueness of the ID, /// otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not /// under a project to better ensure uniqueness. /// @@ -17715,11 +17715,11 @@ public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Di /// /// Optional. The ID to use for the generator, which will become the final component of the - /// generator's resource name. The generator ID must be compliant with the regression fomula + /// generator's resource name. The generator ID must be compliant with the regression formula /// `a-zA-Z*` with the characters length in range of [3,64]. If the field is not provided, an Id - /// will be auto-generated. If the field is provided, the caller is resposible for 1. the uniqueness - /// of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom - /// ID or not under a project to better ensure uniqueness. + /// will be auto-generated. If the field is provided, the caller is responsible for 1. the + /// uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to + /// use custom ID or not under a project to better ensure uniqueness. /// [Google.Apis.Util.RequestParameterAttribute("generatorId", Google.Apis.Util.RequestParameterType.Query)] public virtual string GeneratorId { get; set; } @@ -17813,7 +17813,7 @@ protected override void InitParameters() /// Retrieves a generator. /// - /// Required. The generator resource name to retrieve. Format: `projects//locations/`/generators/` + /// Required. The generator resource name to retrieve. Format: `projects//locations//generators/` /// public virtual GetRequest Get(string name) { @@ -17831,7 +17831,7 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) : ba } /// - /// Required. The generator resource name to retrieve. Format: `projects//locations/`/generators/` + /// Required. The generator resource name to retrieve. Format: `projects//locations//generators/` /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } diff --git a/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.csproj b/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.csproj index 94aa1a660a3..d6a8d1a3b90 100644 --- a/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.csproj +++ b/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.Dialogflow.v2 Client Library - 1.68.0.3554 + 1.68.0.3578 Google LLC Copyright 2024 Google LLC Google From 76a9b210fd961338239a4d79930dc38456bf52c2 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:11:59 -0700 Subject: [PATCH 22/61] feat: Generate Google.Apis.Dialogflow.v2beta1 version 1.68.0.3578 --- DiscoveryJson/dialogflow.v2beta1.json | 10 ++++---- .../Google.Apis.Dialogflow.v2beta1.cs | 24 +++++++++---------- .../Google.Apis.Dialogflow.v2beta1.csproj | 2 +- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/DiscoveryJson/dialogflow.v2beta1.json b/DiscoveryJson/dialogflow.v2beta1.json index b54cbfe9c19..e4faa0dfb01 100644 --- a/DiscoveryJson/dialogflow.v2beta1.json +++ b/DiscoveryJson/dialogflow.v2beta1.json @@ -2971,7 +2971,7 @@ ], "parameters": { "conversationId": { - "description": "Optional. Identifier of the conversation. Generally it's auto generated by Google. Only set it if you cannot wait for the response to return a auto-generated one to you. The conversation ID must be compliant with the regression fomula `a-zA-Z*` with the characters length in range of [3,64]. If the field is provided, the caller is resposible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", + "description": "Optional. Identifier of the conversation. Generally it's auto generated by Google. Only set it if you cannot wait for the response to return a auto-generated one to you. The conversation ID must be compliant with the regression formula `a-zA-Z*` with the characters length in range of [3,64]. If the field is provided, the caller is responsible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", "location": "query", "type": "string" }, @@ -3571,7 +3571,7 @@ ], "parameters": { "generatorId": { - "description": "Optional. The ID to use for the generator, which will become the final component of the generator's resource name. The generator ID must be compliant with the regression fomula `a-zA-Z*` with the characters length in range of [3,64]. If the field is not provided, an Id will be auto-generated. If the field is provided, the caller is resposible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", + "description": "Optional. The ID to use for the generator, which will become the final component of the generator's resource name. The generator ID must be compliant with the regression formula `a-zA-Z*` with the characters length in range of [3,64]. If the field is not provided, an Id will be auto-generated. If the field is provided, the caller is responsible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", "location": "query", "type": "string" }, @@ -6620,7 +6620,7 @@ ], "parameters": { "conversationId": { - "description": "Optional. Identifier of the conversation. Generally it's auto generated by Google. Only set it if you cannot wait for the response to return a auto-generated one to you. The conversation ID must be compliant with the regression fomula `a-zA-Z*` with the characters length in range of [3,64]. If the field is provided, the caller is resposible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", + "description": "Optional. Identifier of the conversation. Generally it's auto generated by Google. Only set it if you cannot wait for the response to return a auto-generated one to you. The conversation ID must be compliant with the regression formula `a-zA-Z*` with the characters length in range of [3,64]. If the field is provided, the caller is responsible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", "location": "query", "type": "string" }, @@ -7180,7 +7180,7 @@ ], "parameters": { "generatorId": { - "description": "Optional. The ID to use for the generator, which will become the final component of the generator's resource name. The generator ID must be compliant with the regression fomula `a-zA-Z*` with the characters length in range of [3,64]. If the field is not provided, an Id will be auto-generated. If the field is provided, the caller is resposible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", + "description": "Optional. The ID to use for the generator, which will become the final component of the generator's resource name. The generator ID must be compliant with the regression formula `a-zA-Z*` with the characters length in range of [3,64]. If the field is not provided, an Id will be auto-generated. If the field is provided, the caller is responsible for 1. the uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not under a project to better ensure uniqueness.", "location": "query", "type": "string" }, @@ -8082,7 +8082,7 @@ } } }, - "revision": "20240924", + "revision": "20241018", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { diff --git a/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.cs b/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.cs index ed2134b46be..7d6810cc26d 100644 --- a/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.cs +++ b/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.cs @@ -8239,10 +8239,10 @@ public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Di /// /// Optional. Identifier of the conversation. Generally it's auto generated by Google. Only set it if /// you cannot wait for the response to return a auto-generated one to you. The conversation ID must be - /// compliant with the regression fomula `a-zA-Z*` with the characters length in range of [3,64]. If the - /// field is provided, the caller is resposible for 1. the uniqueness of the ID, otherwise the request - /// will be rejected. 2. the consistency for whether to use custom ID or not under a project to better - /// ensure uniqueness. + /// compliant with the regression formula `a-zA-Z*` with the characters length in range of [3,64]. If + /// the field is provided, the caller is responsible for 1. the uniqueness of the ID, otherwise the + /// request will be rejected. 2. the consistency for whether to use custom ID or not under a project to + /// better ensure uniqueness. /// [Google.Apis.Util.RequestParameterAttribute("conversationId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ConversationId { get; set; } @@ -8473,9 +8473,9 @@ public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Di /// /// Optional. The ID to use for the generator, which will become the final component of the generator's - /// resource name. The generator ID must be compliant with the regression fomula `a-zA-Z*` with the + /// resource name. The generator ID must be compliant with the regression formula `a-zA-Z*` with the /// characters length in range of [3,64]. If the field is not provided, an Id will be auto-generated. If - /// the field is provided, the caller is resposible for 1. the uniqueness of the ID, otherwise the + /// the field is provided, the caller is responsible for 1. the uniqueness of the ID, otherwise the /// request will be rejected. 2. the consistency for whether to use custom ID or not under a project to /// better ensure uniqueness. /// @@ -16513,8 +16513,8 @@ public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Di /// /// Optional. Identifier of the conversation. Generally it's auto generated by Google. Only set it /// if you cannot wait for the response to return a auto-generated one to you. The conversation ID - /// must be compliant with the regression fomula `a-zA-Z*` with the characters length in range of - /// [3,64]. If the field is provided, the caller is resposible for 1. the uniqueness of the ID, + /// must be compliant with the regression formula `a-zA-Z*` with the characters length in range of + /// [3,64]. If the field is provided, the caller is responsible for 1. the uniqueness of the ID, /// otherwise the request will be rejected. 2. the consistency for whether to use custom ID or not /// under a project to better ensure uniqueness. /// @@ -16835,11 +16835,11 @@ public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Di /// /// Optional. The ID to use for the generator, which will become the final component of the - /// generator's resource name. The generator ID must be compliant with the regression fomula + /// generator's resource name. The generator ID must be compliant with the regression formula /// `a-zA-Z*` with the characters length in range of [3,64]. If the field is not provided, an Id - /// will be auto-generated. If the field is provided, the caller is resposible for 1. the uniqueness - /// of the ID, otherwise the request will be rejected. 2. the consistency for whether to use custom - /// ID or not under a project to better ensure uniqueness. + /// will be auto-generated. If the field is provided, the caller is responsible for 1. the + /// uniqueness of the ID, otherwise the request will be rejected. 2. the consistency for whether to + /// use custom ID or not under a project to better ensure uniqueness. /// [Google.Apis.Util.RequestParameterAttribute("generatorId", Google.Apis.Util.RequestParameterType.Query)] public virtual string GeneratorId { get; set; } diff --git a/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.csproj b/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.csproj index 94929cc7347..13b1dcdf328 100644 --- a/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.csproj +++ b/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Dialogflow.v2beta1 Client Library - 1.68.0.3554 + 1.68.0.3578 Google LLC Copyright 2024 Google LLC Google From 249d96ef5013f2f23c8b731e0f036d3926dd707b Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:02 -0700 Subject: [PATCH 23/61] feat: Generate Google.Apis.DisplayVideo.v2 version 1.68.0.3577 --- DiscoveryJson/displayvideo.v2.json | 23 +++++++++++++------ .../Google.Apis.DisplayVideo.v2.csproj | 2 +- 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/DiscoveryJson/displayvideo.v2.json b/DiscoveryJson/displayvideo.v2.json index 35b849ace6f..22e7909434a 100644 --- a/DiscoveryJson/displayvideo.v2.json +++ b/DiscoveryJson/displayvideo.v2.json @@ -9267,7 +9267,7 @@ } } }, - "revision": "20241003", + "revision": "20241017", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActivateManualTriggerRequest": { @@ -12332,7 +12332,8 @@ "SDF_VERSION_5_5", "SDF_VERSION_6", "SDF_VERSION_7", - "SDF_VERSION_7_1" + "SDF_VERSION_7_1", + "SDF_VERSION_8" ], "enumDeprecated": [ false, @@ -12348,6 +12349,7 @@ true, false, false, + false, false ], "enumDescriptions": [ @@ -12364,7 +12366,8 @@ "SDF version 5.5", "SDF version 6", "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version." + "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", + "SDF version 8. **This SDF version is in beta. It is only available to a subset of users.**" ], "type": "string" } @@ -19849,7 +19852,8 @@ "SDF_VERSION_5_5", "SDF_VERSION_6", "SDF_VERSION_7", - "SDF_VERSION_7_1" + "SDF_VERSION_7_1", + "SDF_VERSION_8" ], "enumDeprecated": [ false, @@ -19865,6 +19869,7 @@ true, false, false, + false, false ], "enumDescriptions": [ @@ -19881,7 +19886,8 @@ "SDF version 5.5", "SDF version 6", "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version." + "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", + "SDF version 8. **This SDF version is in beta. It is only available to a subset of users.**" ], "type": "string" } @@ -19929,7 +19935,8 @@ "SDF_VERSION_5_5", "SDF_VERSION_6", "SDF_VERSION_7", - "SDF_VERSION_7_1" + "SDF_VERSION_7_1", + "SDF_VERSION_8" ], "enumDeprecated": [ false, @@ -19945,6 +19952,7 @@ true, false, false, + false, false ], "enumDescriptions": [ @@ -19961,7 +19969,8 @@ "SDF version 5.5", "SDF version 6", "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version." + "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", + "SDF version 8. **This SDF version is in beta. It is only available to a subset of users.**" ], "type": "string" } diff --git a/Src/Generated/Google.Apis.DisplayVideo.v2/Google.Apis.DisplayVideo.v2.csproj b/Src/Generated/Google.Apis.DisplayVideo.v2/Google.Apis.DisplayVideo.v2.csproj index 532baf07f2d..f6cc8e602c8 100644 --- a/Src/Generated/Google.Apis.DisplayVideo.v2/Google.Apis.DisplayVideo.v2.csproj +++ b/Src/Generated/Google.Apis.DisplayVideo.v2/Google.Apis.DisplayVideo.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.DisplayVideo.v2 Client Library - 1.68.0.3563 + 1.68.0.3577 Google LLC Copyright 2024 Google LLC Google From 4baeb381827bc0df8ef89c5dc37cfa5569af1acf Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:06 -0700 Subject: [PATCH 24/61] feat: Generate Google.Apis.DisplayVideo.v3 version 1.68.0.3577 --- DiscoveryJson/displayvideo.v3.json | 294 +++++++++++++++++- .../Google.Apis.DisplayVideo.v3.cs | 60 ++++ .../Google.Apis.DisplayVideo.v3.csproj | 2 +- 3 files changed, 348 insertions(+), 8 deletions(-) diff --git a/DiscoveryJson/displayvideo.v3.json b/DiscoveryJson/displayvideo.v3.json index 8c501e3fde5..0925235f407 100644 --- a/DiscoveryJson/displayvideo.v3.json +++ b/DiscoveryJson/displayvideo.v3.json @@ -9222,7 +9222,7 @@ } } }, - "revision": "20241003", + "revision": "20241017", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActiveViewVideoViewabilityMetricConfig": { @@ -9566,6 +9566,116 @@ "description": "Details of Adloox settings.", "id": "Adloox", "properties": { + "adultExplicitSexualContent": { + "description": "Optional. Adult explicit sexual content.", + "enum": [ + "GARM_RISK_EXCLUSION_UNSPECIFIED", + "GARM_RISK_EXCLUSION_FLOOR", + "GARM_RISK_EXCLUSION_HIGH", + "GARM_RISK_EXCLUSION_MEDIUM", + "GARM_RISK_EXCLUSION_LOW" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any GARM risk level option.", + "Exclude floor risk.", + "Exclude high and floor risk.", + "Exclude high, medium, and floor risk.", + "Exclude All Level of Risk (Low, Medium, High and Floor)." + ], + "type": "string" + }, + "armsAmmunitionContent": { + "description": "Optional. Arms ammunition content.", + "enum": [ + "GARM_RISK_EXCLUSION_UNSPECIFIED", + "GARM_RISK_EXCLUSION_FLOOR", + "GARM_RISK_EXCLUSION_HIGH", + "GARM_RISK_EXCLUSION_MEDIUM", + "GARM_RISK_EXCLUSION_LOW" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any GARM risk level option.", + "Exclude floor risk.", + "Exclude high and floor risk.", + "Exclude high, medium, and floor risk.", + "Exclude All Level of Risk (Low, Medium, High and Floor)." + ], + "type": "string" + }, + "crimeHarmfulActsIndividualsSocietyHumanRightsViolationsContent": { + "description": "Optional. Crime harmful acts to individuals society human rights violations content.", + "enum": [ + "GARM_RISK_EXCLUSION_UNSPECIFIED", + "GARM_RISK_EXCLUSION_FLOOR", + "GARM_RISK_EXCLUSION_HIGH", + "GARM_RISK_EXCLUSION_MEDIUM", + "GARM_RISK_EXCLUSION_LOW" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any GARM risk level option.", + "Exclude floor risk.", + "Exclude high and floor risk.", + "Exclude high, medium, and floor risk.", + "Exclude All Level of Risk (Low, Medium, High and Floor)." + ], + "type": "string" + }, + "deathInjuryMilitaryConflictContent": { + "description": "Optional. Death injury military conflict content.", + "enum": [ + "GARM_RISK_EXCLUSION_UNSPECIFIED", + "GARM_RISK_EXCLUSION_FLOOR", + "GARM_RISK_EXCLUSION_HIGH", + "GARM_RISK_EXCLUSION_MEDIUM", + "GARM_RISK_EXCLUSION_LOW" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any GARM risk level option.", + "Exclude floor risk.", + "Exclude high and floor risk.", + "Exclude high, medium, and floor risk.", + "Exclude All Level of Risk (Low, Medium, High and Floor)." + ], + "type": "string" + }, + "debatedSensitiveSocialIssueContent": { + "description": "Optional. Debated sensitive social issue content.", + "enum": [ + "GARM_RISK_EXCLUSION_UNSPECIFIED", + "GARM_RISK_EXCLUSION_FLOOR", + "GARM_RISK_EXCLUSION_HIGH", + "GARM_RISK_EXCLUSION_MEDIUM", + "GARM_RISK_EXCLUSION_LOW" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any GARM risk level option.", + "Exclude floor risk.", + "Exclude high and floor risk.", + "Exclude high, medium, and floor risk.", + "Exclude All Level of Risk (Low, Medium, High and Floor)." + ], + "type": "string" + }, + "displayIabViewability": { + "description": "Optional. Display IAB viewability.", + "enum": [ + "DISPLAY_IAB_VIEWABILITY_UNSPECIFIED", + "DISPLAY_IAB_VIEWABILITY_10", + "DISPLAY_IAB_VIEWABILITY_20", + "DISPLAY_IAB_VIEWABILITY_35", + "DISPLAY_IAB_VIEWABILITY_50", + "DISPLAY_IAB_VIEWABILITY_75" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any display viewability options.", + "10%+ in view (IAB display viewability standard).", + "20%+ in view (IAB display viewability standard).", + "35%+ in view (IAB display viewability standard).", + "50%+ in view (IAB display viewability standard).", + "75%+ in view (IAB display viewability standard)." + ], + "type": "string" + }, "excludedAdlooxCategories": { "description": "Adloox's brand safety settings.", "items": { @@ -9594,6 +9704,167 @@ "type": "string" }, "type": "array" + }, + "excludedFraudIvtMfaCategories": { + "description": "Optional. Adloox's fraud IVT MFA settings.", + "items": { + "enum": [ + "FRAUD_IVT_MFA_CATEGORY_UNSPECIFIED", + "FRAUD_IVT_MFA" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any fraud IVT MFA categories.", + "FRAUD, IVT, MFA." + ], + "type": "string" + }, + "type": "array" + }, + "hateSpeechActsAggressionContent": { + "description": "Optional. Hate speech acts of aggression content.", + "enum": [ + "GARM_RISK_EXCLUSION_UNSPECIFIED", + "GARM_RISK_EXCLUSION_FLOOR", + "GARM_RISK_EXCLUSION_HIGH", + "GARM_RISK_EXCLUSION_MEDIUM", + "GARM_RISK_EXCLUSION_LOW" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any GARM risk level option.", + "Exclude floor risk.", + "Exclude high and floor risk.", + "Exclude high, medium, and floor risk.", + "Exclude All Level of Risk (Low, Medium, High and Floor)." + ], + "type": "string" + }, + "illegalDrugsTobaccoEcigarettesVapingAlcoholContent": { + "description": "Optional. Illegal drugs tobacco ecigarettes vaping alcohol content.", + "enum": [ + "GARM_RISK_EXCLUSION_UNSPECIFIED", + "GARM_RISK_EXCLUSION_FLOOR", + "GARM_RISK_EXCLUSION_HIGH", + "GARM_RISK_EXCLUSION_MEDIUM", + "GARM_RISK_EXCLUSION_LOW" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any GARM risk level option.", + "Exclude floor risk.", + "Exclude high and floor risk.", + "Exclude high, medium, and floor risk.", + "Exclude All Level of Risk (Low, Medium, High and Floor)." + ], + "type": "string" + }, + "misinformationContent": { + "description": "Optional. Misinformation content.", + "enum": [ + "GARM_RISK_EXCLUSION_UNSPECIFIED", + "GARM_RISK_EXCLUSION_FLOOR", + "GARM_RISK_EXCLUSION_HIGH", + "GARM_RISK_EXCLUSION_MEDIUM", + "GARM_RISK_EXCLUSION_LOW" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any GARM risk level option.", + "Exclude floor risk.", + "Exclude high and floor risk.", + "Exclude high, medium, and floor risk.", + "Exclude All Level of Risk (Low, Medium, High and Floor)." + ], + "type": "string" + }, + "obscenityProfanityContent": { + "description": "Optional. Obscenity profanity content.", + "enum": [ + "GARM_RISK_EXCLUSION_UNSPECIFIED", + "GARM_RISK_EXCLUSION_FLOOR", + "GARM_RISK_EXCLUSION_HIGH", + "GARM_RISK_EXCLUSION_MEDIUM", + "GARM_RISK_EXCLUSION_LOW" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any GARM risk level option.", + "Exclude floor risk.", + "Exclude high and floor risk.", + "Exclude high, medium, and floor risk.", + "Exclude All Level of Risk (Low, Medium, High and Floor)." + ], + "type": "string" + }, + "onlinePiracyContent": { + "description": "Optional. Online piracy content.", + "enum": [ + "GARM_RISK_EXCLUSION_UNSPECIFIED", + "GARM_RISK_EXCLUSION_FLOOR", + "GARM_RISK_EXCLUSION_HIGH", + "GARM_RISK_EXCLUSION_MEDIUM", + "GARM_RISK_EXCLUSION_LOW" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any GARM risk level option.", + "Exclude floor risk.", + "Exclude high and floor risk.", + "Exclude high, medium, and floor risk.", + "Exclude All Level of Risk (Low, Medium, High and Floor)." + ], + "type": "string" + }, + "spamHarmfulContent": { + "description": "Optional. Spam harmful content.", + "enum": [ + "GARM_RISK_EXCLUSION_UNSPECIFIED", + "GARM_RISK_EXCLUSION_FLOOR", + "GARM_RISK_EXCLUSION_HIGH", + "GARM_RISK_EXCLUSION_MEDIUM", + "GARM_RISK_EXCLUSION_LOW" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any GARM risk level option.", + "Exclude floor risk.", + "Exclude high and floor risk.", + "Exclude high, medium, and floor risk.", + "Exclude All Level of Risk (Low, Medium, High and Floor)." + ], + "type": "string" + }, + "terrorismContent": { + "description": "Optional. Terrorism content.", + "enum": [ + "GARM_RISK_EXCLUSION_UNSPECIFIED", + "GARM_RISK_EXCLUSION_FLOOR", + "GARM_RISK_EXCLUSION_HIGH", + "GARM_RISK_EXCLUSION_MEDIUM", + "GARM_RISK_EXCLUSION_LOW" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any GARM risk level option.", + "Exclude floor risk.", + "Exclude high and floor risk.", + "Exclude high, medium, and floor risk.", + "Exclude All Level of Risk (Low, Medium, High and Floor)." + ], + "type": "string" + }, + "videoIabViewability": { + "description": "Optional. Video IAB viewability.", + "enum": [ + "VIDEO_IAB_VIEWABILITY_UNSPECIFIED", + "VIDEO_IAB_VIEWABILITY_10", + "VIDEO_IAB_VIEWABILITY_20", + "VIDEO_IAB_VIEWABILITY_35", + "VIDEO_IAB_VIEWABILITY_50", + "VIDEO_IAB_VIEWABILITY_75" + ], + "enumDescriptions": [ + "This enum is only a placeholder and it doesn't specify any video viewability options.", + "10%+ in view (IAB video viewability standard).", + "20%+ in view (IAB video viewability standard).", + "35%+ in view (IAB video viewability standard).", + "50%+ in view (IAB video viewability standard).", + "75%+ in view (IAB video viewability standard)." + ], + "type": "string" } }, "type": "object" @@ -12907,7 +13178,8 @@ "SDF_VERSION_5_5", "SDF_VERSION_6", "SDF_VERSION_7", - "SDF_VERSION_7_1" + "SDF_VERSION_7_1", + "SDF_VERSION_8" ], "enumDeprecated": [ false, @@ -12923,6 +13195,7 @@ true, false, false, + false, false ], "enumDescriptions": [ @@ -12939,7 +13212,8 @@ "SDF version 5.5", "SDF version 6", "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version." + "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", + "SDF version 8. **This SDF version is in beta. It is only available to a subset of users.**" ], "type": "string" } @@ -20620,7 +20894,8 @@ "SDF_VERSION_5_5", "SDF_VERSION_6", "SDF_VERSION_7", - "SDF_VERSION_7_1" + "SDF_VERSION_7_1", + "SDF_VERSION_8" ], "enumDeprecated": [ false, @@ -20636,6 +20911,7 @@ true, false, false, + false, false ], "enumDescriptions": [ @@ -20652,7 +20928,8 @@ "SDF version 5.5", "SDF version 6", "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version." + "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", + "SDF version 8. **This SDF version is in beta. It is only available to a subset of users.**" ], "type": "string" } @@ -20700,7 +20977,8 @@ "SDF_VERSION_5_5", "SDF_VERSION_6", "SDF_VERSION_7", - "SDF_VERSION_7_1" + "SDF_VERSION_7_1", + "SDF_VERSION_8" ], "enumDeprecated": [ false, @@ -20716,6 +20994,7 @@ true, false, false, + false, false ], "enumDescriptions": [ @@ -20732,7 +21011,8 @@ "SDF version 5.5", "SDF version 6", "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version." + "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", + "SDF version 8. **This SDF version is in beta. It is only available to a subset of users.**" ], "type": "string" } diff --git a/Src/Generated/Google.Apis.DisplayVideo.v3/Google.Apis.DisplayVideo.v3.cs b/Src/Generated/Google.Apis.DisplayVideo.v3/Google.Apis.DisplayVideo.v3.cs index 90170e71904..33a970616c4 100644 --- a/Src/Generated/Google.Apis.DisplayVideo.v3/Google.Apis.DisplayVideo.v3.cs +++ b/Src/Generated/Google.Apis.DisplayVideo.v3/Google.Apis.DisplayVideo.v3.cs @@ -22218,10 +22218,70 @@ public class AdUrl : Google.Apis.Requests.IDirectResponseSchema /// Details of Adloox settings. public class Adloox : Google.Apis.Requests.IDirectResponseSchema { + /// Optional. Adult explicit sexual content. + [Newtonsoft.Json.JsonPropertyAttribute("adultExplicitSexualContent")] + public virtual string AdultExplicitSexualContent { get; set; } + + /// Optional. Arms ammunition content. + [Newtonsoft.Json.JsonPropertyAttribute("armsAmmunitionContent")] + public virtual string ArmsAmmunitionContent { get; set; } + + /// Optional. Crime harmful acts to individuals society human rights violations content. + [Newtonsoft.Json.JsonPropertyAttribute("crimeHarmfulActsIndividualsSocietyHumanRightsViolationsContent")] + public virtual string CrimeHarmfulActsIndividualsSocietyHumanRightsViolationsContent { get; set; } + + /// Optional. Death injury military conflict content. + [Newtonsoft.Json.JsonPropertyAttribute("deathInjuryMilitaryConflictContent")] + public virtual string DeathInjuryMilitaryConflictContent { get; set; } + + /// Optional. Debated sensitive social issue content. + [Newtonsoft.Json.JsonPropertyAttribute("debatedSensitiveSocialIssueContent")] + public virtual string DebatedSensitiveSocialIssueContent { get; set; } + + /// Optional. Display IAB viewability. + [Newtonsoft.Json.JsonPropertyAttribute("displayIabViewability")] + public virtual string DisplayIabViewability { get; set; } + /// Adloox's brand safety settings. [Newtonsoft.Json.JsonPropertyAttribute("excludedAdlooxCategories")] public virtual System.Collections.Generic.IList ExcludedAdlooxCategories { get; set; } + /// Optional. Adloox's fraud IVT MFA settings. + [Newtonsoft.Json.JsonPropertyAttribute("excludedFraudIvtMfaCategories")] + public virtual System.Collections.Generic.IList ExcludedFraudIvtMfaCategories { get; set; } + + /// Optional. Hate speech acts of aggression content. + [Newtonsoft.Json.JsonPropertyAttribute("hateSpeechActsAggressionContent")] + public virtual string HateSpeechActsAggressionContent { get; set; } + + /// Optional. Illegal drugs tobacco ecigarettes vaping alcohol content. + [Newtonsoft.Json.JsonPropertyAttribute("illegalDrugsTobaccoEcigarettesVapingAlcoholContent")] + public virtual string IllegalDrugsTobaccoEcigarettesVapingAlcoholContent { get; set; } + + /// Optional. Misinformation content. + [Newtonsoft.Json.JsonPropertyAttribute("misinformationContent")] + public virtual string MisinformationContent { get; set; } + + /// Optional. Obscenity profanity content. + [Newtonsoft.Json.JsonPropertyAttribute("obscenityProfanityContent")] + public virtual string ObscenityProfanityContent { get; set; } + + /// Optional. Online piracy content. + [Newtonsoft.Json.JsonPropertyAttribute("onlinePiracyContent")] + public virtual string OnlinePiracyContent { get; set; } + + /// Optional. Spam harmful content. + [Newtonsoft.Json.JsonPropertyAttribute("spamHarmfulContent")] + public virtual string SpamHarmfulContent { get; set; } + + /// Optional. Terrorism content. + [Newtonsoft.Json.JsonPropertyAttribute("terrorismContent")] + public virtual string TerrorismContent { get; set; } + + /// Optional. Video IAB viewability. + [Newtonsoft.Json.JsonPropertyAttribute("videoIabViewability")] + public virtual string VideoIabViewability { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } diff --git a/Src/Generated/Google.Apis.DisplayVideo.v3/Google.Apis.DisplayVideo.v3.csproj b/Src/Generated/Google.Apis.DisplayVideo.v3/Google.Apis.DisplayVideo.v3.csproj index 33c32e602f8..4a5a5438a67 100644 --- a/Src/Generated/Google.Apis.DisplayVideo.v3/Google.Apis.DisplayVideo.v3.csproj +++ b/Src/Generated/Google.Apis.DisplayVideo.v3/Google.Apis.DisplayVideo.v3.csproj @@ -3,7 +3,7 @@ Google.Apis.DisplayVideo.v3 Client Library - 1.68.0.3563 + 1.68.0.3577 Google LLC Copyright 2024 Google LLC Google From 7d6c54c18561a077f3d892acdea1cc8f12299f32 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:09 -0700 Subject: [PATCH 25/61] feat: Generate Google.Apis.Drive.v3 version 1.68.0.3574 --- DiscoveryJson/drive.v3.json | 4 ++-- Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.cs | 5 ++++- .../Google.Apis.Drive.v3/Google.Apis.Drive.v3.csproj | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/DiscoveryJson/drive.v3.json b/DiscoveryJson/drive.v3.json index 3381f15be21..f37050bb33c 100644 --- a/DiscoveryJson/drive.v3.json +++ b/DiscoveryJson/drive.v3.json @@ -1783,7 +1783,7 @@ "type": "string" }, "role": { - "description": "Optional. The roles the approver has allowed, if any.", + "description": "Optional. The roles the approver has allowed, if any. Note: This field is required for the `ACCEPT` action.", "location": "query", "repeated": true, "type": "string" @@ -2769,7 +2769,7 @@ } } }, - "revision": "20241008", + "revision": "20241014", "rootUrl": "https://www.googleapis.com/", "schemas": { "About": { diff --git a/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.cs b/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.cs index 13b9731e6f5..f743d9f3e57 100644 --- a/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.cs +++ b/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.cs @@ -2145,7 +2145,10 @@ public enum ActionEnum DENY = 2, } - /// Optional. The roles the approver has allowed, if any. + /// + /// Optional. The roles the approver has allowed, if any. Note: This field is required for the `ACCEPT` + /// action. + /// [Google.Apis.Util.RequestParameterAttribute("role", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable Role { get; set; } diff --git a/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.csproj b/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.csproj index ad7d3ad6fbc..601aea137f6 100644 --- a/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.csproj +++ b/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.csproj @@ -3,7 +3,7 @@ Google.Apis.Drive.v3 Client Library - 1.68.0.3568 + 1.68.0.3574 Google LLC Copyright 2024 Google LLC Google From 0dafe93724674edb69851cbb9a2e4baa9b5952c4 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:12 -0700 Subject: [PATCH 26/61] feat: Generate Google.Apis.CloudFilestore.v1 version 1.68.0.3568 --- DiscoveryJson/file.v1.json | 10 +++++----- .../Google.Apis.CloudFilestore.v1.cs | 15 +++++++++------ .../Google.Apis.CloudFilestore.v1.csproj | 2 +- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/DiscoveryJson/file.v1.json b/DiscoveryJson/file.v1.json index 576e7ee5b2b..901838e93d4 100644 --- a/DiscoveryJson/file.v1.json +++ b/DiscoveryJson/file.v1.json @@ -902,7 +902,7 @@ } } }, - "revision": "20240905", + "revision": "20241008", "rootUrl": "https://file.googleapis.com/", "schemas": { "Backup": { @@ -2302,22 +2302,22 @@ "id": "TimeOfDay", "properties": { "hours": { - "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", + "description": "Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", "format": "int32", "type": "integer" }, "minutes": { - "description": "Minutes of hour of day. Must be from 0 to 59.", + "description": "Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.", "format": "int32", "type": "integer" }, "nanos": { - "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "description": "Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.", "format": "int32", "type": "integer" }, "seconds": { - "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds.", + "description": "Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.", "format": "int32", "type": "integer" } diff --git a/Src/Generated/Google.Apis.CloudFilestore.v1/Google.Apis.CloudFilestore.v1.cs b/Src/Generated/Google.Apis.CloudFilestore.v1/Google.Apis.CloudFilestore.v1.cs index e1824377d52..be98d7903fa 100644 --- a/Src/Generated/Google.Apis.CloudFilestore.v1/Google.Apis.CloudFilestore.v1.cs +++ b/Src/Generated/Google.Apis.CloudFilestore.v1/Google.Apis.CloudFilestore.v1.cs @@ -3803,23 +3803,26 @@ public class Status : Google.Apis.Requests.IDirectResponseSchema public class TimeOfDay : Google.Apis.Requests.IDirectResponseSchema { /// - /// Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value "24:00:00" for - /// scenarios like business closing time. + /// Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or + /// equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time. /// [Newtonsoft.Json.JsonPropertyAttribute("hours")] public virtual System.Nullable Hours { get; set; } - /// Minutes of hour of day. Must be from 0 to 59. + /// Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59. [Newtonsoft.Json.JsonPropertyAttribute("minutes")] public virtual System.Nullable Minutes { get; set; } - /// Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. + /// + /// Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to + /// 999,999,999. + /// [Newtonsoft.Json.JsonPropertyAttribute("nanos")] public virtual System.Nullable Nanos { get; set; } /// - /// Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows - /// leap-seconds. + /// Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An + /// API may allow the value 60 if it allows leap-seconds. /// [Newtonsoft.Json.JsonPropertyAttribute("seconds")] public virtual System.Nullable Seconds { get; set; } diff --git a/Src/Generated/Google.Apis.CloudFilestore.v1/Google.Apis.CloudFilestore.v1.csproj b/Src/Generated/Google.Apis.CloudFilestore.v1/Google.Apis.CloudFilestore.v1.csproj index fd6bc19e1f3..f0517258bb2 100644 --- a/Src/Generated/Google.Apis.CloudFilestore.v1/Google.Apis.CloudFilestore.v1.csproj +++ b/Src/Generated/Google.Apis.CloudFilestore.v1/Google.Apis.CloudFilestore.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudFilestore.v1 Client Library - 1.68.0.3535 + 1.68.0.3568 Google LLC Copyright 2024 Google LLC Google From 1a49c67303bbf17517938a4668a371f56d8b1617 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:15 -0700 Subject: [PATCH 27/61] feat: Generate Google.Apis.CloudFilestore.v1beta1 version 1.68.0.3568 --- DiscoveryJson/file.v1beta1.json | 10 +++++----- .../Google.Apis.CloudFilestore.v1beta1.cs | 15 +++++++++------ .../Google.Apis.CloudFilestore.v1beta1.csproj | 2 +- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/DiscoveryJson/file.v1beta1.json b/DiscoveryJson/file.v1beta1.json index 22b3110e59a..c57e7f023e4 100644 --- a/DiscoveryJson/file.v1beta1.json +++ b/DiscoveryJson/file.v1beta1.json @@ -1069,7 +1069,7 @@ } } }, - "revision": "20240905", + "revision": "20241008", "rootUrl": "https://file.googleapis.com/", "schemas": { "Backup": { @@ -2639,22 +2639,22 @@ "id": "TimeOfDay", "properties": { "hours": { - "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", + "description": "Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", "format": "int32", "type": "integer" }, "minutes": { - "description": "Minutes of hour of day. Must be from 0 to 59.", + "description": "Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.", "format": "int32", "type": "integer" }, "nanos": { - "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "description": "Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.", "format": "int32", "type": "integer" }, "seconds": { - "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds.", + "description": "Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.", "format": "int32", "type": "integer" } diff --git a/Src/Generated/Google.Apis.CloudFilestore.v1beta1/Google.Apis.CloudFilestore.v1beta1.cs b/Src/Generated/Google.Apis.CloudFilestore.v1beta1/Google.Apis.CloudFilestore.v1beta1.cs index a7dd2765d0f..40db10ff56c 100644 --- a/Src/Generated/Google.Apis.CloudFilestore.v1beta1/Google.Apis.CloudFilestore.v1beta1.cs +++ b/Src/Generated/Google.Apis.CloudFilestore.v1beta1/Google.Apis.CloudFilestore.v1beta1.cs @@ -4365,23 +4365,26 @@ public class Status : Google.Apis.Requests.IDirectResponseSchema public class TimeOfDay : Google.Apis.Requests.IDirectResponseSchema { /// - /// Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value "24:00:00" for - /// scenarios like business closing time. + /// Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or + /// equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time. /// [Newtonsoft.Json.JsonPropertyAttribute("hours")] public virtual System.Nullable Hours { get; set; } - /// Minutes of hour of day. Must be from 0 to 59. + /// Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59. [Newtonsoft.Json.JsonPropertyAttribute("minutes")] public virtual System.Nullable Minutes { get; set; } - /// Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. + /// + /// Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to + /// 999,999,999. + /// [Newtonsoft.Json.JsonPropertyAttribute("nanos")] public virtual System.Nullable Nanos { get; set; } /// - /// Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows - /// leap-seconds. + /// Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An + /// API may allow the value 60 if it allows leap-seconds. /// [Newtonsoft.Json.JsonPropertyAttribute("seconds")] public virtual System.Nullable Seconds { get; set; } diff --git a/Src/Generated/Google.Apis.CloudFilestore.v1beta1/Google.Apis.CloudFilestore.v1beta1.csproj b/Src/Generated/Google.Apis.CloudFilestore.v1beta1/Google.Apis.CloudFilestore.v1beta1.csproj index cc158ac8852..79e4414cd43 100644 --- a/Src/Generated/Google.Apis.CloudFilestore.v1beta1/Google.Apis.CloudFilestore.v1beta1.csproj +++ b/Src/Generated/Google.Apis.CloudFilestore.v1beta1/Google.Apis.CloudFilestore.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudFilestore.v1beta1 Client Library - 1.68.0.3535 + 1.68.0.3568 Google LLC Copyright 2024 Google LLC Google From 93c96aac4c380a0b9848a98da5f8d5f8aed3391a Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:18 -0700 Subject: [PATCH 28/61] feat: Generate Google.Apis.FirebaseAppDistribution.v1alpha version 1.68.0.3578 --- .../firebaseappdistribution.v1alpha.json | 22 ++++++++++- .../firebaseappdistribution.v1alpha.json | 5 +++ ...le.Apis.FirebaseAppDistribution.v1alpha.cs | 39 +++++++++++++++++++ ...pis.FirebaseAppDistribution.v1alpha.csproj | 2 +- 4 files changed, 66 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/firebaseappdistribution.v1alpha.json b/DiscoveryJson/firebaseappdistribution.v1alpha.json index a07b7913146..bc41ddaa414 100644 --- a/DiscoveryJson/firebaseappdistribution.v1alpha.json +++ b/DiscoveryJson/firebaseappdistribution.v1alpha.json @@ -557,6 +557,21 @@ "pattern": "^projects/[^/]+/apps/[^/]+/releases/[^/]+$", "required": true, "type": "string" + }, + "view": { + "description": "Optional. The requested view on the returned ReleaseTests. Defaults to the basic view.", + "enum": [ + "RELEASE_TEST_VIEW_UNSPECIFIED", + "RELEASE_TEST_VIEW_BASIC", + "RELEASE_TEST_VIEW_FULL" + ], + "enumDescriptions": [ + "The default / unset value. The default view depends on the RPC.", + "Include basic metadata about the release test and its status, but not the full result details. This is the default value for ListReleaseTests.", + "Include everything." + ], + "location": "query", + "type": "string" } }, "path": "v1alpha/{+parent}/tests", @@ -610,7 +625,7 @@ } } }, - "revision": "20241011", + "revision": "20241018", "rootUrl": "https://firebaseappdistribution.googleapis.com/", "schemas": { "AndroidxCrawlerOutputPoint": { @@ -1071,6 +1086,11 @@ "description": "An interaction with the device, such as a tap, text entry, wait, etc.", "id": "GoogleFirebaseAppdistroV1alphaDeviceInteraction", "properties": { + "keyCode": { + "description": "Output only. Key code for a key event action.", + "readOnly": true, + "type": "string" + }, "screenshot": { "$ref": "GoogleFirebaseAppdistroV1alphaScreenshot", "description": "Output only. The screenshot used in the context of this action. The screen may have changed before the action was actually taken.", diff --git a/EnumStorage/firebaseappdistribution.v1alpha.json b/EnumStorage/firebaseappdistribution.v1alpha.json index 4546c235d97..8cb8db10a92 100644 --- a/EnumStorage/firebaseappdistribution.v1alpha.json +++ b/EnumStorage/firebaseappdistribution.v1alpha.json @@ -12,5 +12,10 @@ "Google.Apis.FirebaseAppDistribution.v1alpha.FirebaseAppDistributionBaseServiceRequest<>.XgafvEnum": [ "1", "2" + ], + "Google.Apis.FirebaseAppDistribution.v1alpha.ProjectsResource+AppsResource+ReleasesResource+TestsResource+ListRequest.ViewEnum": [ + "RELEASE_TEST_VIEW_UNSPECIFIED", + "RELEASE_TEST_VIEW_BASIC", + "RELEASE_TEST_VIEW_FULL" ] } \ No newline at end of file diff --git a/Src/Generated/Google.Apis.FirebaseAppDistribution.v1alpha/Google.Apis.FirebaseAppDistribution.v1alpha.cs b/Src/Generated/Google.Apis.FirebaseAppDistribution.v1alpha/Google.Apis.FirebaseAppDistribution.v1alpha.cs index 26b750d40c8..0a3c7b31794 100644 --- a/Src/Generated/Google.Apis.FirebaseAppDistribution.v1alpha/Google.Apis.FirebaseAppDistribution.v1alpha.cs +++ b/Src/Generated/Google.Apis.FirebaseAppDistribution.v1alpha/Google.Apis.FirebaseAppDistribution.v1alpha.cs @@ -1196,6 +1196,33 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) : [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// + /// Optional. The requested view on the returned ReleaseTests. Defaults to the basic view. + /// + [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable View { get; set; } + + /// + /// Optional. The requested view on the returned ReleaseTests. Defaults to the basic view. + /// + public enum ViewEnum + { + /// The default / unset value. The default view depends on the RPC. + [Google.Apis.Util.StringValueAttribute("RELEASE_TEST_VIEW_UNSPECIFIED")] + RELEASETESTVIEWUNSPECIFIED = 0, + + /// + /// Include basic metadata about the release test and its status, but not the full result + /// details. This is the default value for ListReleaseTests. + /// + [Google.Apis.Util.StringValueAttribute("RELEASE_TEST_VIEW_BASIC")] + RELEASETESTVIEWBASIC = 1, + + /// Include everything. + [Google.Apis.Util.StringValueAttribute("RELEASE_TEST_VIEW_FULL")] + RELEASETESTVIEWFULL = 2, + } + /// Gets the method name. public override string MethodName => "list"; @@ -1233,6 +1260,14 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add("view", new Google.Apis.Discovery.Parameter + { + Name = "view", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } } @@ -1825,6 +1860,10 @@ public class GoogleFirebaseAppdistroV1alphaDeviceExecution : Google.Apis.Request /// An interaction with the device, such as a tap, text entry, wait, etc. public class GoogleFirebaseAppdistroV1alphaDeviceInteraction : Google.Apis.Requests.IDirectResponseSchema { + /// Output only. Key code for a key event action. + [Newtonsoft.Json.JsonPropertyAttribute("keyCode")] + public virtual string KeyCode { get; set; } + /// /// Output only. The screenshot used in the context of this action. The screen may have changed before the /// action was actually taken. diff --git a/Src/Generated/Google.Apis.FirebaseAppDistribution.v1alpha/Google.Apis.FirebaseAppDistribution.v1alpha.csproj b/Src/Generated/Google.Apis.FirebaseAppDistribution.v1alpha/Google.Apis.FirebaseAppDistribution.v1alpha.csproj index 1e3833fee70..4428678ea87 100644 --- a/Src/Generated/Google.Apis.FirebaseAppDistribution.v1alpha/Google.Apis.FirebaseAppDistribution.v1alpha.csproj +++ b/Src/Generated/Google.Apis.FirebaseAppDistribution.v1alpha/Google.Apis.FirebaseAppDistribution.v1alpha.csproj @@ -3,7 +3,7 @@ Google.Apis.FirebaseAppDistribution.v1alpha Client Library - 1.68.0.3571 + 1.68.0.3578 Google LLC Copyright 2024 Google LLC Google From 3758e3befd16f6ce23ffb80906cde377af246d42 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:22 -0700 Subject: [PATCH 29/61] feat: Generate Google.Apis.GKEHub.v1 version 1.68.0.3570 --- DiscoveryJson/gkehub.v1.json | 18 +++++++++++++++++- .../Google.Apis.GKEHub.v1.cs | 4 ++++ .../Google.Apis.GKEHub.v1.csproj | 2 +- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/gkehub.v1.json b/DiscoveryJson/gkehub.v1.json index 1586c0474b2..c5675c5a5eb 100644 --- a/DiscoveryJson/gkehub.v1.json +++ b/DiscoveryJson/gkehub.v1.json @@ -2111,7 +2111,7 @@ } } }, - "revision": "20240920", + "revision": "20241010", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceFeatureSpec": { @@ -2851,6 +2851,22 @@ "description": "State information for ConfigSync", "id": "ConfigManagementConfigSyncState", "properties": { + "clusterLevelStopSyncingState": { + "description": "Whether syncing resources to the cluster is stopped at the cluster level.", + "enum": [ + "STOP_SYNCING_STATE_UNSPECIFIED", + "NOT_STOPPED", + "PENDING", + "STOPPED" + ], + "enumDescriptions": [ + "State cannot be determined", + "Syncing resources to the cluster is not stopped at the cluster level.", + "Some reconcilers stop syncing resources to the cluster, while others are still syncing.", + "Syncing resources to the cluster is stopped at the cluster level." + ], + "type": "string" + }, "deploymentState": { "$ref": "ConfigManagementConfigSyncDeploymentState", "description": "Information about the deployment of ConfigSync, including the version of the various Pods deployed" diff --git a/Src/Generated/Google.Apis.GKEHub.v1/Google.Apis.GKEHub.v1.cs b/Src/Generated/Google.Apis.GKEHub.v1/Google.Apis.GKEHub.v1.cs index e6a7152b21d..dad29c85317 100644 --- a/Src/Generated/Google.Apis.GKEHub.v1/Google.Apis.GKEHub.v1.cs +++ b/Src/Generated/Google.Apis.GKEHub.v1/Google.Apis.GKEHub.v1.cs @@ -5727,6 +5727,10 @@ public class ConfigManagementConfigSyncError : Google.Apis.Requests.IDirectRespo /// State information for ConfigSync public class ConfigManagementConfigSyncState : Google.Apis.Requests.IDirectResponseSchema { + /// Whether syncing resources to the cluster is stopped at the cluster level. + [Newtonsoft.Json.JsonPropertyAttribute("clusterLevelStopSyncingState")] + public virtual string ClusterLevelStopSyncingState { get; set; } + /// /// Information about the deployment of ConfigSync, including the version of the various Pods deployed /// diff --git a/Src/Generated/Google.Apis.GKEHub.v1/Google.Apis.GKEHub.v1.csproj b/Src/Generated/Google.Apis.GKEHub.v1/Google.Apis.GKEHub.v1.csproj index ec7d74477df..08a980f9f6d 100644 --- a/Src/Generated/Google.Apis.GKEHub.v1/Google.Apis.GKEHub.v1.csproj +++ b/Src/Generated/Google.Apis.GKEHub.v1/Google.Apis.GKEHub.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.GKEHub.v1 Client Library - 1.68.0.3550 + 1.68.0.3570 Google LLC Copyright 2024 Google LLC Google From 867d2808a0a1eaa1fbb6866c78f73f9f868b9dde Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:25 -0700 Subject: [PATCH 30/61] feat: Generate Google.Apis.GKEHub.v1alpha version 1.68.0.3570 --- DiscoveryJson/gkehub.v1alpha.json | 18 +++++++++++++++++- .../Google.Apis.GKEHub.v1alpha.cs | 4 ++++ .../Google.Apis.GKEHub.v1alpha.csproj | 2 +- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/gkehub.v1alpha.json b/DiscoveryJson/gkehub.v1alpha.json index 51257ea0f45..fd4bc4cc95c 100644 --- a/DiscoveryJson/gkehub.v1alpha.json +++ b/DiscoveryJson/gkehub.v1alpha.json @@ -2255,7 +2255,7 @@ } } }, - "revision": "20240920", + "revision": "20241010", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AnthosObservabilityFeatureSpec": { @@ -3196,6 +3196,22 @@ "description": "State information for ConfigSync", "id": "ConfigManagementConfigSyncState", "properties": { + "clusterLevelStopSyncingState": { + "description": "Whether syncing resources to the cluster is stopped at the cluster level.", + "enum": [ + "STOP_SYNCING_STATE_UNSPECIFIED", + "NOT_STOPPED", + "PENDING", + "STOPPED" + ], + "enumDescriptions": [ + "State cannot be determined", + "Syncing resources to the cluster is not stopped at the cluster level.", + "Some reconcilers stop syncing resources to the cluster, while others are still syncing.", + "Syncing resources to the cluster is stopped at the cluster level." + ], + "type": "string" + }, "deploymentState": { "$ref": "ConfigManagementConfigSyncDeploymentState", "description": "Information about the deployment of ConfigSync, including the version of the various Pods deployed" diff --git a/Src/Generated/Google.Apis.GKEHub.v1alpha/Google.Apis.GKEHub.v1alpha.cs b/Src/Generated/Google.Apis.GKEHub.v1alpha/Google.Apis.GKEHub.v1alpha.cs index 0641bc4d0f8..419ad812e1a 100644 --- a/Src/Generated/Google.Apis.GKEHub.v1alpha/Google.Apis.GKEHub.v1alpha.cs +++ b/Src/Generated/Google.Apis.GKEHub.v1alpha/Google.Apis.GKEHub.v1alpha.cs @@ -6275,6 +6275,10 @@ public class ConfigManagementConfigSyncError : Google.Apis.Requests.IDirectRespo /// State information for ConfigSync public class ConfigManagementConfigSyncState : Google.Apis.Requests.IDirectResponseSchema { + /// Whether syncing resources to the cluster is stopped at the cluster level. + [Newtonsoft.Json.JsonPropertyAttribute("clusterLevelStopSyncingState")] + public virtual string ClusterLevelStopSyncingState { get; set; } + /// /// Information about the deployment of ConfigSync, including the version of the various Pods deployed /// diff --git a/Src/Generated/Google.Apis.GKEHub.v1alpha/Google.Apis.GKEHub.v1alpha.csproj b/Src/Generated/Google.Apis.GKEHub.v1alpha/Google.Apis.GKEHub.v1alpha.csproj index 0786696db8d..51b580dcb82 100644 --- a/Src/Generated/Google.Apis.GKEHub.v1alpha/Google.Apis.GKEHub.v1alpha.csproj +++ b/Src/Generated/Google.Apis.GKEHub.v1alpha/Google.Apis.GKEHub.v1alpha.csproj @@ -3,7 +3,7 @@ Google.Apis.GKEHub.v1alpha Client Library - 1.68.0.3550 + 1.68.0.3570 Google LLC Copyright 2024 Google LLC Google From 02eb2d8a99505e70da8e8f81a5284f6169f1556f Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:28 -0700 Subject: [PATCH 31/61] feat: Generate Google.Apis.GKEHub.v1beta version 1.68.0.3570 --- DiscoveryJson/gkehub.v1beta.json | 18 +++++++++++++++++- .../Google.Apis.GKEHub.v1beta.cs | 4 ++++ .../Google.Apis.GKEHub.v1beta.csproj | 2 +- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/gkehub.v1beta.json b/DiscoveryJson/gkehub.v1beta.json index fa18eeae39b..e31d9e83adb 100644 --- a/DiscoveryJson/gkehub.v1beta.json +++ b/DiscoveryJson/gkehub.v1beta.json @@ -2111,7 +2111,7 @@ } } }, - "revision": "20240920", + "revision": "20241010", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AnthosObservabilityFeatureSpec": { @@ -2936,6 +2936,22 @@ "description": "State information for ConfigSync", "id": "ConfigManagementConfigSyncState", "properties": { + "clusterLevelStopSyncingState": { + "description": "Whether syncing resources to the cluster is stopped at the cluster level.", + "enum": [ + "STOP_SYNCING_STATE_UNSPECIFIED", + "NOT_STOPPED", + "PENDING", + "STOPPED" + ], + "enumDescriptions": [ + "State cannot be determined", + "Syncing resources to the cluster is not stopped at the cluster level.", + "Some reconcilers stop syncing resources to the cluster, while others are still syncing.", + "Syncing resources to the cluster is stopped at the cluster level." + ], + "type": "string" + }, "deploymentState": { "$ref": "ConfigManagementConfigSyncDeploymentState", "description": "Information about the deployment of ConfigSync, including the version of the various Pods deployed" diff --git a/Src/Generated/Google.Apis.GKEHub.v1beta/Google.Apis.GKEHub.v1beta.cs b/Src/Generated/Google.Apis.GKEHub.v1beta/Google.Apis.GKEHub.v1beta.cs index afb02c33757..a4a77edc919 100644 --- a/Src/Generated/Google.Apis.GKEHub.v1beta/Google.Apis.GKEHub.v1beta.cs +++ b/Src/Generated/Google.Apis.GKEHub.v1beta/Google.Apis.GKEHub.v1beta.cs @@ -5801,6 +5801,10 @@ public class ConfigManagementConfigSyncError : Google.Apis.Requests.IDirectRespo /// State information for ConfigSync public class ConfigManagementConfigSyncState : Google.Apis.Requests.IDirectResponseSchema { + /// Whether syncing resources to the cluster is stopped at the cluster level. + [Newtonsoft.Json.JsonPropertyAttribute("clusterLevelStopSyncingState")] + public virtual string ClusterLevelStopSyncingState { get; set; } + /// /// Information about the deployment of ConfigSync, including the version of the various Pods deployed /// diff --git a/Src/Generated/Google.Apis.GKEHub.v1beta/Google.Apis.GKEHub.v1beta.csproj b/Src/Generated/Google.Apis.GKEHub.v1beta/Google.Apis.GKEHub.v1beta.csproj index 234aff78c03..bc654bd03d1 100644 --- a/Src/Generated/Google.Apis.GKEHub.v1beta/Google.Apis.GKEHub.v1beta.csproj +++ b/Src/Generated/Google.Apis.GKEHub.v1beta/Google.Apis.GKEHub.v1beta.csproj @@ -3,7 +3,7 @@ Google.Apis.GKEHub.v1beta Client Library - 1.68.0.3550 + 1.68.0.3570 Google LLC Copyright 2024 Google LLC Google From ea679ee6c521ea6d1174f51b61afea9972b6d25d Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:31 -0700 Subject: [PATCH 32/61] feat: Generate Google.Apis.GKEHub.v2 version 1.68.0.3570 --- DiscoveryJson/gkehub.v2.json | 18 +++++++++++++++++- .../Google.Apis.GKEHub.v2.cs | 4 ++++ .../Google.Apis.GKEHub.v2.csproj | 2 +- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/gkehub.v2.json b/DiscoveryJson/gkehub.v2.json index f2f6ad05e86..351dfe36782 100644 --- a/DiscoveryJson/gkehub.v2.json +++ b/DiscoveryJson/gkehub.v2.json @@ -471,7 +471,7 @@ } } }, - "revision": "20241006", + "revision": "20241010", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceState": { @@ -916,6 +916,22 @@ "description": "State information for ConfigSync.", "id": "ConfigManagementConfigSyncState", "properties": { + "clusterLevelStopSyncingState": { + "description": "Whether syncing resources to the cluster is stopped at the cluster level.", + "enum": [ + "STOP_SYNCING_STATE_UNSPECIFIED", + "NOT_STOPPED", + "PENDING", + "STOPPED" + ], + "enumDescriptions": [ + "State cannot be determined", + "Syncing resources to the cluster is not stopped at the cluster level.", + "Some reconcilers stop syncing resources to the cluster, while others are still syncing.", + "Syncing resources to the cluster is stopped at the cluster level." + ], + "type": "string" + }, "deploymentState": { "$ref": "ConfigManagementConfigSyncDeploymentState", "description": "Information about the deployment of ConfigSync, including the version. of the various Pods deployed" diff --git a/Src/Generated/Google.Apis.GKEHub.v2/Google.Apis.GKEHub.v2.cs b/Src/Generated/Google.Apis.GKEHub.v2/Google.Apis.GKEHub.v2.cs index fa0dee90a37..cfa4f29c17d 100644 --- a/Src/Generated/Google.Apis.GKEHub.v2/Google.Apis.GKEHub.v2.cs +++ b/Src/Generated/Google.Apis.GKEHub.v2/Google.Apis.GKEHub.v2.cs @@ -1456,6 +1456,10 @@ public class ConfigManagementConfigSyncError : Google.Apis.Requests.IDirectRespo /// State information for ConfigSync. public class ConfigManagementConfigSyncState : Google.Apis.Requests.IDirectResponseSchema { + /// Whether syncing resources to the cluster is stopped at the cluster level. + [Newtonsoft.Json.JsonPropertyAttribute("clusterLevelStopSyncingState")] + public virtual string ClusterLevelStopSyncingState { get; set; } + /// /// Information about the deployment of ConfigSync, including the version. of the various Pods deployed /// diff --git a/Src/Generated/Google.Apis.GKEHub.v2/Google.Apis.GKEHub.v2.csproj b/Src/Generated/Google.Apis.GKEHub.v2/Google.Apis.GKEHub.v2.csproj index c97946a0ac3..70a00365d89 100644 --- a/Src/Generated/Google.Apis.GKEHub.v2/Google.Apis.GKEHub.v2.csproj +++ b/Src/Generated/Google.Apis.GKEHub.v2/Google.Apis.GKEHub.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.GKEHub.v2 Client Library - 1.68.0.3566 + 1.68.0.3570 Google LLC Copyright 2024 Google LLC Google From e690c10074a94b66df4b9a75182b4244fe6eeb6f Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:34 -0700 Subject: [PATCH 33/61] feat: Generate Google.Apis.GKEHub.v2alpha version 1.68.0.3570 --- DiscoveryJson/gkehub.v2alpha.json | 18 +++++++++++++++++- .../Google.Apis.GKEHub.v2alpha.cs | 4 ++++ .../Google.Apis.GKEHub.v2alpha.csproj | 2 +- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/gkehub.v2alpha.json b/DiscoveryJson/gkehub.v2alpha.json index 79fd96e47b9..aff242ed286 100644 --- a/DiscoveryJson/gkehub.v2alpha.json +++ b/DiscoveryJson/gkehub.v2alpha.json @@ -471,7 +471,7 @@ } } }, - "revision": "20241006", + "revision": "20241010", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceState": { @@ -916,6 +916,22 @@ "description": "State information for ConfigSync.", "id": "ConfigManagementConfigSyncState", "properties": { + "clusterLevelStopSyncingState": { + "description": "Whether syncing resources to the cluster is stopped at the cluster level.", + "enum": [ + "STOP_SYNCING_STATE_UNSPECIFIED", + "NOT_STOPPED", + "PENDING", + "STOPPED" + ], + "enumDescriptions": [ + "State cannot be determined", + "Syncing resources to the cluster is not stopped at the cluster level.", + "Some reconcilers stop syncing resources to the cluster, while others are still syncing.", + "Syncing resources to the cluster is stopped at the cluster level." + ], + "type": "string" + }, "deploymentState": { "$ref": "ConfigManagementConfigSyncDeploymentState", "description": "Information about the deployment of ConfigSync, including the version. of the various Pods deployed" diff --git a/Src/Generated/Google.Apis.GKEHub.v2alpha/Google.Apis.GKEHub.v2alpha.cs b/Src/Generated/Google.Apis.GKEHub.v2alpha/Google.Apis.GKEHub.v2alpha.cs index 351595e6d07..5cad4ac4b8c 100644 --- a/Src/Generated/Google.Apis.GKEHub.v2alpha/Google.Apis.GKEHub.v2alpha.cs +++ b/Src/Generated/Google.Apis.GKEHub.v2alpha/Google.Apis.GKEHub.v2alpha.cs @@ -1456,6 +1456,10 @@ public class ConfigManagementConfigSyncError : Google.Apis.Requests.IDirectRespo /// State information for ConfigSync. public class ConfigManagementConfigSyncState : Google.Apis.Requests.IDirectResponseSchema { + /// Whether syncing resources to the cluster is stopped at the cluster level. + [Newtonsoft.Json.JsonPropertyAttribute("clusterLevelStopSyncingState")] + public virtual string ClusterLevelStopSyncingState { get; set; } + /// /// Information about the deployment of ConfigSync, including the version. of the various Pods deployed /// diff --git a/Src/Generated/Google.Apis.GKEHub.v2alpha/Google.Apis.GKEHub.v2alpha.csproj b/Src/Generated/Google.Apis.GKEHub.v2alpha/Google.Apis.GKEHub.v2alpha.csproj index 06bdfeaffae..f123cf54144 100644 --- a/Src/Generated/Google.Apis.GKEHub.v2alpha/Google.Apis.GKEHub.v2alpha.csproj +++ b/Src/Generated/Google.Apis.GKEHub.v2alpha/Google.Apis.GKEHub.v2alpha.csproj @@ -3,7 +3,7 @@ Google.Apis.GKEHub.v2alpha Client Library - 1.68.0.3566 + 1.68.0.3570 Google LLC Copyright 2024 Google LLC Google From 3b8f2c539fa744e699bfddb25bd79e1f287397dc Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:37 -0700 Subject: [PATCH 34/61] feat: Generate Google.Apis.GKEHub.v2beta version 1.68.0.3570 --- DiscoveryJson/gkehub.v2beta.json | 18 +++++++++++++++++- .../Google.Apis.GKEHub.v2beta.cs | 4 ++++ .../Google.Apis.GKEHub.v2beta.csproj | 2 +- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/gkehub.v2beta.json b/DiscoveryJson/gkehub.v2beta.json index dde619423d5..5305b6d487e 100644 --- a/DiscoveryJson/gkehub.v2beta.json +++ b/DiscoveryJson/gkehub.v2beta.json @@ -471,7 +471,7 @@ } } }, - "revision": "20241006", + "revision": "20241010", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceState": { @@ -916,6 +916,22 @@ "description": "State information for ConfigSync.", "id": "ConfigManagementConfigSyncState", "properties": { + "clusterLevelStopSyncingState": { + "description": "Whether syncing resources to the cluster is stopped at the cluster level.", + "enum": [ + "STOP_SYNCING_STATE_UNSPECIFIED", + "NOT_STOPPED", + "PENDING", + "STOPPED" + ], + "enumDescriptions": [ + "State cannot be determined", + "Syncing resources to the cluster is not stopped at the cluster level.", + "Some reconcilers stop syncing resources to the cluster, while others are still syncing.", + "Syncing resources to the cluster is stopped at the cluster level." + ], + "type": "string" + }, "deploymentState": { "$ref": "ConfigManagementConfigSyncDeploymentState", "description": "Information about the deployment of ConfigSync, including the version. of the various Pods deployed" diff --git a/Src/Generated/Google.Apis.GKEHub.v2beta/Google.Apis.GKEHub.v2beta.cs b/Src/Generated/Google.Apis.GKEHub.v2beta/Google.Apis.GKEHub.v2beta.cs index e4286ed0d50..a818544e76f 100644 --- a/Src/Generated/Google.Apis.GKEHub.v2beta/Google.Apis.GKEHub.v2beta.cs +++ b/Src/Generated/Google.Apis.GKEHub.v2beta/Google.Apis.GKEHub.v2beta.cs @@ -1456,6 +1456,10 @@ public class ConfigManagementConfigSyncError : Google.Apis.Requests.IDirectRespo /// State information for ConfigSync. public class ConfigManagementConfigSyncState : Google.Apis.Requests.IDirectResponseSchema { + /// Whether syncing resources to the cluster is stopped at the cluster level. + [Newtonsoft.Json.JsonPropertyAttribute("clusterLevelStopSyncingState")] + public virtual string ClusterLevelStopSyncingState { get; set; } + /// /// Information about the deployment of ConfigSync, including the version. of the various Pods deployed /// diff --git a/Src/Generated/Google.Apis.GKEHub.v2beta/Google.Apis.GKEHub.v2beta.csproj b/Src/Generated/Google.Apis.GKEHub.v2beta/Google.Apis.GKEHub.v2beta.csproj index a580640fed7..a284afad670 100644 --- a/Src/Generated/Google.Apis.GKEHub.v2beta/Google.Apis.GKEHub.v2beta.csproj +++ b/Src/Generated/Google.Apis.GKEHub.v2beta/Google.Apis.GKEHub.v2beta.csproj @@ -3,7 +3,7 @@ Google.Apis.GKEHub.v2beta Client Library - 1.68.0.3566 + 1.68.0.3570 Google LLC Copyright 2024 Google LLC Google From 162ec53375f924239c02fd5718f8c4be09e6084c Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:40 -0700 Subject: [PATCH 35/61] feat: Generate Google.Apis.CloudHealthcare.v1 version 1.68.0.3569 --- DiscoveryJson/healthcare.v1.json | 26 +++--- .../Google.Apis.CloudHealthcare.v1.cs | 81 ++++++++++--------- .../Google.Apis.CloudHealthcare.v1.csproj | 2 +- 3 files changed, 57 insertions(+), 52 deletions(-) diff --git a/DiscoveryJson/healthcare.v1.json b/DiscoveryJson/healthcare.v1.json index 61c81fad1ee..f3fc349bb01 100644 --- a/DiscoveryJson/healthcare.v1.json +++ b/DiscoveryJson/healthcare.v1.json @@ -4783,7 +4783,7 @@ } } }, - "revision": "20240910", + "revision": "20241009", "rootUrl": "https://healthcare.googleapis.com/", "schemas": { "ActivateConsentRequest": { @@ -5413,7 +5413,7 @@ "description": "The configuration to use when de-identifying resources that are added to this store." }, "store": { - "description": "The full resource name of a Cloud Healthcare FHIR store, for example, `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.", + "description": "Optional. The full resource name of a Cloud Healthcare FHIR store, for example, `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.", "type": "string" } }, @@ -5982,7 +5982,7 @@ "id": "FhirStore", "properties": { "complexDataTypeReferenceParsing": { - "description": "Enable parsing of references within complex FHIR data types such as Extensions. If this value is set to ENABLED, then features like referential integrity and Bundle reference rewriting apply to all references. If this flag has not been specified the behavior of the FHIR store will not change, references in complex data types will not be parsed. New stores will have this value set to ENABLED after a notification period. Warning: turning on this flag causes processing existing resources to fail if they contain references to non-existent resources.", + "description": "Optional. Enable parsing of references within complex FHIR data types such as Extensions. If this value is set to ENABLED, then features like referential integrity and Bundle reference rewriting apply to all references. If this flag has not been specified the behavior of the FHIR store will not change, references in complex data types will not be parsed. New stores will have this value set to ENABLED after a notification period. Warning: turning on this flag causes processing existing resources to fail if they contain references to non-existent resources.", "enum": [ "COMPLEX_DATA_TYPE_REFERENCE_PARSING_UNSPECIFIED", "DISABLED", @@ -6043,7 +6043,7 @@ }, "validationConfig": { "$ref": "ValidationConfig", - "description": "Configuration for how to validate incoming FHIR resources against configured profiles." + "description": "Optional. Configuration for how to validate incoming FHIR resources against configured profiles." }, "version": { "description": "Required. Immutable. The FHIR specification version that this FHIR store supports natively. This field is immutable after store creation. Requests are rejected if they contain FHIR resources of a different version. Version is required for every FHIR store.", @@ -6262,15 +6262,15 @@ "id": "GoogleCloudHealthcareV1DicomBigQueryDestination", "properties": { "force": { - "description": "Use `write_disposition` instead. If `write_disposition` is specified, this parameter is ignored. force=false is equivalent to write_disposition=WRITE_EMPTY and force=true is equivalent to write_disposition=WRITE_TRUNCATE.", + "description": "Optional. Use `write_disposition` instead. If `write_disposition` is specified, this parameter is ignored. force=false is equivalent to write_disposition=WRITE_EMPTY and force=true is equivalent to write_disposition=WRITE_TRUNCATE.", "type": "boolean" }, "tableUri": { - "description": "BigQuery URI to a table, up to 2000 characters long, in the format `bq://projectId.bqDatasetId.tableId`", + "description": "Optional. BigQuery URI to a table, up to 2000 characters long, in the format `bq://projectId.bqDatasetId.tableId`", "type": "string" }, "writeDisposition": { - "description": "Determines whether the existing table in the destination is to be overwritten or appended to. If a write_disposition is specified, the `force` parameter is ignored.", + "description": "Optional. Determines whether the existing table in the destination is to be overwritten or appended to. If a write_disposition is specified, the `force` parameter is ignored.", "enum": [ "WRITE_DISPOSITION_UNSPECIFIED", "WRITE_EMPTY", @@ -7889,7 +7889,7 @@ }, "deidentifiedStoreDestination": { "$ref": "DeidentifiedStoreDestination", - "description": "The destination FHIR store for de-identified resources. After this field is added, all subsequent creates/updates/patches to the source store will be de-identified using the provided configuration and applied to the destination store. Importing resources to the source store will not trigger the streaming. If the source store already contains resources when this option is enabled, those resources will not be copied to the destination store unless they are subsequently updated. This may result in invalid references in the destination store. Before adding this config, you must grant the healthcare.fhirResources.update permission on the destination store to your project's **Cloud Healthcare Service Agent** [service account](https://cloud.google.com/healthcare/docs/how-tos/permissions-healthcare-api-gcp-products#the_cloud_healthcare_service_agent). The destination store must set enable_update_create to true. The destination store must have disable_referential_integrity set to true. If a resource cannot be de-identified, errors will be logged to Cloud Logging (see [Viewing error logs in Cloud Logging](https://cloud.google.com/healthcare/docs/how-tos/logging))." + "description": "The destination FHIR store for de-identified resources. After this field is added, all subsequent creates/updates/patches to the source store will be de-identified using the provided configuration and applied to the destination store. Resources deleted from the source store will be deleted from the destination store. Importing resources to the source store will not trigger the streaming. If the source store already contains resources when this option is enabled, those resources will not be copied to the destination store unless they are subsequently updated. This may result in invalid references in the destination store. Before adding this config, you must grant the healthcare.fhirResources.update permission on the destination store to your project's **Cloud Healthcare Service Agent** [service account](https://cloud.google.com/healthcare/docs/how-tos/permissions-healthcare-api-gcp-products#the_cloud_healthcare_service_agent). The destination store must set enable_update_create to true. The destination store must have disable_referential_integrity set to true. If a resource cannot be de-identified, errors will be logged to Cloud Logging (see [Viewing error logs in Cloud Logging](https://cloud.google.com/healthcare/docs/how-tos/logging))." }, "resourceTypes": { "description": "Optional. Supply a FHIR resource type (such as \"Patient\" or \"Observation\"). See https://www.hl7.org/fhir/valueset-resource-types.html for a list of all FHIR resource types. The server treats an empty list as an intent to stream all the supported resource types in this FHIR store.", @@ -8135,23 +8135,23 @@ "id": "ValidationConfig", "properties": { "disableFhirpathValidation": { - "description": "Whether to disable FHIRPath validation for incoming resources. The default value is false. Set this to true to disable checking incoming resources for conformance against FHIRPath requirement defined in the FHIR specification. This property only affects resource types that do not have profiles configured for them, any rules in enabled implementation guides will still be enforced.", + "description": "Optional. Whether to disable FHIRPath validation for incoming resources. The default value is false. Set this to true to disable checking incoming resources for conformance against FHIRPath requirement defined in the FHIR specification. This property only affects resource types that do not have profiles configured for them, any rules in enabled implementation guides will still be enforced.", "type": "boolean" }, "disableProfileValidation": { - "description": "Whether to disable profile validation for this FHIR store. The default value is false. Set this to true to disable checking incoming resources for conformance against structure definitions in this FHIR store.", + "description": "Optional. Whether to disable profile validation for this FHIR store. The default value is false. Set this to true to disable checking incoming resources for conformance against structure definitions in this FHIR store.", "type": "boolean" }, "disableReferenceTypeValidation": { - "description": "Whether to disable reference type validation for incoming resources. The default value is false. Set this to true to disable checking incoming resources for conformance against reference type requirement defined in the FHIR specification. This property only affects resource types that do not have profiles configured for them, any rules in enabled implementation guides will still be enforced.", + "description": "Optional. Whether to disable reference type validation for incoming resources. The default value is false. Set this to true to disable checking incoming resources for conformance against reference type requirement defined in the FHIR specification. This property only affects resource types that do not have profiles configured for them, any rules in enabled implementation guides will still be enforced.", "type": "boolean" }, "disableRequiredFieldValidation": { - "description": "Whether to disable required fields validation for incoming resources. The default value is false. Set this to true to disable checking incoming resources for conformance against required fields requirement defined in the FHIR specification. This property only affects resource types that do not have profiles configured for them, any rules in enabled implementation guides will still be enforced.", + "description": "Optional. Whether to disable required fields validation for incoming resources. The default value is false. Set this to true to disable checking incoming resources for conformance against required fields requirement defined in the FHIR specification. This property only affects resource types that do not have profiles configured for them, any rules in enabled implementation guides will still be enforced.", "type": "boolean" }, "enabledImplementationGuides": { - "description": "A list of implementation guide URLs in this FHIR store that are used to configure the profiles to use for validation. For example, to use the US Core profiles for validation, set `enabled_implementation_guides` to `[\"http://hl7.org/fhir/us/core/ImplementationGuide/ig\"]`. If `enabled_implementation_guides` is empty or omitted, then incoming resources are only required to conform to the base FHIR profiles. Otherwise, a resource must conform to at least one profile listed in the `global` property of one of the enabled ImplementationGuides. The Cloud Healthcare API does not currently enforce all of the rules in a StructureDefinition. The following rules are supported: - min/max - minValue/maxValue - maxLength - type - fixed[x] - pattern[x] on simple types - slicing, when using \"value\" as the discriminator type When a URL cannot be resolved (for example, in a type assertion), the server does not return an error.", + "description": "Optional. A list of implementation guide URLs in this FHIR store that are used to configure the profiles to use for validation. For example, to use the US Core profiles for validation, set `enabled_implementation_guides` to `[\"http://hl7.org/fhir/us/core/ImplementationGuide/ig\"]`. If `enabled_implementation_guides` is empty or omitted, then incoming resources are only required to conform to the base FHIR profiles. Otherwise, a resource must conform to at least one profile listed in the `global` property of one of the enabled ImplementationGuides. The Cloud Healthcare API does not currently enforce all of the rules in a StructureDefinition. The following rules are supported: - min/max - minValue/maxValue - maxLength - type - fixed[x] - pattern[x] on simple types - slicing, when using \"value\" as the discriminator type When a URL cannot be resolved (for example, in a type assertion), the server does not return an error.", "items": { "type": "string" }, diff --git a/Src/Generated/Google.Apis.CloudHealthcare.v1/Google.Apis.CloudHealthcare.v1.cs b/Src/Generated/Google.Apis.CloudHealthcare.v1/Google.Apis.CloudHealthcare.v1.cs index 34eef72a0de..28ebd1968ca 100644 --- a/Src/Generated/Google.Apis.CloudHealthcare.v1/Google.Apis.CloudHealthcare.v1.cs +++ b/Src/Generated/Google.Apis.CloudHealthcare.v1/Google.Apis.CloudHealthcare.v1.cs @@ -12896,7 +12896,7 @@ public class DeidentifiedStoreDestination : Google.Apis.Requests.IDirectResponse public virtual DeidentifyConfig Config { get; set; } /// - /// The full resource name of a Cloud Healthcare FHIR store, for example, + /// Optional. The full resource name of a Cloud Healthcare FHIR store, for example, /// `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`. /// [Newtonsoft.Json.JsonPropertyAttribute("store")] @@ -13743,12 +13743,12 @@ public class FhirNotificationConfig : Google.Apis.Requests.IDirectResponseSchema public class FhirStore : Google.Apis.Requests.IDirectResponseSchema { /// - /// Enable parsing of references within complex FHIR data types such as Extensions. If this value is set to - /// ENABLED, then features like referential integrity and Bundle reference rewriting apply to all references. If - /// this flag has not been specified the behavior of the FHIR store will not change, references in complex data - /// types will not be parsed. New stores will have this value set to ENABLED after a notification period. - /// Warning: turning on this flag causes processing existing resources to fail if they contain references to - /// non-existent resources. + /// Optional. Enable parsing of references within complex FHIR data types such as Extensions. If this value is + /// set to ENABLED, then features like referential integrity and Bundle reference rewriting apply to all + /// references. If this flag has not been specified the behavior of the FHIR store will not change, references + /// in complex data types will not be parsed. New stores will have this value set to ENABLED after a + /// notification period. Warning: turning on this flag causes processing existing resources to fail if they + /// contain references to non-existent resources. /// [Newtonsoft.Json.JsonPropertyAttribute("complexDataTypeReferenceParsing")] public virtual string ComplexDataTypeReferenceParsing { get; set; } @@ -13839,7 +13839,9 @@ public class FhirStore : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("streamConfigs")] public virtual System.Collections.Generic.IList StreamConfigs { get; set; } - /// Configuration for how to validate incoming FHIR resources against configured profiles. + /// + /// Optional. Configuration for how to validate incoming FHIR resources against configured profiles. + /// [Newtonsoft.Json.JsonPropertyAttribute("validationConfig")] public virtual ValidationConfig ValidationConfig { get; set; } @@ -14052,21 +14054,22 @@ public class GoogleCloudHealthcareV1DeidentifyDeidentifyFhirStoreSummary : Googl public class GoogleCloudHealthcareV1DicomBigQueryDestination : Google.Apis.Requests.IDirectResponseSchema { /// - /// Use `write_disposition` instead. If `write_disposition` is specified, this parameter is ignored. force=false - /// is equivalent to write_disposition=WRITE_EMPTY and force=true is equivalent to + /// Optional. Use `write_disposition` instead. If `write_disposition` is specified, this parameter is ignored. + /// force=false is equivalent to write_disposition=WRITE_EMPTY and force=true is equivalent to /// write_disposition=WRITE_TRUNCATE. /// [Newtonsoft.Json.JsonPropertyAttribute("force")] public virtual System.Nullable Force { get; set; } /// - /// BigQuery URI to a table, up to 2000 characters long, in the format `bq://projectId.bqDatasetId.tableId` + /// Optional. BigQuery URI to a table, up to 2000 characters long, in the format + /// `bq://projectId.bqDatasetId.tableId` /// [Newtonsoft.Json.JsonPropertyAttribute("tableUri")] public virtual string TableUri { get; set; } /// - /// Determines whether the existing table in the destination is to be overwritten or appended to. If a + /// Optional. Determines whether the existing table in the destination is to be overwritten or appended to. If a /// write_disposition is specified, the `force` parameter is ignored. /// [Newtonsoft.Json.JsonPropertyAttribute("writeDisposition")] @@ -16167,9 +16170,10 @@ public class StreamConfig : Google.Apis.Requests.IDirectResponseSchema /// /// The destination FHIR store for de-identified resources. After this field is added, all subsequent /// creates/updates/patches to the source store will be de-identified using the provided configuration and - /// applied to the destination store. Importing resources to the source store will not trigger the streaming. If - /// the source store already contains resources when this option is enabled, those resources will not be copied - /// to the destination store unless they are subsequently updated. This may result in invalid references in the + /// applied to the destination store. Resources deleted from the source store will be deleted from the + /// destination store. Importing resources to the source store will not trigger the streaming. If the source + /// store already contains resources when this option is enabled, those resources will not be copied to the + /// destination store unless they are subsequently updated. This may result in invalid references in the /// destination store. Before adding this config, you must grant the healthcare.fhirResources.update permission /// on the destination store to your project's **Cloud Healthcare Service Agent** [service /// account](https://cloud.google.com/healthcare/docs/how-tos/permissions-healthcare-api-gcp-products#the_cloud_healthcare_service_agent). @@ -16426,49 +16430,50 @@ public virtual System.DateTimeOffset? ArchiveTimeDateTimeOffset public class ValidationConfig : Google.Apis.Requests.IDirectResponseSchema { /// - /// Whether to disable FHIRPath validation for incoming resources. The default value is false. Set this to true - /// to disable checking incoming resources for conformance against FHIRPath requirement defined in the FHIR - /// specification. This property only affects resource types that do not have profiles configured for them, any - /// rules in enabled implementation guides will still be enforced. + /// Optional. Whether to disable FHIRPath validation for incoming resources. The default value is false. Set + /// this to true to disable checking incoming resources for conformance against FHIRPath requirement defined in + /// the FHIR specification. This property only affects resource types that do not have profiles configured for + /// them, any rules in enabled implementation guides will still be enforced. /// [Newtonsoft.Json.JsonPropertyAttribute("disableFhirpathValidation")] public virtual System.Nullable DisableFhirpathValidation { get; set; } /// - /// Whether to disable profile validation for this FHIR store. The default value is false. Set this to true to - /// disable checking incoming resources for conformance against structure definitions in this FHIR store. + /// Optional. Whether to disable profile validation for this FHIR store. The default value is false. Set this to + /// true to disable checking incoming resources for conformance against structure definitions in this FHIR + /// store. /// [Newtonsoft.Json.JsonPropertyAttribute("disableProfileValidation")] public virtual System.Nullable DisableProfileValidation { get; set; } /// - /// Whether to disable reference type validation for incoming resources. The default value is false. Set this to - /// true to disable checking incoming resources for conformance against reference type requirement defined in - /// the FHIR specification. This property only affects resource types that do not have profiles configured for - /// them, any rules in enabled implementation guides will still be enforced. + /// Optional. Whether to disable reference type validation for incoming resources. The default value is false. + /// Set this to true to disable checking incoming resources for conformance against reference type requirement + /// defined in the FHIR specification. This property only affects resource types that do not have profiles + /// configured for them, any rules in enabled implementation guides will still be enforced. /// [Newtonsoft.Json.JsonPropertyAttribute("disableReferenceTypeValidation")] public virtual System.Nullable DisableReferenceTypeValidation { get; set; } /// - /// Whether to disable required fields validation for incoming resources. The default value is false. Set this - /// to true to disable checking incoming resources for conformance against required fields requirement defined - /// in the FHIR specification. This property only affects resource types that do not have profiles configured - /// for them, any rules in enabled implementation guides will still be enforced. + /// Optional. Whether to disable required fields validation for incoming resources. The default value is false. + /// Set this to true to disable checking incoming resources for conformance against required fields requirement + /// defined in the FHIR specification. This property only affects resource types that do not have profiles + /// configured for them, any rules in enabled implementation guides will still be enforced. /// [Newtonsoft.Json.JsonPropertyAttribute("disableRequiredFieldValidation")] public virtual System.Nullable DisableRequiredFieldValidation { get; set; } /// - /// A list of implementation guide URLs in this FHIR store that are used to configure the profiles to use for - /// validation. For example, to use the US Core profiles for validation, set `enabled_implementation_guides` to - /// `["http://hl7.org/fhir/us/core/ImplementationGuide/ig"]`. If `enabled_implementation_guides` is empty or - /// omitted, then incoming resources are only required to conform to the base FHIR profiles. Otherwise, a - /// resource must conform to at least one profile listed in the `global` property of one of the enabled - /// ImplementationGuides. The Cloud Healthcare API does not currently enforce all of the rules in a - /// StructureDefinition. The following rules are supported: - min/max - minValue/maxValue - maxLength - type - - /// fixed[x] - pattern[x] on simple types - slicing, when using "value" as the discriminator type When a URL - /// cannot be resolved (for example, in a type assertion), the server does not return an error. + /// Optional. A list of implementation guide URLs in this FHIR store that are used to configure the profiles to + /// use for validation. For example, to use the US Core profiles for validation, set + /// `enabled_implementation_guides` to `["http://hl7.org/fhir/us/core/ImplementationGuide/ig"]`. If + /// `enabled_implementation_guides` is empty or omitted, then incoming resources are only required to conform to + /// the base FHIR profiles. Otherwise, a resource must conform to at least one profile listed in the `global` + /// property of one of the enabled ImplementationGuides. The Cloud Healthcare API does not currently enforce all + /// of the rules in a StructureDefinition. The following rules are supported: - min/max - minValue/maxValue - + /// maxLength - type - fixed[x] - pattern[x] on simple types - slicing, when using "value" as the discriminator + /// type When a URL cannot be resolved (for example, in a type assertion), the server does not return an error. /// [Newtonsoft.Json.JsonPropertyAttribute("enabledImplementationGuides")] public virtual System.Collections.Generic.IList EnabledImplementationGuides { get; set; } diff --git a/Src/Generated/Google.Apis.CloudHealthcare.v1/Google.Apis.CloudHealthcare.v1.csproj b/Src/Generated/Google.Apis.CloudHealthcare.v1/Google.Apis.CloudHealthcare.v1.csproj index 654c296a59d..f63aca76f24 100644 --- a/Src/Generated/Google.Apis.CloudHealthcare.v1/Google.Apis.CloudHealthcare.v1.csproj +++ b/Src/Generated/Google.Apis.CloudHealthcare.v1/Google.Apis.CloudHealthcare.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudHealthcare.v1 Client Library - 1.68.0.3540 + 1.68.0.3569 Google LLC Copyright 2024 Google LLC Google From 8237dffaec04ac21ed14b0887c5033acc5061945 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:43 -0700 Subject: [PATCH 36/61] feat: Generate Google.Apis.CloudHealthcare.v1beta1 version 1.68.0.3569 --- DiscoveryJson/healthcare.v1beta1.json | 4 ++-- .../Google.Apis.CloudHealthcare.v1beta1.cs | 7 ++++--- .../Google.Apis.CloudHealthcare.v1beta1.csproj | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/DiscoveryJson/healthcare.v1beta1.json b/DiscoveryJson/healthcare.v1beta1.json index 92348cdbc64..c0e4fe36cc1 100644 --- a/DiscoveryJson/healthcare.v1beta1.json +++ b/DiscoveryJson/healthcare.v1beta1.json @@ -5858,7 +5858,7 @@ } } }, - "revision": "20240822", + "revision": "20241009", "rootUrl": "https://healthcare.googleapis.com/", "schemas": { "AccessDeterminationLogConfig": { @@ -10246,7 +10246,7 @@ }, "deidentifiedStoreDestination": { "$ref": "DeidentifiedStoreDestination", - "description": "The destination FHIR store for de-identified resources. After this field is added, all subsequent creates/updates/patches to the source store will be de-identified using the provided configuration and applied to the destination store. Importing resources to the source store will not trigger the streaming. If the source store already contains resources when this option is enabled, those resources will not be copied to the destination store unless they are subsequently updated. This may result in invalid references in the destination store. Before adding this config, you must grant the healthcare.fhirResources.update permission on the destination store to your project's **Cloud Healthcare Service Agent** [service account](https://cloud.google.com/healthcare/docs/how-tos/permissions-healthcare-api-gcp-products#the_cloud_healthcare_service_agent). The destination store must set enable_update_create to true. The destination store must have disable_referential_integrity set to true. If a resource cannot be de-identified, errors will be logged to Cloud Logging (see [Viewing error logs in Cloud Logging](https://cloud.google.com/healthcare/docs/how-tos/logging))." + "description": "The destination FHIR store for de-identified resources. After this field is added, all subsequent creates/updates/patches to the source store will be de-identified using the provided configuration and applied to the destination store. Resources deleted from the source store will be deleted from the destination store. Importing resources to the source store will not trigger the streaming. If the source store already contains resources when this option is enabled, those resources will not be copied to the destination store unless they are subsequently updated. This may result in invalid references in the destination store. Before adding this config, you must grant the healthcare.fhirResources.update permission on the destination store to your project's **Cloud Healthcare Service Agent** [service account](https://cloud.google.com/healthcare/docs/how-tos/permissions-healthcare-api-gcp-products#the_cloud_healthcare_service_agent). The destination store must set enable_update_create to true. The destination store must have disable_referential_integrity set to true. If a resource cannot be de-identified, errors will be logged to Cloud Logging (see [Viewing error logs in Cloud Logging](https://cloud.google.com/healthcare/docs/how-tos/logging))." }, "resourceTypes": { "description": "Supply a FHIR resource type (such as \"Patient\" or \"Observation\"). See https://www.hl7.org/fhir/valueset-resource-types.html for a list of all FHIR resource types. The server treats an empty list as an intent to stream all the supported resource types in this FHIR store.", diff --git a/Src/Generated/Google.Apis.CloudHealthcare.v1beta1/Google.Apis.CloudHealthcare.v1beta1.cs b/Src/Generated/Google.Apis.CloudHealthcare.v1beta1/Google.Apis.CloudHealthcare.v1beta1.cs index 30fa17e5a7b..a4ebbaf4418 100644 --- a/Src/Generated/Google.Apis.CloudHealthcare.v1beta1/Google.Apis.CloudHealthcare.v1beta1.cs +++ b/Src/Generated/Google.Apis.CloudHealthcare.v1beta1/Google.Apis.CloudHealthcare.v1beta1.cs @@ -20441,9 +20441,10 @@ public class StreamConfig : Google.Apis.Requests.IDirectResponseSchema /// /// The destination FHIR store for de-identified resources. After this field is added, all subsequent /// creates/updates/patches to the source store will be de-identified using the provided configuration and - /// applied to the destination store. Importing resources to the source store will not trigger the streaming. If - /// the source store already contains resources when this option is enabled, those resources will not be copied - /// to the destination store unless they are subsequently updated. This may result in invalid references in the + /// applied to the destination store. Resources deleted from the source store will be deleted from the + /// destination store. Importing resources to the source store will not trigger the streaming. If the source + /// store already contains resources when this option is enabled, those resources will not be copied to the + /// destination store unless they are subsequently updated. This may result in invalid references in the /// destination store. Before adding this config, you must grant the healthcare.fhirResources.update permission /// on the destination store to your project's **Cloud Healthcare Service Agent** [service /// account](https://cloud.google.com/healthcare/docs/how-tos/permissions-healthcare-api-gcp-products#the_cloud_healthcare_service_agent). diff --git a/Src/Generated/Google.Apis.CloudHealthcare.v1beta1/Google.Apis.CloudHealthcare.v1beta1.csproj b/Src/Generated/Google.Apis.CloudHealthcare.v1beta1/Google.Apis.CloudHealthcare.v1beta1.csproj index f8bb4011400..ea9f7ff0c09 100644 --- a/Src/Generated/Google.Apis.CloudHealthcare.v1beta1/Google.Apis.CloudHealthcare.v1beta1.csproj +++ b/Src/Generated/Google.Apis.CloudHealthcare.v1beta1/Google.Apis.CloudHealthcare.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudHealthcare.v1beta1 Client Library - 1.68.0.3521 + 1.68.0.3569 Google LLC Copyright 2024 Google LLC Google From 852377f73bc73ca051c3c2691b9a560c8ec663ff Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:47 -0700 Subject: [PATCH 37/61] feat: Generate Google.Apis.Logging.v2 version 1.68.0.3570 --- DiscoveryJson/logging.v2.json | 10 +++---- .../Google.Apis.Logging.v2.cs | 26 +++++++++---------- .../Google.Apis.Logging.v2.csproj | 2 +- 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/DiscoveryJson/logging.v2.json b/DiscoveryJson/logging.v2.json index 233bdd06778..ab663bc1c22 100644 --- a/DiscoveryJson/logging.v2.json +++ b/DiscoveryJson/logging.v2.json @@ -3166,7 +3166,7 @@ ], "parameters": { "name": { - "description": "Output only. The resource name of the log scope.For example:projects/my-project/locations/global/logScopes/my-log-scope", + "description": "Output only. The resource name of the log scope.Log scopes are only available in the global location. For example:projects/my-project/locations/global/logScopes/my-log-scope", "location": "path", "pattern": "^folders/[^/]+/locations/[^/]+/logScopes/[^/]+$", "required": true, @@ -5984,7 +5984,7 @@ ], "parameters": { "name": { - "description": "Output only. The resource name of the log scope.For example:projects/my-project/locations/global/logScopes/my-log-scope", + "description": "Output only. The resource name of the log scope.Log scopes are only available in the global location. For example:projects/my-project/locations/global/logScopes/my-log-scope", "location": "path", "pattern": "^organizations/[^/]+/locations/[^/]+/logScopes/[^/]+$", "required": true, @@ -7786,7 +7786,7 @@ ], "parameters": { "name": { - "description": "Output only. The resource name of the log scope.For example:projects/my-project/locations/global/logScopes/my-log-scope", + "description": "Output only. The resource name of the log scope.Log scopes are only available in the global location. For example:projects/my-project/locations/global/logScopes/my-log-scope", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/logScopes/[^/]+$", "required": true, @@ -8922,7 +8922,7 @@ } } }, - "revision": "20240913", + "revision": "20241010", "rootUrl": "https://logging.googleapis.com/", "schemas": { "AuditConfig": { @@ -10430,7 +10430,7 @@ "type": "string" }, "name": { - "description": "Output only. The resource name of the log scope.For example:projects/my-project/locations/global/logScopes/my-log-scope", + "description": "Output only. The resource name of the log scope.Log scopes are only available in the global location. For example:projects/my-project/locations/global/logScopes/my-log-scope", "readOnly": true, "type": "string" }, diff --git a/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.cs b/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.cs index 755e2abcc3a..fb13700fca1 100644 --- a/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.cs +++ b/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.cs @@ -6979,8 +6979,8 @@ protected override void InitParameters() /// Updates a log scope. /// The body of the request. /// - /// Output only. The resource name of the log scope.For - /// example:projects/my-project/locations/global/logScopes/my-log-scope + /// Output only. The resource name of the log scope.Log scopes are only available in the global + /// location. For example:projects/my-project/locations/global/logScopes/my-log-scope /// public virtual PatchRequest Patch(Google.Apis.Logging.v2.Data.LogScope body, string name) { @@ -6999,8 +6999,8 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Log } /// - /// Output only. The resource name of the log scope.For - /// example:projects/my-project/locations/global/logScopes/my-log-scope + /// Output only. The resource name of the log scope.Log scopes are only available in the global + /// location. For example:projects/my-project/locations/global/logScopes/my-log-scope /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } @@ -13527,8 +13527,8 @@ protected override void InitParameters() /// Updates a log scope. /// The body of the request. /// - /// Output only. The resource name of the log scope.For - /// example:projects/my-project/locations/global/logScopes/my-log-scope + /// Output only. The resource name of the log scope.Log scopes are only available in the global + /// location. For example:projects/my-project/locations/global/logScopes/my-log-scope /// public virtual PatchRequest Patch(Google.Apis.Logging.v2.Data.LogScope body, string name) { @@ -13547,8 +13547,8 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Log } /// - /// Output only. The resource name of the log scope.For - /// example:projects/my-project/locations/global/logScopes/my-log-scope + /// Output only. The resource name of the log scope.Log scopes are only available in the global + /// location. For example:projects/my-project/locations/global/logScopes/my-log-scope /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } @@ -17998,8 +17998,8 @@ protected override void InitParameters() /// Updates a log scope. /// The body of the request. /// - /// Output only. The resource name of the log scope.For - /// example:projects/my-project/locations/global/logScopes/my-log-scope + /// Output only. The resource name of the log scope.Log scopes are only available in the global + /// location. For example:projects/my-project/locations/global/logScopes/my-log-scope /// public virtual PatchRequest Patch(Google.Apis.Logging.v2.Data.LogScope body, string name) { @@ -18018,8 +18018,8 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Log } /// - /// Output only. The resource name of the log scope.For - /// example:projects/my-project/locations/global/logScopes/my-log-scope + /// Output only. The resource name of the log scope.Log scopes are only available in the global + /// location. For example:projects/my-project/locations/global/logScopes/my-log-scope /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } @@ -23393,7 +23393,7 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset public virtual string Description { get; set; } /// - /// Output only. The resource name of the log scope.For + /// Output only. The resource name of the log scope.Log scopes are only available in the global location. For /// example:projects/my-project/locations/global/logScopes/my-log-scope /// [Newtonsoft.Json.JsonPropertyAttribute("name")] diff --git a/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.csproj b/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.csproj index d85986abe13..1829a9f3f6a 100644 --- a/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.csproj +++ b/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.Logging.v2 Client Library - 1.68.0.3543 + 1.68.0.3570 Google LLC Copyright 2024 Google LLC Google From 41889d47dc66c1b3aa77955e310f66e0b2f98323 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:50 -0700 Subject: [PATCH 38/61] feat: Generate Google.Apis.CloudMemorystoreforMemcached.v1 version 1.68.0.3570 --- DiscoveryJson/memcache.v1.json | 10 +++++----- ...Google.Apis.CloudMemorystoreforMemcached.v1.cs | 15 +++++++++------ ...le.Apis.CloudMemorystoreforMemcached.v1.csproj | 2 +- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/DiscoveryJson/memcache.v1.json b/DiscoveryJson/memcache.v1.json index c9e6a241e09..d48d38c8293 100644 --- a/DiscoveryJson/memcache.v1.json +++ b/DiscoveryJson/memcache.v1.json @@ -584,7 +584,7 @@ } } }, - "revision": "20240919", + "revision": "20241010", "rootUrl": "https://memcache.googleapis.com/", "schemas": { "ApplyParametersRequest": { @@ -2095,22 +2095,22 @@ "id": "TimeOfDay", "properties": { "hours": { - "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", + "description": "Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", "format": "int32", "type": "integer" }, "minutes": { - "description": "Minutes of hour of day. Must be from 0 to 59.", + "description": "Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.", "format": "int32", "type": "integer" }, "nanos": { - "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "description": "Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.", "format": "int32", "type": "integer" }, "seconds": { - "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds.", + "description": "Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.", "format": "int32", "type": "integer" } diff --git a/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1/Google.Apis.CloudMemorystoreforMemcached.v1.cs b/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1/Google.Apis.CloudMemorystoreforMemcached.v1.cs index ed55a21cf07..02edcad91c7 100644 --- a/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1/Google.Apis.CloudMemorystoreforMemcached.v1.cs +++ b/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1/Google.Apis.CloudMemorystoreforMemcached.v1.cs @@ -3327,23 +3327,26 @@ public class TenantProjectProxy : Google.Apis.Requests.IDirectResponseSchema public class TimeOfDay : Google.Apis.Requests.IDirectResponseSchema { /// - /// Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value "24:00:00" for - /// scenarios like business closing time. + /// Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or + /// equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time. /// [Newtonsoft.Json.JsonPropertyAttribute("hours")] public virtual System.Nullable Hours { get; set; } - /// Minutes of hour of day. Must be from 0 to 59. + /// Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59. [Newtonsoft.Json.JsonPropertyAttribute("minutes")] public virtual System.Nullable Minutes { get; set; } - /// Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. + /// + /// Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to + /// 999,999,999. + /// [Newtonsoft.Json.JsonPropertyAttribute("nanos")] public virtual System.Nullable Nanos { get; set; } /// - /// Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows - /// leap-seconds. + /// Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An + /// API may allow the value 60 if it allows leap-seconds. /// [Newtonsoft.Json.JsonPropertyAttribute("seconds")] public virtual System.Nullable Seconds { get; set; } diff --git a/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1/Google.Apis.CloudMemorystoreforMemcached.v1.csproj b/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1/Google.Apis.CloudMemorystoreforMemcached.v1.csproj index fa7153c240f..fa4d1460fa6 100644 --- a/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1/Google.Apis.CloudMemorystoreforMemcached.v1.csproj +++ b/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1/Google.Apis.CloudMemorystoreforMemcached.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudMemorystoreforMemcached.v1 Client Library - 1.68.0.3549 + 1.68.0.3570 Google LLC Copyright 2024 Google LLC Google From 26a8723f02af25da9ef86c8733fe7b3ffcd265a7 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:53 -0700 Subject: [PATCH 39/61] feat: Generate Google.Apis.CloudMemorystoreforMemcached.v1beta2 version 1.68.0.3570 --- DiscoveryJson/memcache.v1beta2.json | 10 +++++----- ...e.Apis.CloudMemorystoreforMemcached.v1beta2.cs | 15 +++++++++------ ...is.CloudMemorystoreforMemcached.v1beta2.csproj | 2 +- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/DiscoveryJson/memcache.v1beta2.json b/DiscoveryJson/memcache.v1beta2.json index b79d6866b71..4ad1be83eb3 100644 --- a/DiscoveryJson/memcache.v1beta2.json +++ b/DiscoveryJson/memcache.v1beta2.json @@ -612,7 +612,7 @@ } } }, - "revision": "20240919", + "revision": "20241010", "rootUrl": "https://memcache.googleapis.com/", "schemas": { "ApplyParametersRequest": { @@ -2151,22 +2151,22 @@ "id": "TimeOfDay", "properties": { "hours": { - "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", + "description": "Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", "format": "int32", "type": "integer" }, "minutes": { - "description": "Minutes of hour of day. Must be from 0 to 59.", + "description": "Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.", "format": "int32", "type": "integer" }, "nanos": { - "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "description": "Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.", "format": "int32", "type": "integer" }, "seconds": { - "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds.", + "description": "Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.", "format": "int32", "type": "integer" } diff --git a/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1beta2/Google.Apis.CloudMemorystoreforMemcached.v1beta2.cs b/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1beta2/Google.Apis.CloudMemorystoreforMemcached.v1beta2.cs index 20712307cad..eadeb80e21e 100644 --- a/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1beta2/Google.Apis.CloudMemorystoreforMemcached.v1beta2.cs +++ b/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1beta2/Google.Apis.CloudMemorystoreforMemcached.v1beta2.cs @@ -3412,23 +3412,26 @@ public class TenantProjectProxy : Google.Apis.Requests.IDirectResponseSchema public class TimeOfDay : Google.Apis.Requests.IDirectResponseSchema { /// - /// Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value "24:00:00" for - /// scenarios like business closing time. + /// Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or + /// equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time. /// [Newtonsoft.Json.JsonPropertyAttribute("hours")] public virtual System.Nullable Hours { get; set; } - /// Minutes of hour of day. Must be from 0 to 59. + /// Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59. [Newtonsoft.Json.JsonPropertyAttribute("minutes")] public virtual System.Nullable Minutes { get; set; } - /// Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. + /// + /// Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to + /// 999,999,999. + /// [Newtonsoft.Json.JsonPropertyAttribute("nanos")] public virtual System.Nullable Nanos { get; set; } /// - /// Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows - /// leap-seconds. + /// Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An + /// API may allow the value 60 if it allows leap-seconds. /// [Newtonsoft.Json.JsonPropertyAttribute("seconds")] public virtual System.Nullable Seconds { get; set; } diff --git a/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1beta2/Google.Apis.CloudMemorystoreforMemcached.v1beta2.csproj b/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1beta2/Google.Apis.CloudMemorystoreforMemcached.v1beta2.csproj index ba4241f7056..f22b92599d5 100644 --- a/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1beta2/Google.Apis.CloudMemorystoreforMemcached.v1beta2.csproj +++ b/Src/Generated/Google.Apis.CloudMemorystoreforMemcached.v1beta2/Google.Apis.CloudMemorystoreforMemcached.v1beta2.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudMemorystoreforMemcached.v1beta2 Client Library - 1.68.0.3549 + 1.68.0.3570 Google LLC Copyright 2024 Google LLC Google From d2e082c21d0bc008b05b3f0da14eb802ca7ba41e Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:56 -0700 Subject: [PATCH 40/61] feat: Generate Google.Apis.Merchant.accounts_v1beta version 1.68.0.3576 --- .../merchantapi.accounts_v1beta.json | 15 +++++++---- .../Google.Apis.Merchant.accounts_v1beta.cs | 27 +++++++++++++++---- ...oogle.Apis.Merchant.accounts_v1beta.csproj | 2 +- 3 files changed, 33 insertions(+), 11 deletions(-) diff --git a/DiscoveryJson/merchantapi.accounts_v1beta.json b/DiscoveryJson/merchantapi.accounts_v1beta.json index 78e4b0fb80e..3a7898cffda 100644 --- a/DiscoveryJson/merchantapi.accounts_v1beta.json +++ b/DiscoveryJson/merchantapi.accounts_v1beta.json @@ -476,7 +476,7 @@ "emailPreferences": { "methods": { "getEmailPreferences": { - "description": "Returns the email preferences for a Merchant Center account user. Use the name=accounts/*/users/me/emailPreferences alias to get preferences for the authenticated user.", + "description": "Returns the email preferences for a Merchant Center account user. This service only permits retrieving and updating email preferences for the authenticated user. Use the name=accounts/*/users/me/emailPreferences alias to get preferences for the authenticated user.", "flatPath": "accounts/v1beta/accounts/{accountsId}/users/{usersId}/emailPreferences", "httpMethod": "GET", "id": "merchantapi.accounts.emailPreferences.getEmailPreferences", @@ -1195,7 +1195,7 @@ ] }, "delete": { - "description": "Deletes a Merchant Center account user. Executing this method requires admin access.", + "description": "Deletes a Merchant Center account user. Executing this method requires admin access. The user to be deleted can't be the last admin user of that account. Also a user is protected from deletion if it is managed by Business Manager\"", "flatPath": "accounts/v1beta/accounts/{accountsId}/users/{usersId}", "httpMethod": "DELETE", "id": "merchantapi.accounts.users.delete", @@ -1417,7 +1417,7 @@ } } }, - "revision": "20241004", + "revision": "20241016", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Accepted": { @@ -1538,7 +1538,7 @@ "description": "The provider is an [aggregator](https://support.google.com/merchants/answer/188487) for the account. Payload for service type Account Aggregation." }, "provider": { - "description": "Optional. The provider of the service. Format: `accounts/{account}`", + "description": "Required. The provider of the service. Format: `accounts/{account}`", "type": "string" } }, @@ -1747,7 +1747,12 @@ "ClaimHomepageRequest": { "description": "Request message for the `ClaimHomepage` method.", "id": "ClaimHomepageRequest", - "properties": {}, + "properties": { + "overwrite": { + "description": "Optional. When set to `true`, this option removes any existing claim on the requested website and replaces it with a claim from the account that makes the request.", + "type": "boolean" + } + }, "type": "object" }, "CreateAndConfigureAccountRequest": { diff --git a/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.cs b/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.cs index 9836c3a26bc..960ab1cbd23 100644 --- a/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.cs +++ b/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.cs @@ -718,7 +718,8 @@ public EmailPreferencesResource(Google.Apis.Services.IClientService service) } /// - /// Returns the email preferences for a Merchant Center account user. Use the + /// Returns the email preferences for a Merchant Center account user. This service only permits retrieving + /// and updating email preferences for the authenticated user. Use the /// name=accounts/*/users/me/emailPreferences alias to get preferences for the authenticated user. /// /// @@ -731,7 +732,8 @@ public virtual GetEmailPreferencesRequest GetEmailPreferences(string name) } /// - /// Returns the email preferences for a Merchant Center account user. Use the + /// Returns the email preferences for a Merchant Center account user. This service only permits retrieving + /// and updating email preferences for the authenticated user. Use the /// name=accounts/*/users/me/emailPreferences alias to get preferences for the authenticated user. /// public class GetEmailPreferencesRequest : MerchantBaseServiceRequest @@ -2370,7 +2372,11 @@ protected override void InitParameters() } } - /// Deletes a Merchant Center account user. Executing this method requires admin access. + /// + /// Deletes a Merchant Center account user. Executing this method requires admin access. The user to be + /// deleted can't be the last admin user of that account. Also a user is protected from deletion if it is + /// managed by Business Manager" + /// /// /// Required. The name of the user to delete. Format: `accounts/{account}/users/{email}` It is also possible /// to delete the user corresponding to the caller by using `me` rather than an email address as in @@ -2381,7 +2387,11 @@ public virtual DeleteRequest Delete(string name) return new DeleteRequest(this.service, name); } - /// Deletes a Merchant Center account user. Executing this method requires admin access. + /// + /// Deletes a Merchant Center account user. Executing this method requires admin access. The user to be + /// deleted can't be the last admin user of that account. Also a user is protected from deletion if it is + /// managed by Business Manager" + /// public class DeleteRequest : MerchantBaseServiceRequest { /// Constructs a new Delete request. @@ -3384,7 +3394,7 @@ public class AddAccountService : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("accountAggregation")] public virtual AccountAggregation AccountAggregation { get; set; } - /// Optional. The provider of the service. Format: `accounts/{account}` + /// Required. The provider of the service. Format: `accounts/{account}` [Newtonsoft.Json.JsonPropertyAttribute("provider")] public virtual string Provider { get; set; } @@ -3608,6 +3618,13 @@ public class CarrierRate : Google.Apis.Requests.IDirectResponseSchema /// Request message for the `ClaimHomepage` method. public class ClaimHomepageRequest : Google.Apis.Requests.IDirectResponseSchema { + /// + /// Optional. When set to `true`, this option removes any existing claim on the requested website and replaces + /// it with a claim from the account that makes the request. + /// + [Newtonsoft.Json.JsonPropertyAttribute("overwrite")] + public virtual System.Nullable Overwrite { get; set; } + /// The ETag of the item. public virtual string ETag { get; set; } } diff --git a/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.csproj b/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.csproj index 2f245bd1a73..8a6cb5aa964 100644 --- a/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.csproj +++ b/Src/Generated/Google.Apis.Merchant.accounts_v1beta/Google.Apis.Merchant.accounts_v1beta.csproj @@ -3,7 +3,7 @@ Google.Apis.Merchant.accounts_v1beta Client Library - 1.68.0.3564 + 1.68.0.3576 Google LLC Copyright 2024 Google LLC Google From c50854db1807b534f967f34f102cb69cef989163 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:12:59 -0700 Subject: [PATCH 41/61] feat: Generate Google.Apis.Merchant.datasources_v1beta version 1.68.0.3576 --- .../merchantapi.datasources_v1beta.json | 24 ++++++++++++-- ...Google.Apis.Merchant.datasources_v1beta.cs | 31 +++++++++++++++++-- ...le.Apis.Merchant.datasources_v1beta.csproj | 2 +- 3 files changed, 52 insertions(+), 5 deletions(-) diff --git a/DiscoveryJson/merchantapi.datasources_v1beta.json b/DiscoveryJson/merchantapi.datasources_v1beta.json index abae12d67e2..b8ac0b6e72d 100644 --- a/DiscoveryJson/merchantapi.datasources_v1beta.json +++ b/DiscoveryJson/merchantapi.datasources_v1beta.json @@ -321,7 +321,7 @@ } } }, - "revision": "20241004", + "revision": "20241016", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "DataSource": { @@ -365,6 +365,10 @@ "$ref": "LocalInventoryDataSource", "description": "Required. The [local inventory](https://support.google.com/merchants/answer/7023001) data source." }, + "merchantReviewDataSource": { + "$ref": "MerchantReviewDataSource", + "description": "Required. The [merchant review](https://support.google.com/merchants/answer/7045996) data source." + }, "name": { "description": "Identifier. The name of the data source. Format: `{datasource.name=accounts/{account}/dataSources/{datasource}}`", "type": "string" @@ -373,6 +377,10 @@ "$ref": "PrimaryProductDataSource", "description": "Required. The [primary data source](https://support.google.com/merchants/answer/7439058) for local and online products." }, + "productReviewDataSource": { + "$ref": "ProductReviewDataSource", + "description": "Required. The [product review](https://support.google.com/merchants/answer/7045996) data source." + }, "promotionDataSource": { "$ref": "PromotionDataSource", "description": "Required. The [promotion](https://support.google.com/merchants/answer/2906014) data source." @@ -688,6 +696,12 @@ }, "type": "object" }, + "MerchantReviewDataSource": { + "description": "The merchant review data source.", + "id": "MerchantReviewDataSource", + "properties": {}, + "type": "object" + }, "PrimaryProductDataSource": { "description": "The primary data source for local and online products.", "id": "PrimaryProductDataSource", @@ -810,6 +824,12 @@ }, "type": "object" }, + "ProductReviewDataSource": { + "description": "The product review data source.", + "id": "ProductReviewDataSource", + "properties": {}, + "type": "object" + }, "ProductStatusChangeMessage": { "description": "The message that the merchant will receive to notify about product status change event", "id": "ProductStatusChangeMessage", @@ -903,7 +923,7 @@ "type": "string" }, "feedLabel": { - "description": "Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept produts without that restriction.", + "description": "Optional. Immutable. The feed label that is specified on the data source level. Must be less than or equal to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed labels](https://developers.google.com/shopping-content/guides/products/feed-labels). `feedLabel` and `contentLanguage` must be either both set or unset for data sources with product content type. They must be set for data sources with a file input. The fields must be unset for data sources without file input. If set, the data source will only accept products matching this combination. If unset, the data source will accept produts without that restriction.", "type": "string" }, "referencingPrimaryDataSources": { diff --git a/Src/Generated/Google.Apis.Merchant.datasources_v1beta/Google.Apis.Merchant.datasources_v1beta.cs b/Src/Generated/Google.Apis.Merchant.datasources_v1beta/Google.Apis.Merchant.datasources_v1beta.cs index 8f554726b6d..cb80c9693cd 100644 --- a/Src/Generated/Google.Apis.Merchant.datasources_v1beta/Google.Apis.Merchant.datasources_v1beta.cs +++ b/Src/Generated/Google.Apis.Merchant.datasources_v1beta/Google.Apis.Merchant.datasources_v1beta.cs @@ -782,6 +782,12 @@ public class DataSource : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("localInventoryDataSource")] public virtual LocalInventoryDataSource LocalInventoryDataSource { get; set; } + /// + /// Required. The [merchant review](https://support.google.com/merchants/answer/7045996) data source. + /// + [Newtonsoft.Json.JsonPropertyAttribute("merchantReviewDataSource")] + public virtual MerchantReviewDataSource MerchantReviewDataSource { get; set; } + /// /// Identifier. The name of the data source. Format: /// `{datasource.name=accounts/{account}/dataSources/{datasource}}` @@ -796,6 +802,12 @@ public class DataSource : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("primaryProductDataSource")] public virtual PrimaryProductDataSource PrimaryProductDataSource { get; set; } + /// + /// Required. The [product review](https://support.google.com/merchants/answer/7045996) data source. + /// + [Newtonsoft.Json.JsonPropertyAttribute("productReviewDataSource")] + public virtual ProductReviewDataSource ProductReviewDataSource { get; set; } + /// /// Required. The [promotion](https://support.google.com/merchants/answer/2906014) data source. /// @@ -1128,6 +1140,13 @@ public class LocalInventoryDataSource : Google.Apis.Requests.IDirectResponseSche public virtual string ETag { get; set; } } + /// The merchant review data source. + public class MerchantReviewDataSource : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// The primary data source for local and online products. public class PrimaryProductDataSource : Google.Apis.Requests.IDirectResponseSchema { @@ -1198,6 +1217,13 @@ public class ProductChange : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + /// The product review data source. + public class ProductReviewDataSource : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// The message that the merchant will receive to notify about product status change event public class ProductStatusChangeMessage : Google.Apis.Requests.IDirectResponseSchema { @@ -1297,8 +1323,9 @@ public class SupplementalProductDataSource : Google.Apis.Requests.IDirectRespons /// to 20 uppercase letters (A-Z), numbers (0-9), and dashes (-). See also [migration to feed /// labels](https://developers.google.com/shopping-content/guides/products/feed-labels). `feedLabel` and /// `contentLanguage` must be either both set or unset for data sources with product content type. They must be - /// set for data sources with a file input. If set, the data source will only accept products matching this - /// combination. If unset, the data source will accept produts without that restriction. + /// set for data sources with a file input. The fields must be unset for data sources without file input. If + /// set, the data source will only accept products matching this combination. If unset, the data source will + /// accept produts without that restriction. /// [Newtonsoft.Json.JsonPropertyAttribute("feedLabel")] public virtual string FeedLabel { get; set; } diff --git a/Src/Generated/Google.Apis.Merchant.datasources_v1beta/Google.Apis.Merchant.datasources_v1beta.csproj b/Src/Generated/Google.Apis.Merchant.datasources_v1beta/Google.Apis.Merchant.datasources_v1beta.csproj index ac2456f8647..e709838c7f5 100644 --- a/Src/Generated/Google.Apis.Merchant.datasources_v1beta/Google.Apis.Merchant.datasources_v1beta.csproj +++ b/Src/Generated/Google.Apis.Merchant.datasources_v1beta/Google.Apis.Merchant.datasources_v1beta.csproj @@ -3,7 +3,7 @@ Google.Apis.Merchant.datasources_v1beta Client Library - 1.68.0.3564 + 1.68.0.3576 Google LLC Copyright 2024 Google LLC Google From 70dcc191a2daf4c7a1ce62719b35b7ad247fc665 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:02 -0700 Subject: [PATCH 42/61] feat: Generate Google.Apis.Merchant.products_v1beta version 1.68.0.3575 --- DiscoveryJson/merchantapi.products_v1beta.json | 6 +++--- .../Google.Apis.Merchant.products_v1beta.cs | 16 ++++++++++++---- .../Google.Apis.Merchant.products_v1beta.csproj | 2 +- 3 files changed, 16 insertions(+), 8 deletions(-) diff --git a/DiscoveryJson/merchantapi.products_v1beta.json b/DiscoveryJson/merchantapi.products_v1beta.json index f434d83d289..3d6fcd276fa 100644 --- a/DiscoveryJson/merchantapi.products_v1beta.json +++ b/DiscoveryJson/merchantapi.products_v1beta.json @@ -124,7 +124,7 @@ "type": "string" }, "name": { - "description": "Required. The name of the product input resource to delete. Format: accounts/{account}/productInputs/{product}", + "description": "Required. The name of the product input resource to delete. Format: accounts/{account}/productInputs/{product} where the last section `product` consists of 4 parts: channel~content_language~feed_label~offer_id example for product name is \"accounts/123/productInputs/online~en~US~sku123\"", "location": "path", "pattern": "^accounts/[^/]+/productInputs/[^/]+$", "required": true, @@ -186,7 +186,7 @@ ], "parameters": { "name": { - "description": "Required. The name of the product to retrieve. Format: `accounts/{account}/products/{product}`", + "description": "Required. The name of the product to retrieve. Format: `accounts/{account}/products/{product}` where the last section `product` consists of 4 parts: channel~content_language~feed_label~offer_id example for product name is \"accounts/123/products/online~en~US~sku123\"", "location": "path", "pattern": "^accounts/[^/]+/products/[^/]+$", "required": true, @@ -242,7 +242,7 @@ } } }, - "revision": "20241001", + "revision": "20241015", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Attributes": { diff --git a/Src/Generated/Google.Apis.Merchant.products_v1beta/Google.Apis.Merchant.products_v1beta.cs b/Src/Generated/Google.Apis.Merchant.products_v1beta/Google.Apis.Merchant.products_v1beta.cs index 5594f5c38c2..08a1e3e23af 100644 --- a/Src/Generated/Google.Apis.Merchant.products_v1beta/Google.Apis.Merchant.products_v1beta.cs +++ b/Src/Generated/Google.Apis.Merchant.products_v1beta/Google.Apis.Merchant.products_v1beta.cs @@ -295,7 +295,9 @@ public ProductInputsResource(Google.Apis.Services.IClientService service) /// /// /// Required. The name of the product input resource to delete. Format: - /// accounts/{account}/productInputs/{product} + /// accounts/{account}/productInputs/{product} where the last section `product` consists of 4 parts: + /// channel~content_language~feed_label~offer_id example for product name is + /// "accounts/123/productInputs/online~en~US~sku123" /// public virtual DeleteRequest Delete(string name) { @@ -317,7 +319,9 @@ public DeleteRequest(Google.Apis.Services.IClientService service, string name) : /// /// Required. The name of the product input resource to delete. Format: - /// accounts/{account}/productInputs/{product} + /// accounts/{account}/productInputs/{product} where the last section `product` consists of 4 parts: + /// channel~content_language~feed_label~offer_id example for product name is + /// "accounts/123/productInputs/online~en~US~sku123" /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } @@ -465,7 +469,9 @@ public ProductsResource(Google.Apis.Services.IClientService service) /// deleting a product input, it may take several minutes before the updated final product can be retrieved. /// /// - /// Required. The name of the product to retrieve. Format: `accounts/{account}/products/{product}` + /// Required. The name of the product to retrieve. Format: `accounts/{account}/products/{product}` where the + /// last section `product` consists of 4 parts: channel~content_language~feed_label~offer_id example for + /// product name is "accounts/123/products/online~en~US~sku123" /// public virtual GetRequest Get(string name) { @@ -486,7 +492,9 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) : ba } /// - /// Required. The name of the product to retrieve. Format: `accounts/{account}/products/{product}` + /// Required. The name of the product to retrieve. Format: `accounts/{account}/products/{product}` where + /// the last section `product` consists of 4 parts: channel~content_language~feed_label~offer_id example + /// for product name is "accounts/123/products/online~en~US~sku123" /// [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } diff --git a/Src/Generated/Google.Apis.Merchant.products_v1beta/Google.Apis.Merchant.products_v1beta.csproj b/Src/Generated/Google.Apis.Merchant.products_v1beta/Google.Apis.Merchant.products_v1beta.csproj index 76db7da00cb..d7e847fd8b7 100644 --- a/Src/Generated/Google.Apis.Merchant.products_v1beta/Google.Apis.Merchant.products_v1beta.csproj +++ b/Src/Generated/Google.Apis.Merchant.products_v1beta/Google.Apis.Merchant.products_v1beta.csproj @@ -3,7 +3,7 @@ Google.Apis.Merchant.products_v1beta Client Library - 1.68.0.3561 + 1.68.0.3575 Google LLC Copyright 2024 Google LLC Google From 2fb8a418c5f4b5550fe52497f875eb8870cd5aa0 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:05 -0700 Subject: [PATCH 43/61] feat: Generate Google.Apis.Merchant.promotions_v1beta version 1.68.0.3575 --- .../merchantapi.promotions_v1beta.json | 18 +++++++++++++++--- ...ogle.Apis.Merchant.promotions_v1beta.csproj | 2 +- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/DiscoveryJson/merchantapi.promotions_v1beta.json b/DiscoveryJson/merchantapi.promotions_v1beta.json index a4347e6cb58..4add03ccd50 100644 --- a/DiscoveryJson/merchantapi.promotions_v1beta.json +++ b/DiscoveryJson/merchantapi.promotions_v1beta.json @@ -203,7 +203,7 @@ } } }, - "revision": "20241004", + "revision": "20241015", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Attributes": { @@ -390,7 +390,13 @@ "LOCAL_INVENTORY_ADS", "FREE_LISTINGS", "FREE_LOCAL_LISTINGS", - "YOUTUBE_SHOPPING" + "YOUTUBE_SHOPPING", + "YOUTUBE_SHOPPING_CHECKOUT", + "YOUTUBE_AFFILIATE", + "FREE_VEHICLE_LISTINGS", + "VEHICLE_ADS", + "CLOUD_RETAIL", + "LOCAL_CLOUD_RETAIL" ], "enumDescriptions": [ "Not specified.", @@ -399,7 +405,13 @@ "[Local inventory ads](https://support.google.com/merchants/answer/3057972).", "[Free listings](https://support.google.com/merchants/answer/9199328).", "[Free local product listings](https://support.google.com/merchants/answer/9825611).", - "[YouTube Shopping](https://support.google.com/merchants/answer/12362804)." + "[YouTube Shopping](https://support.google.com/merchants/answer/12362804).", + "Youtube shopping checkout.", + "Youtube affiliate.", + "Free vehicle listings.", + "Vehicle ads.", + "Cloud retail.", + "Local cloud retail." ], "type": "string" }, diff --git a/Src/Generated/Google.Apis.Merchant.promotions_v1beta/Google.Apis.Merchant.promotions_v1beta.csproj b/Src/Generated/Google.Apis.Merchant.promotions_v1beta/Google.Apis.Merchant.promotions_v1beta.csproj index c20654600de..afe708633bd 100644 --- a/Src/Generated/Google.Apis.Merchant.promotions_v1beta/Google.Apis.Merchant.promotions_v1beta.csproj +++ b/Src/Generated/Google.Apis.Merchant.promotions_v1beta/Google.Apis.Merchant.promotions_v1beta.csproj @@ -3,7 +3,7 @@ Google.Apis.Merchant.promotions_v1beta Client Library - 1.68.0.3564 + 1.68.0.3575 Google LLC Copyright 2024 Google LLC Google From 8a3e5aac82c26c0fcd533c46e1b61b715dbad0c8 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:08 -0700 Subject: [PATCH 44/61] feat: Generate Google.Apis.Merchant.reviews_v1beta version 1.68.0.3575 --- DiscoveryJson/merchantapi.reviews_v1beta.json | 1352 +++++++++++++ EnumStorage/merchantapi.reviews_v1beta.json | 11 + .../Google.Apis.Merchant.reviews_v1beta.cs | 1674 +++++++++++++++++ ...Google.Apis.Merchant.reviews_v1beta.csproj | 66 + 4 files changed, 3103 insertions(+) create mode 100644 DiscoveryJson/merchantapi.reviews_v1beta.json create mode 100644 EnumStorage/merchantapi.reviews_v1beta.json create mode 100644 Src/Generated/Google.Apis.Merchant.reviews_v1beta/Google.Apis.Merchant.reviews_v1beta.cs create mode 100644 Src/Generated/Google.Apis.Merchant.reviews_v1beta/Google.Apis.Merchant.reviews_v1beta.csproj diff --git a/DiscoveryJson/merchantapi.reviews_v1beta.json b/DiscoveryJson/merchantapi.reviews_v1beta.json new file mode 100644 index 00000000000..d3f252b6f61 --- /dev/null +++ b/DiscoveryJson/merchantapi.reviews_v1beta.json @@ -0,0 +1,1352 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/content": { + "description": "Manage your product listings and accounts for Google Shopping" + } + } + } + }, + "basePath": "", + "baseUrl": "https://merchantapi.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Merchant", + "description": "Programmatically manage your Merchant Center Accounts.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.devsite.corp.google.com/merchant/api", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "merchantapi:reviews_v1beta", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://merchantapi.mtls.googleapis.com/", + "name": "merchantapi", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" + }, + "key": { + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "accounts": { + "resources": { + "merchantReviews": { + "methods": { + "delete": { + "description": "Deletes merchant review.", + "flatPath": "reviews/v1beta/accounts/{accountsId}/merchantReviews/{merchantReviewsId}", + "httpMethod": "DELETE", + "id": "merchantapi.accounts.merchantReviews.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The ID of the merchant review. Format: accounts/{account}/merchantReviews/{merchantReview}", + "location": "path", + "pattern": "^accounts/[^/]+/merchantReviews/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "reviews/v1beta/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "description": "Gets a merchant review.", + "flatPath": "reviews/v1beta/accounts/{accountsId}/merchantReviews/{merchantReviewsId}", + "httpMethod": "GET", + "id": "merchantapi.accounts.merchantReviews.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The ID of the merchant review. Format: accounts/{account}/merchantReviews/{merchantReview}", + "location": "path", + "pattern": "^accounts/[^/]+/merchantReviews/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "reviews/v1beta/{+name}", + "response": { + "$ref": "MerchantReview" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "insert": { + "description": "Inserts a review for your Merchant Center account. If the review already exists, then the review is replaced with the new instance.", + "flatPath": "reviews/v1beta/accounts/{accountsId}/merchantReviews:insert", + "httpMethod": "POST", + "id": "merchantapi.accounts.merchantReviews.insert", + "parameterOrder": [ + "parent" + ], + "parameters": { + "dataSource": { + "description": "Required. The data source of the [merchantreview](https://support.google.com/merchants/answer/7045996?sjid=5253581244217581976-EU) Format: `accounts/{account}/dataSources/{datasource}`.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The account where the merchant review will be inserted. Format: accounts/{account}", + "location": "path", + "pattern": "^accounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "reviews/v1beta/{+parent}/merchantReviews:insert", + "request": { + "$ref": "MerchantReview" + }, + "response": { + "$ref": "MerchantReview" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "description": "Lists merchant reviews.", + "flatPath": "reviews/v1beta/accounts/{accountsId}/merchantReviews", + "httpMethod": "GET", + "id": "merchantapi.accounts.merchantReviews.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of merchant reviews to return. The service can return fewer than this value. The maximum value is 1000; values above 1000 are coerced to 1000. If unspecified, the maximum number of reviews is returned.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListMerchantReviews` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMerchantReviews` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The account to list merchant reviews for. Format: accounts/{account}", + "location": "path", + "pattern": "^accounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "reviews/v1beta/{+parent}/merchantReviews", + "response": { + "$ref": "ListMerchantReviewsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } + } + }, + "productReviews": { + "methods": { + "delete": { + "description": "Deletes a product review.", + "flatPath": "reviews/v1beta/accounts/{accountsId}/productReviews/{productReviewsId}", + "httpMethod": "DELETE", + "id": "merchantapi.accounts.productReviews.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The ID of the Product review. Format: accounts/{account}/productReviews/{productReview}", + "location": "path", + "pattern": "^accounts/[^/]+/productReviews/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "reviews/v1beta/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "description": "Gets a product review.", + "flatPath": "reviews/v1beta/accounts/{accountsId}/productReviews/{productReviewsId}", + "httpMethod": "GET", + "id": "merchantapi.accounts.productReviews.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The ID of the merchant review. Format: accounts/{account}/productReviews/{productReview}", + "location": "path", + "pattern": "^accounts/[^/]+/productReviews/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "reviews/v1beta/{+name}", + "response": { + "$ref": "ProductReview" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "insert": { + "description": "Inserts a product review.", + "flatPath": "reviews/v1beta/accounts/{accountsId}/productReviews:insert", + "httpMethod": "POST", + "id": "merchantapi.accounts.productReviews.insert", + "parameterOrder": [ + "parent" + ], + "parameters": { + "dataSource": { + "description": "Required. Format: `accounts/{account}/dataSources/{datasource}`.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The account where the product review will be inserted. Format: accounts/{account}", + "location": "path", + "pattern": "^accounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "reviews/v1beta/{+parent}/productReviews:insert", + "request": { + "$ref": "ProductReview" + }, + "response": { + "$ref": "ProductReview" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "description": "Lists product reviews.", + "flatPath": "reviews/v1beta/accounts/{accountsId}/productReviews", + "httpMethod": "GET", + "id": "merchantapi.accounts.productReviews.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of products to return. The service may return fewer than this value.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListProductReviews` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListProductReviews` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The account to list product reviews for. Format: accounts/{account}", + "location": "path", + "pattern": "^accounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "reviews/v1beta/{+parent}/productReviews", + "response": { + "$ref": "ListProductReviewsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } + } + } + } + } + }, + "revision": "20241015", + "rootUrl": "https://merchantapi.googleapis.com/", + "schemas": { + "CustomAttribute": { + "description": "A message that represents custom attributes. Exactly one of `value` or `group_values` must not be empty.", + "id": "CustomAttribute", + "properties": { + "groupValues": { + "description": "Subattributes within this attribute group. If `group_values` is not empty, `value` must be empty.", + "items": { + "$ref": "CustomAttribute" + }, + "type": "array" + }, + "name": { + "description": "The name of the attribute.", + "type": "string" + }, + "value": { + "description": "The value of the attribute. If `value` is not empty, `group_values` must be empty.", + "type": "string" + } + }, + "type": "object" + }, + "Empty": { + "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }", + "id": "Empty", + "properties": {}, + "type": "object" + }, + "ListMerchantReviewsResponse": { + "description": "Response message for the `ListMerchantsReview` method.", + "id": "ListMerchantReviewsResponse", + "properties": { + "merchantReviews": { + "description": "The merchant review.", + "items": { + "$ref": "MerchantReview" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The token to retrieve the next page of results.", + "type": "string" + } + }, + "type": "object" + }, + "ListProductReviewsResponse": { + "description": "response message for the ListProductReviews method.", + "id": "ListProductReviewsResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "productReviews": { + "description": "The product review.", + "items": { + "$ref": "ProductReview" + }, + "type": "array" + } + }, + "type": "object" + }, + "MerchantReview": { + "description": "A review for a merchant. For more information, see [Introduction to Merchant Review Feeds](https://developers.google.com/merchant-review-feeds)", + "id": "MerchantReview", + "properties": { + "attributes": { + "$ref": "MerchantReviewAttributes", + "description": "Optional. A list of merchant review attributes." + }, + "customAttributes": { + "description": "Required. A list of custom (merchant-provided) attributes. It can also be used for submitting any attribute of the data specification in its generic form (for example, `{ \"name\": \"size type\", \"value\": \"regular\" }`). This is useful for submitting attributes not explicitly exposed by the API, such as experimental attributes. Maximum allowed number of characters for each custom attribute is 10240 (represents sum of characters for name and value). Maximum 2500 custom attributes can be set per product, with total size of 102.4kB. Underscores in custom attribute names are replaced by spaces upon insertion.", + "items": { + "$ref": "CustomAttribute" + }, + "type": "array" + }, + "dataSource": { + "description": "Output only. The primary data source of the merchant review.", + "readOnly": true, + "type": "string" + }, + "merchantReviewId": { + "description": "Required. The user provided merchant review ID to uniquely identify the merchant review.", + "type": "string" + }, + "merchantReviewStatus": { + "$ref": "MerchantReviewStatus", + "description": "Output only. The status of a merchant review, data validation issues, that is, information about a merchant review computed asynchronously.", + "readOnly": true + }, + "name": { + "description": "Identifier. The name of the merchant review. Format: `\"{merchantreview.name=accounts/{account}/merchantReviews/{merchantReview}}\"`", + "type": "string" + } + }, + "type": "object" + }, + "MerchantReviewAttributes": { + "description": "Attributes.", + "id": "MerchantReviewAttributes", + "properties": { + "collectionMethod": { + "description": "Optional. The method used to collect the review.", + "enum": [ + "COLLECTION_METHOD_UNSPECIFIED", + "MERCHANT_UNSOLICITED", + "POINT_OF_SALE", + "AFTER_FULFILLMENT" + ], + "enumDescriptions": [ + "Collection method unspecified.", + "The user was not responding to a specific solicitation when they submitted the review.", + "The user submitted the review in response to a solicitation when the user placed an order.", + "The user submitted the review in response to a solicitation after fulfillment of the user's order." + ], + "type": "string" + }, + "content": { + "description": "Required. This should be any freeform text provided by the user and should not be truncated. If multiple responses to different questions are provided, all responses should be included, with the minimal context for the responses to make sense. Context should not be provided if questions were left unanswered.", + "type": "string" + }, + "isAnonymous": { + "description": "Optional. Set to true if the reviewer should remain anonymous.", + "type": "boolean" + }, + "maxRating": { + "description": "Optional. The maximum possible number for the rating. The value of the max rating must be greater than the value of the min rating.", + "format": "int64", + "type": "string" + }, + "merchantDisplayName": { + "description": "Optional. Human-readable display name for the merchant.", + "type": "string" + }, + "merchantId": { + "description": "Required. Must be unique and stable across all requests. In other words, if a request today and another 90 days ago refer to the same merchant, they must have the same id.", + "type": "string" + }, + "merchantLink": { + "description": "Optional. URL to the merchant's main website. Do not use a redirect URL for this value. In other words, the value should point directly to the merchant's site.", + "type": "string" + }, + "merchantRatingLink": { + "description": "Optional. URL to the landing page that hosts the reviews for this merchant. Do not use a redirect URL.", + "type": "string" + }, + "minRating": { + "description": "Optional. The minimum possible number for the rating. This should be the worst possible rating and should not be a value for no rating.", + "format": "int64", + "type": "string" + }, + "rating": { + "description": "Optional. The reviewer's overall rating of the merchant.", + "format": "double", + "type": "number" + }, + "reviewCountry": { + "description": "Optional. The country where the reviewer made the order defined by ISO 3166-1 Alpha-2 Country Code.", + "type": "string" + }, + "reviewLanguage": { + "description": "Required. The language of the review defined by BCP-47 language code.", + "type": "string" + }, + "reviewTime": { + "description": "Required. The timestamp indicating when the review was written.", + "format": "google-datetime", + "type": "string" + }, + "reviewerId": { + "description": "Optional. A permanent, unique identifier for the author of the review in the publisher's system.", + "type": "string" + }, + "reviewerUsername": { + "description": "Optional. Display name of the review author.", + "type": "string" + }, + "title": { + "description": "Optional. The title of the review.", + "type": "string" + } + }, + "type": "object" + }, + "MerchantReviewDestinationStatus": { + "description": "The destination status of the merchant review status.", + "id": "MerchantReviewDestinationStatus", + "properties": { + "reportingContext": { + "description": "Output only. The name of the reporting context.", + "enum": [ + "REPORTING_CONTEXT_ENUM_UNSPECIFIED", + "SHOPPING_ADS", + "DISCOVERY_ADS", + "DEMAND_GEN_ADS", + "DEMAND_GEN_ADS_DISCOVER_SURFACE", + "VIDEO_ADS", + "DISPLAY_ADS", + "LOCAL_INVENTORY_ADS", + "VEHICLE_INVENTORY_ADS", + "FREE_LISTINGS", + "FREE_LOCAL_LISTINGS", + "FREE_LOCAL_VEHICLE_LISTINGS", + "YOUTUBE_SHOPPING", + "CLOUD_RETAIL", + "LOCAL_CLOUD_RETAIL", + "PRODUCT_REVIEWS", + "MERCHANT_REVIEWS" + ], + "enumDeprecated": [ + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Not specified.", + "[Shopping ads](https://support.google.com/merchants/answer/6149970).", + "Deprecated: Use `DEMAND_GEN_ADS` instead. [Discovery and Demand Gen ads](https://support.google.com/merchants/answer/13389785).", + "[Demand Gen ads](https://support.google.com/merchants/answer/13389785).", + "[Demand Gen ads on Discover surface](https://support.google.com/merchants/answer/13389785).", + "[Video ads](https://support.google.com/google-ads/answer/6340491).", + "[Display ads](https://support.google.com/merchants/answer/6069387).", + "[Local inventory ads](https://support.google.com/merchants/answer/3271956).", + "[Vehicle inventory ads](https://support.google.com/merchants/answer/11544533).", + "[Free product listings](https://support.google.com/merchants/answer/9199328).", + "[Free local product listings](https://support.google.com/merchants/answer/9825611).", + "[Free local vehicle listings](https://support.google.com/merchants/answer/11544533).", + "[YouTube Shopping](https://support.google.com/merchants/answer/13478370).", + "[Cloud retail](https://cloud.google.com/solutions/retail).", + "[Local cloud retail](https://cloud.google.com/solutions/retail).", + "[Product Reviews](https://support.google.com/merchants/answer/14620732).", + "[Merchant Reviews](https://developers.google.com/merchant-review-feeds)." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "MerchantReviewItemLevelIssue": { + "description": "The ItemLevelIssue of the merchant review status.", + "id": "MerchantReviewItemLevelIssue", + "properties": { + "attribute": { + "description": "Output only. The attribute's name, if the issue is caused by a single attribute.", + "readOnly": true, + "type": "string" + }, + "code": { + "description": "Output only. The error code of the issue.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Output only. A short issue description in English.", + "readOnly": true, + "type": "string" + }, + "detail": { + "description": "Output only. A detailed issue description in English.", + "readOnly": true, + "type": "string" + }, + "documentation": { + "description": "Output only. The URL of a web page to help with resolving this issue.", + "readOnly": true, + "type": "string" + }, + "reportingContext": { + "description": "Output only. The reporting context the issue applies to.", + "enum": [ + "REPORTING_CONTEXT_ENUM_UNSPECIFIED", + "SHOPPING_ADS", + "DISCOVERY_ADS", + "DEMAND_GEN_ADS", + "DEMAND_GEN_ADS_DISCOVER_SURFACE", + "VIDEO_ADS", + "DISPLAY_ADS", + "LOCAL_INVENTORY_ADS", + "VEHICLE_INVENTORY_ADS", + "FREE_LISTINGS", + "FREE_LOCAL_LISTINGS", + "FREE_LOCAL_VEHICLE_LISTINGS", + "YOUTUBE_SHOPPING", + "CLOUD_RETAIL", + "LOCAL_CLOUD_RETAIL", + "PRODUCT_REVIEWS", + "MERCHANT_REVIEWS" + ], + "enumDeprecated": [ + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Not specified.", + "[Shopping ads](https://support.google.com/merchants/answer/6149970).", + "Deprecated: Use `DEMAND_GEN_ADS` instead. [Discovery and Demand Gen ads](https://support.google.com/merchants/answer/13389785).", + "[Demand Gen ads](https://support.google.com/merchants/answer/13389785).", + "[Demand Gen ads on Discover surface](https://support.google.com/merchants/answer/13389785).", + "[Video ads](https://support.google.com/google-ads/answer/6340491).", + "[Display ads](https://support.google.com/merchants/answer/6069387).", + "[Local inventory ads](https://support.google.com/merchants/answer/3271956).", + "[Vehicle inventory ads](https://support.google.com/merchants/answer/11544533).", + "[Free product listings](https://support.google.com/merchants/answer/9199328).", + "[Free local product listings](https://support.google.com/merchants/answer/9825611).", + "[Free local vehicle listings](https://support.google.com/merchants/answer/11544533).", + "[YouTube Shopping](https://support.google.com/merchants/answer/13478370).", + "[Cloud retail](https://cloud.google.com/solutions/retail).", + "[Local cloud retail](https://cloud.google.com/solutions/retail).", + "[Product Reviews](https://support.google.com/merchants/answer/14620732).", + "[Merchant Reviews](https://developers.google.com/merchant-review-feeds)." + ], + "readOnly": true, + "type": "string" + }, + "resolution": { + "description": "Output only. Whether the issue can be resolved by the merchant.", + "readOnly": true, + "type": "string" + }, + "severity": { + "description": "Output only. How this issue affects serving of the merchant review.", + "enum": [ + "SEVERITY_UNSPECIFIED", + "NOT_IMPACTED", + "DISAPPROVED" + ], + "enumDescriptions": [ + "Not specified.", + "This issue represents a warning and does not have a direct affect on the merchant review.", + "Issue disapproves the merchant review." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "MerchantReviewStatus": { + "description": "The status of a merchant review, data validation issues, that is, information about a merchant review computed asynchronously.", + "id": "MerchantReviewStatus", + "properties": { + "createTime": { + "description": "Output only. Date on which the item has been created, in [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) format.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "destinationStatuses": { + "description": "Output only. The intended destinations for the merchant review.", + "items": { + "$ref": "MerchantReviewDestinationStatus" + }, + "readOnly": true, + "type": "array" + }, + "itemLevelIssues": { + "description": "Output only. A list of all issues associated with the merchant review.", + "items": { + "$ref": "MerchantReviewItemLevelIssue" + }, + "readOnly": true, + "type": "array" + }, + "lastUpdateTime": { + "description": "Output only. Date on which the item has been last updated, in [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) format.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ProductChange": { + "description": "The change that happened to the product including old value, new value, country code as the region code and reporting context.", + "id": "ProductChange", + "properties": { + "newValue": { + "description": "The new value of the changed resource or attribute.", + "type": "string" + }, + "oldValue": { + "description": "The old value of the changed resource or attribute.", + "type": "string" + }, + "regionCode": { + "description": "Countries that have the change (if applicable)", + "type": "string" + }, + "reportingContext": { + "description": "Reporting contexts that have the change (if applicable)", + "enum": [ + "REPORTING_CONTEXT_ENUM_UNSPECIFIED", + "SHOPPING_ADS", + "DISCOVERY_ADS", + "DEMAND_GEN_ADS", + "DEMAND_GEN_ADS_DISCOVER_SURFACE", + "VIDEO_ADS", + "DISPLAY_ADS", + "LOCAL_INVENTORY_ADS", + "VEHICLE_INVENTORY_ADS", + "FREE_LISTINGS", + "FREE_LOCAL_LISTINGS", + "FREE_LOCAL_VEHICLE_LISTINGS", + "YOUTUBE_SHOPPING", + "CLOUD_RETAIL", + "LOCAL_CLOUD_RETAIL", + "PRODUCT_REVIEWS", + "MERCHANT_REVIEWS" + ], + "enumDeprecated": [ + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Not specified.", + "[Shopping ads](https://support.google.com/merchants/answer/6149970).", + "Deprecated: Use `DEMAND_GEN_ADS` instead. [Discovery and Demand Gen ads](https://support.google.com/merchants/answer/13389785).", + "[Demand Gen ads](https://support.google.com/merchants/answer/13389785).", + "[Demand Gen ads on Discover surface](https://support.google.com/merchants/answer/13389785).", + "[Video ads](https://support.google.com/google-ads/answer/6340491).", + "[Display ads](https://support.google.com/merchants/answer/6069387).", + "[Local inventory ads](https://support.google.com/merchants/answer/3271956).", + "[Vehicle inventory ads](https://support.google.com/merchants/answer/11544533).", + "[Free product listings](https://support.google.com/merchants/answer/9199328).", + "[Free local product listings](https://support.google.com/merchants/answer/9825611).", + "[Free local vehicle listings](https://support.google.com/merchants/answer/11544533).", + "[YouTube Shopping](https://support.google.com/merchants/answer/13478370).", + "[Cloud retail](https://cloud.google.com/solutions/retail).", + "[Local cloud retail](https://cloud.google.com/solutions/retail).", + "[Product Reviews](https://support.google.com/merchants/answer/14620732).", + "[Merchant Reviews](https://developers.google.com/merchant-review-feeds)." + ], + "type": "string" + } + }, + "type": "object" + }, + "ProductReview": { + "description": "A review for a product. For more information, see [Introduction to Product Review Feeds](https://developers.google.com/product-review-feeds)", + "id": "ProductReview", + "properties": { + "attributes": { + "$ref": "ProductReviewAttributes", + "description": "Optional. A list of product review attributes." + }, + "customAttributes": { + "description": "Optional. A list of custom (merchant-provided) attributes.", + "items": { + "$ref": "CustomAttribute" + }, + "type": "array" + }, + "dataSource": { + "description": "Output only. The primary data source of the product review.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The name of the product review. Format: `\"{productreview.name=accounts/{account}/productReviews/{productReview}}\"`", + "type": "string" + }, + "productReviewId": { + "description": "Required. The permanent, unique identifier for the product review in the publisher\u2019s system.", + "type": "string" + }, + "productReviewStatus": { + "$ref": "ProductReviewStatus", + "description": "Output only. The status of a product review, data validation issues, that is, information about a product review computed asynchronously.", + "readOnly": true + } + }, + "type": "object" + }, + "ProductReviewAttributes": { + "description": "Attributes.", + "id": "ProductReviewAttributes", + "properties": { + "aggregatorName": { + "description": "Optional. The name of the aggregator of the product reviews. A publisher may use a reviews aggregator to manage reviews and provide the feeds. This element indicates the use of an aggregator and contains information about the aggregator.", + "type": "string" + }, + "asins": { + "description": "Optional. Contains ASINs (Amazon Standard Identification Numbers) associated with a product.", + "items": { + "type": "string" + }, + "type": "array" + }, + "brands": { + "description": "Optional. Contains brand names associated with a product.", + "items": { + "type": "string" + }, + "type": "array" + }, + "collectionMethod": { + "description": "Optional. The method used to collect the review.", + "enum": [ + "COLLECTION_METHOD_UNSPECIFIED", + "UNSOLICITED", + "POST_FULFILLMENT" + ], + "enumDescriptions": [ + "Collection method unspecified.", + "The user was not responding to a specific solicitation when they submitted the review.", + "The user submitted the review in response to a solicitation after fulfillment of the user's order." + ], + "type": "string" + }, + "cons": { + "description": "Optional. Contains the disadvantages based on the opinion of the reviewer. Omit boilerplate text like \"con:\" unless it was written by the reviewer.", + "items": { + "type": "string" + }, + "type": "array" + }, + "content": { + "description": "Required. The content of the review.", + "type": "string" + }, + "gtins": { + "description": "Optional. Contains GTINs (global trade item numbers) associated with a product. Sub-types of GTINs (e.g. UPC, EAN, ISBN, JAN) are supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "isSpam": { + "description": "Optional. Indicates whether the review is marked as spam in the publisher's system.", + "type": "boolean" + }, + "maxRating": { + "description": "Optional. The maximum possible number for the rating. The value of the max rating must be greater than the value of the min attribute.", + "format": "int64", + "type": "string" + }, + "minRating": { + "description": "Optional. Contains the ratings associated with the review. The minimum possible number for the rating. This should be the worst possible rating and should not be a value for no rating.", + "format": "int64", + "type": "string" + }, + "mpns": { + "description": "Optional. Contains MPNs (manufacturer part numbers) associated with a product.", + "items": { + "type": "string" + }, + "type": "array" + }, + "productLinks": { + "description": "Optional. The URI of the product. This URI can have the same value as the `review_link` element, if the review URI and the product URI are the same.", + "items": { + "type": "string" + }, + "type": "array" + }, + "productNames": { + "description": "Optional. Descriptive name of a product.", + "items": { + "type": "string" + }, + "type": "array" + }, + "pros": { + "description": "Optional. Contains the advantages based on the opinion of the reviewer. Omit boilerplate text like \"pro:\" unless it was written by the reviewer.", + "items": { + "type": "string" + }, + "type": "array" + }, + "publisherFavicon": { + "description": "Optional. A link to the company favicon of the publisher. The image dimensions should be favicon size: 16x16 pixels. The image format should be GIF, JPG or PNG.", + "type": "string" + }, + "publisherName": { + "description": "Optional. The name of the publisher of the product reviews. The information about the publisher, which may be a retailer, manufacturer, reviews service company, or any entity that publishes product reviews.", + "type": "string" + }, + "rating": { + "description": "Optional. The reviewer's overall rating of the product.", + "format": "double", + "type": "number" + }, + "reviewCountry": { + "description": "Optional. The country of the review defined by ISO 3166-1 Alpha-2 Country Code.", + "type": "string" + }, + "reviewLanguage": { + "description": "Optional. The language of the review defined by BCP-47 language code.", + "type": "string" + }, + "reviewLink": { + "$ref": "ReviewLink", + "description": "Optional. The URI of the review landing page." + }, + "reviewTime": { + "description": "Required. The timestamp indicating when the review was written.", + "format": "google-datetime", + "type": "string" + }, + "reviewerId": { + "description": "Optional. The author of the product review. A permanent, unique identifier for the author of the review in the publisher's system.", + "type": "string" + }, + "reviewerImageLinks": { + "description": "Optional. A URI to an image of the reviewed product created by the review author. The URI does not have to end with an image file extension.", + "items": { + "type": "string" + }, + "type": "array" + }, + "reviewerIsAnonymous": { + "description": "Optional. Set to true if the reviewer should remain anonymous.", + "type": "boolean" + }, + "reviewerUsername": { + "description": "Optional. The name of the reviewer of the product review.", + "type": "string" + }, + "skus": { + "description": "Optional. Contains SKUs (stock keeping units) associated with a product. Often this matches the product Offer Id in the product feed.", + "items": { + "type": "string" + }, + "type": "array" + }, + "subclientName": { + "description": "Optional. The name of the subclient of the product reviews. The subclient is an identifier of the product review source. It should be equivalent to the directory provided in the file data source path.", + "type": "string" + }, + "title": { + "description": "Optional. The title of the review.", + "type": "string" + }, + "transactionId": { + "description": "Optional. A permanent, unique identifier for the transaction associated with the review in the publisher's system. This ID can be used to indicate that multiple reviews are associated with the same transaction.", + "type": "string" + } + }, + "type": "object" + }, + "ProductReviewDestinationStatus": { + "description": "The destination status of the product review status.", + "id": "ProductReviewDestinationStatus", + "properties": { + "reportingContext": { + "description": "Output only. The name of the reporting context.", + "enum": [ + "REPORTING_CONTEXT_ENUM_UNSPECIFIED", + "SHOPPING_ADS", + "DISCOVERY_ADS", + "DEMAND_GEN_ADS", + "DEMAND_GEN_ADS_DISCOVER_SURFACE", + "VIDEO_ADS", + "DISPLAY_ADS", + "LOCAL_INVENTORY_ADS", + "VEHICLE_INVENTORY_ADS", + "FREE_LISTINGS", + "FREE_LOCAL_LISTINGS", + "FREE_LOCAL_VEHICLE_LISTINGS", + "YOUTUBE_SHOPPING", + "CLOUD_RETAIL", + "LOCAL_CLOUD_RETAIL", + "PRODUCT_REVIEWS", + "MERCHANT_REVIEWS" + ], + "enumDeprecated": [ + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Not specified.", + "[Shopping ads](https://support.google.com/merchants/answer/6149970).", + "Deprecated: Use `DEMAND_GEN_ADS` instead. [Discovery and Demand Gen ads](https://support.google.com/merchants/answer/13389785).", + "[Demand Gen ads](https://support.google.com/merchants/answer/13389785).", + "[Demand Gen ads on Discover surface](https://support.google.com/merchants/answer/13389785).", + "[Video ads](https://support.google.com/google-ads/answer/6340491).", + "[Display ads](https://support.google.com/merchants/answer/6069387).", + "[Local inventory ads](https://support.google.com/merchants/answer/3271956).", + "[Vehicle inventory ads](https://support.google.com/merchants/answer/11544533).", + "[Free product listings](https://support.google.com/merchants/answer/9199328).", + "[Free local product listings](https://support.google.com/merchants/answer/9825611).", + "[Free local vehicle listings](https://support.google.com/merchants/answer/11544533).", + "[YouTube Shopping](https://support.google.com/merchants/answer/13478370).", + "[Cloud retail](https://cloud.google.com/solutions/retail).", + "[Local cloud retail](https://cloud.google.com/solutions/retail).", + "[Product Reviews](https://support.google.com/merchants/answer/14620732).", + "[Merchant Reviews](https://developers.google.com/merchant-review-feeds)." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ProductReviewItemLevelIssue": { + "description": "The ItemLevelIssue of the product review status.", + "id": "ProductReviewItemLevelIssue", + "properties": { + "attribute": { + "description": "Output only. The attribute's name, if the issue is caused by a single attribute.", + "readOnly": true, + "type": "string" + }, + "code": { + "description": "Output only. The error code of the issue.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Output only. A short issue description in English.", + "readOnly": true, + "type": "string" + }, + "detail": { + "description": "Output only. A detailed issue description in English.", + "readOnly": true, + "type": "string" + }, + "documentation": { + "description": "Output only. The URL of a web page to help with resolving this issue.", + "readOnly": true, + "type": "string" + }, + "reportingContext": { + "description": "Output only. The reporting context the issue applies to.", + "enum": [ + "REPORTING_CONTEXT_ENUM_UNSPECIFIED", + "SHOPPING_ADS", + "DISCOVERY_ADS", + "DEMAND_GEN_ADS", + "DEMAND_GEN_ADS_DISCOVER_SURFACE", + "VIDEO_ADS", + "DISPLAY_ADS", + "LOCAL_INVENTORY_ADS", + "VEHICLE_INVENTORY_ADS", + "FREE_LISTINGS", + "FREE_LOCAL_LISTINGS", + "FREE_LOCAL_VEHICLE_LISTINGS", + "YOUTUBE_SHOPPING", + "CLOUD_RETAIL", + "LOCAL_CLOUD_RETAIL", + "PRODUCT_REVIEWS", + "MERCHANT_REVIEWS" + ], + "enumDeprecated": [ + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Not specified.", + "[Shopping ads](https://support.google.com/merchants/answer/6149970).", + "Deprecated: Use `DEMAND_GEN_ADS` instead. [Discovery and Demand Gen ads](https://support.google.com/merchants/answer/13389785).", + "[Demand Gen ads](https://support.google.com/merchants/answer/13389785).", + "[Demand Gen ads on Discover surface](https://support.google.com/merchants/answer/13389785).", + "[Video ads](https://support.google.com/google-ads/answer/6340491).", + "[Display ads](https://support.google.com/merchants/answer/6069387).", + "[Local inventory ads](https://support.google.com/merchants/answer/3271956).", + "[Vehicle inventory ads](https://support.google.com/merchants/answer/11544533).", + "[Free product listings](https://support.google.com/merchants/answer/9199328).", + "[Free local product listings](https://support.google.com/merchants/answer/9825611).", + "[Free local vehicle listings](https://support.google.com/merchants/answer/11544533).", + "[YouTube Shopping](https://support.google.com/merchants/answer/13478370).", + "[Cloud retail](https://cloud.google.com/solutions/retail).", + "[Local cloud retail](https://cloud.google.com/solutions/retail).", + "[Product Reviews](https://support.google.com/merchants/answer/14620732).", + "[Merchant Reviews](https://developers.google.com/merchant-review-feeds)." + ], + "readOnly": true, + "type": "string" + }, + "resolution": { + "description": "Output only. Whether the issue can be resolved by the merchant.", + "readOnly": true, + "type": "string" + }, + "severity": { + "description": "Output only. How this issue affects serving of the product review.", + "enum": [ + "SEVERITY_UNSPECIFIED", + "NOT_IMPACTED", + "DISAPPROVED" + ], + "enumDescriptions": [ + "Not specified.", + "This issue represents a warning and does not have a direct affect on the product review.", + "Issue disapproves the product review." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ProductReviewStatus": { + "description": "Product review status.", + "id": "ProductReviewStatus", + "properties": { + "createTime": { + "description": "Output only. Date on which the item has been created, in [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) format.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "destinationStatuses": { + "description": "Output only. The intended destinations for the product review.", + "items": { + "$ref": "ProductReviewDestinationStatus" + }, + "readOnly": true, + "type": "array" + }, + "itemLevelIssues": { + "description": "Output only. A list of all issues associated with the product review.", + "items": { + "$ref": "ProductReviewItemLevelIssue" + }, + "readOnly": true, + "type": "array" + }, + "lastUpdateTime": { + "description": "Output only. Date on which the item has been last updated, in [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) format.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ProductStatusChangeMessage": { + "description": "The message that the merchant will receive to notify about product status change event", + "id": "ProductStatusChangeMessage", + "properties": { + "account": { + "description": "The target account that owns the entity that changed. Format : `accounts/{merchant_id}`", + "type": "string" + }, + "attribute": { + "description": "The attribute in the resource that changed, in this case it will be always `Status`.", + "enum": [ + "ATTRIBUTE_UNSPECIFIED", + "STATUS" + ], + "enumDescriptions": [ + "Unspecified attribute", + "Status of the changed entity" + ], + "type": "string" + }, + "changes": { + "description": "A message to describe the change that happened to the product", + "items": { + "$ref": "ProductChange" + }, + "type": "array" + }, + "managingAccount": { + "description": "The account that manages the merchant's account. can be the same as merchant id if it is standalone account. Format : `accounts/{service_provider_id}`", + "type": "string" + }, + "resource": { + "description": "The product name. Format: `{product.name=accounts/{account}/products/{product}}`", + "type": "string" + }, + "resourceId": { + "description": "The product id.", + "type": "string" + }, + "resourceType": { + "description": "The resource that changed, in this case it will always be `Product`.", + "enum": [ + "RESOURCE_UNSPECIFIED", + "PRODUCT" + ], + "enumDescriptions": [ + "Unspecified resource", + "Resource type : product" + ], + "type": "string" + } + }, + "type": "object" + }, + "ReviewLink": { + "description": "The URI of the review landing page.", + "id": "ReviewLink", + "properties": { + "link": { + "description": "Optional. The URI of the review landing page. For example: `http://www.example.com/review_5.html`.", + "type": "string" + }, + "type": { + "description": "Optional. Type of the review URI.", + "enum": [ + "TYPE_UNSPECIFIED", + "SINGLETON", + "GROUP" + ], + "enumDescriptions": [ + "Type unspecified.", + "The review page contains only this single review.", + "The review page contains a group of reviews including this review." + ], + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Merchant API", + "version": "reviews_v1beta", + "version_module": true +} \ No newline at end of file diff --git a/EnumStorage/merchantapi.reviews_v1beta.json b/EnumStorage/merchantapi.reviews_v1beta.json new file mode 100644 index 00000000000..feb1a3b2e3e --- /dev/null +++ b/EnumStorage/merchantapi.reviews_v1beta.json @@ -0,0 +1,11 @@ +{ + "Google.Apis.Merchant.reviews_v1beta.MerchantBaseServiceRequest<>.AltEnum": [ + "json", + "media", + "proto" + ], + "Google.Apis.Merchant.reviews_v1beta.MerchantBaseServiceRequest<>.XgafvEnum": [ + "1", + "2" + ] +} \ No newline at end of file diff --git a/Src/Generated/Google.Apis.Merchant.reviews_v1beta/Google.Apis.Merchant.reviews_v1beta.cs b/Src/Generated/Google.Apis.Merchant.reviews_v1beta/Google.Apis.Merchant.reviews_v1beta.cs new file mode 100644 index 00000000000..7838819fe37 --- /dev/null +++ b/Src/Generated/Google.Apis.Merchant.reviews_v1beta/Google.Apis.Merchant.reviews_v1beta.cs @@ -0,0 +1,1674 @@ +// Copyright 2024 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 +// +// https://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. + +// Generated code. DO NOT EDIT! + +namespace Google.Apis.Merchant.reviews_v1beta +{ + /// The Merchant Service. + public class MerchantService : Google.Apis.Services.BaseClientService + { + /// The API version. + public const string Version = "reviews_v1beta"; + + /// The discovery version used to generate this service. + public static Google.Apis.Discovery.DiscoveryVersion DiscoveryVersionUsed = Google.Apis.Discovery.DiscoveryVersion.Version_1_0; + + /// Constructs a new service. + public MerchantService() : this(new Google.Apis.Services.BaseClientService.Initializer()) + { + } + + /// Constructs a new service. + /// The service initializer. + public MerchantService(Google.Apis.Services.BaseClientService.Initializer initializer) : base(initializer) + { + Accounts = new AccountsResource(this); + BaseUri = GetEffectiveUri(BaseUriOverride, "https://merchantapi.googleapis.com/"); + BatchUri = GetEffectiveUri(null, "https://merchantapi.googleapis.com/batch"); + } + + /// Gets the service supported features. + public override System.Collections.Generic.IList Features => new string[0]; + + /// Gets the service name. + public override string Name => "merchantapi"; + + /// Gets the service base URI. + public override string BaseUri { get; } + + /// Gets the service base path. + public override string BasePath => ""; + + /// Gets the batch base URI; null if unspecified. + public override string BatchUri { get; } + + /// Gets the batch base path; null if unspecified. + public override string BatchPath => "batch"; + + /// Available OAuth 2.0 scopes for use with the Merchant API. + public class Scope + { + /// Manage your product listings and accounts for Google Shopping + public static string Content = "https://www.googleapis.com/auth/content"; + } + + /// Available OAuth 2.0 scope constants for use with the Merchant API. + public static class ScopeConstants + { + /// Manage your product listings and accounts for Google Shopping + public const string Content = "https://www.googleapis.com/auth/content"; + } + + /// Gets the Accounts resource. + public virtual AccountsResource Accounts { get; } + } + + /// A base abstract class for Merchant requests. + public abstract class MerchantBaseServiceRequest : Google.Apis.Requests.ClientServiceRequest + { + /// Constructs a new MerchantBaseServiceRequest instance. + protected MerchantBaseServiceRequest(Google.Apis.Services.IClientService service) : base(service) + { + } + + /// V1 error format. + [Google.Apis.Util.RequestParameterAttribute("$.xgafv", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Xgafv { get; set; } + + /// V1 error format. + public enum XgafvEnum + { + /// v1 error format + [Google.Apis.Util.StringValueAttribute("1")] + Value1 = 0, + + /// v2 error format + [Google.Apis.Util.StringValueAttribute("2")] + Value2 = 1, + } + + /// OAuth access token. + [Google.Apis.Util.RequestParameterAttribute("access_token", Google.Apis.Util.RequestParameterType.Query)] + public virtual string AccessToken { get; set; } + + /// Data format for response. + [Google.Apis.Util.RequestParameterAttribute("alt", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Alt { get; set; } + + /// Data format for response. + public enum AltEnum + { + /// Responses with Content-Type of application/json + [Google.Apis.Util.StringValueAttribute("json")] + Json = 0, + + /// Media download with context-dependent Content-Type + [Google.Apis.Util.StringValueAttribute("media")] + Media = 1, + + /// Responses with Content-Type of application/x-protobuf + [Google.Apis.Util.StringValueAttribute("proto")] + Proto = 2, + } + + /// JSONP + [Google.Apis.Util.RequestParameterAttribute("callback", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Callback { get; set; } + + /// Selector specifying which fields to include in a partial response. + [Google.Apis.Util.RequestParameterAttribute("fields", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Fields { get; set; } + + /// + /// API key. Your API key identifies your project and provides you with API access, quota, and reports. Required + /// unless you provide an OAuth 2.0 token. + /// + [Google.Apis.Util.RequestParameterAttribute("key", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Key { get; set; } + + /// OAuth 2.0 token for the current user. + [Google.Apis.Util.RequestParameterAttribute("oauth_token", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OauthToken { get; set; } + + /// Returns response with indentations and line breaks. + [Google.Apis.Util.RequestParameterAttribute("prettyPrint", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PrettyPrint { get; set; } + + /// + /// Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a + /// user, but should not exceed 40 characters. + /// + [Google.Apis.Util.RequestParameterAttribute("quotaUser", Google.Apis.Util.RequestParameterType.Query)] + public virtual string QuotaUser { get; set; } + + /// Legacy upload protocol for media (e.g. "media", "multipart"). + [Google.Apis.Util.RequestParameterAttribute("uploadType", Google.Apis.Util.RequestParameterType.Query)] + public virtual string UploadType { get; set; } + + /// Upload protocol for media (e.g. "raw", "multipart"). + [Google.Apis.Util.RequestParameterAttribute("upload_protocol", Google.Apis.Util.RequestParameterType.Query)] + public virtual string UploadProtocol { get; set; } + + /// Initializes Merchant parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("$.xgafv", new Google.Apis.Discovery.Parameter + { + Name = "$.xgafv", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("access_token", new Google.Apis.Discovery.Parameter + { + Name = "access_token", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("alt", new Google.Apis.Discovery.Parameter + { + Name = "alt", + IsRequired = false, + ParameterType = "query", + DefaultValue = "json", + Pattern = null, + }); + RequestParameters.Add("callback", new Google.Apis.Discovery.Parameter + { + Name = "callback", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("fields", new Google.Apis.Discovery.Parameter + { + Name = "fields", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("key", new Google.Apis.Discovery.Parameter + { + Name = "key", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("oauth_token", new Google.Apis.Discovery.Parameter + { + Name = "oauth_token", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("prettyPrint", new Google.Apis.Discovery.Parameter + { + Name = "prettyPrint", + IsRequired = false, + ParameterType = "query", + DefaultValue = "true", + Pattern = null, + }); + RequestParameters.Add("quotaUser", new Google.Apis.Discovery.Parameter + { + Name = "quotaUser", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("uploadType", new Google.Apis.Discovery.Parameter + { + Name = "uploadType", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("upload_protocol", new Google.Apis.Discovery.Parameter + { + Name = "upload_protocol", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// The "accounts" collection of methods. + public class AccountsResource + { + private const string Resource = "accounts"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public AccountsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + MerchantReviews = new MerchantReviewsResource(service); + ProductReviews = new ProductReviewsResource(service); + } + + /// Gets the MerchantReviews resource. + public virtual MerchantReviewsResource MerchantReviews { get; } + + /// The "merchantReviews" collection of methods. + public class MerchantReviewsResource + { + private const string Resource = "merchantReviews"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public MerchantReviewsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// Deletes merchant review. + /// + /// Required. The ID of the merchant review. Format: accounts/{account}/merchantReviews/{merchantReview} + /// + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(this.service, name); + } + + /// Deletes merchant review. + public class DeleteRequest : MerchantBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// + /// Required. The ID of the merchant review. Format: accounts/{account}/merchantReviews/{merchantReview} + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "reviews/v1beta/{+name}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^accounts/[^/]+/merchantReviews/[^/]+$", + }); + } + } + + /// Gets a merchant review. + /// + /// Required. The ID of the merchant review. Format: accounts/{account}/merchantReviews/{merchantReview} + /// + public virtual GetRequest Get(string name) + { + return new GetRequest(this.service, name); + } + + /// Gets a merchant review. + public class GetRequest : MerchantBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// + /// Required. The ID of the merchant review. Format: accounts/{account}/merchantReviews/{merchantReview} + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "reviews/v1beta/{+name}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^accounts/[^/]+/merchantReviews/[^/]+$", + }); + } + } + + /// + /// Inserts a review for your Merchant Center account. If the review already exists, then the review is + /// replaced with the new instance. + /// + /// The body of the request. + /// + /// Required. The account where the merchant review will be inserted. Format: accounts/{account} + /// + public virtual InsertRequest Insert(Google.Apis.Merchant.reviews_v1beta.Data.MerchantReview body, string parent) + { + return new InsertRequest(this.service, body, parent); + } + + /// + /// Inserts a review for your Merchant Center account. If the review already exists, then the review is + /// replaced with the new instance. + /// + public class InsertRequest : MerchantBaseServiceRequest + { + /// Constructs a new Insert request. + public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Merchant.reviews_v1beta.Data.MerchantReview body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// + /// Required. The account where the merchant review will be inserted. Format: accounts/{account} + /// + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Required. The data source of the + /// [merchantreview](https://support.google.com/merchants/answer/7045996?sjid=5253581244217581976-EU) + /// Format: `accounts/{account}/dataSources/{datasource}`. + /// + [Google.Apis.Util.RequestParameterAttribute("dataSource", Google.Apis.Util.RequestParameterType.Query)] + public virtual string DataSource { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Merchant.reviews_v1beta.Data.MerchantReview Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "insert"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "reviews/v1beta/{+parent}/merchantReviews:insert"; + + /// Initializes Insert parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^accounts/[^/]+$", + }); + RequestParameters.Add("dataSource", new Google.Apis.Discovery.Parameter + { + Name = "dataSource", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Lists merchant reviews. + /// + /// Required. The account to list merchant reviews for. Format: accounts/{account} + /// + public virtual ListRequest List(string parent) + { + return new ListRequest(this.service, parent); + } + + /// Lists merchant reviews. + public class ListRequest : MerchantBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } + + /// Required. The account to list merchant reviews for. Format: accounts/{account} + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Optional. The maximum number of merchant reviews to return. The service can return fewer than this + /// value. The maximum value is 1000; values above 1000 are coerced to 1000. If unspecified, the maximum + /// number of reviews is returned. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// Optional. A page token, received from a previous `ListMerchantReviews` call. Provide this to + /// retrieve the subsequent page. When paginating, all other parameters provided to + /// `ListMerchantReviews` must match the call that provided the page token. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "reviews/v1beta/{+parent}/merchantReviews"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^accounts/[^/]+$", + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + + /// Gets the ProductReviews resource. + public virtual ProductReviewsResource ProductReviews { get; } + + /// The "productReviews" collection of methods. + public class ProductReviewsResource + { + private const string Resource = "productReviews"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public ProductReviewsResource(Google.Apis.Services.IClientService service) + { + this.service = service; + } + + /// Deletes a product review. + /// + /// Required. The ID of the Product review. Format: accounts/{account}/productReviews/{productReview} + /// + public virtual DeleteRequest Delete(string name) + { + return new DeleteRequest(this.service, name); + } + + /// Deletes a product review. + public class DeleteRequest : MerchantBaseServiceRequest + { + /// Constructs a new Delete request. + public DeleteRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// + /// Required. The ID of the Product review. Format: accounts/{account}/productReviews/{productReview} + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "delete"; + + /// Gets the HTTP method. + public override string HttpMethod => "DELETE"; + + /// Gets the REST path. + public override string RestPath => "reviews/v1beta/{+name}"; + + /// Initializes Delete parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^accounts/[^/]+/productReviews/[^/]+$", + }); + } + } + + /// Gets a product review. + /// + /// Required. The ID of the merchant review. Format: accounts/{account}/productReviews/{productReview} + /// + public virtual GetRequest Get(string name) + { + return new GetRequest(this.service, name); + } + + /// Gets a product review. + public class GetRequest : MerchantBaseServiceRequest + { + /// Constructs a new Get request. + public GetRequest(Google.Apis.Services.IClientService service, string name) : base(service) + { + Name = name; + InitParameters(); + } + + /// + /// Required. The ID of the merchant review. Format: accounts/{account}/productReviews/{productReview} + /// + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Name { get; private set; } + + /// Gets the method name. + public override string MethodName => "get"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "reviews/v1beta/{+name}"; + + /// Initializes Get parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("name", new Google.Apis.Discovery.Parameter + { + Name = "name", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^accounts/[^/]+/productReviews/[^/]+$", + }); + } + } + + /// Inserts a product review. + /// The body of the request. + /// + /// Required. The account where the product review will be inserted. Format: accounts/{account} + /// + public virtual InsertRequest Insert(Google.Apis.Merchant.reviews_v1beta.Data.ProductReview body, string parent) + { + return new InsertRequest(this.service, body, parent); + } + + /// Inserts a product review. + public class InsertRequest : MerchantBaseServiceRequest + { + /// Constructs a new Insert request. + public InsertRequest(Google.Apis.Services.IClientService service, Google.Apis.Merchant.reviews_v1beta.Data.ProductReview body, string parent) : base(service) + { + Parent = parent; + Body = body; + InitParameters(); + } + + /// + /// Required. The account where the product review will be inserted. Format: accounts/{account} + /// + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// Required. Format: `accounts/{account}/dataSources/{datasource}`. + [Google.Apis.Util.RequestParameterAttribute("dataSource", Google.Apis.Util.RequestParameterType.Query)] + public virtual string DataSource { get; set; } + + /// Gets or sets the body of this request. + Google.Apis.Merchant.reviews_v1beta.Data.ProductReview Body { get; set; } + + /// Returns the body of the request. + protected override object GetBody() => Body; + + /// Gets the method name. + public override string MethodName => "insert"; + + /// Gets the HTTP method. + public override string HttpMethod => "POST"; + + /// Gets the REST path. + public override string RestPath => "reviews/v1beta/{+parent}/productReviews:insert"; + + /// Initializes Insert parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^accounts/[^/]+$", + }); + RequestParameters.Add("dataSource", new Google.Apis.Discovery.Parameter + { + Name = "dataSource", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + + /// Lists product reviews. + /// + /// Required. The account to list product reviews for. Format: accounts/{account} + /// + public virtual ListRequest List(string parent) + { + return new ListRequest(this.service, parent); + } + + /// Lists product reviews. + public class ListRequest : MerchantBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) : base(service) + { + Parent = parent; + InitParameters(); + } + + /// Required. The account to list product reviews for. Format: accounts/{account} + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + /// + /// Optional. The maximum number of products to return. The service may return fewer than this value. + /// + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// + /// Optional. A page token, received from a previous `ListProductReviews` call. Provide this to retrieve + /// the subsequent page. When paginating, all other parameters provided to `ListProductReviews` must + /// match the call that provided the page token. + /// + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Gets the method name. + public override string MethodName => "list"; + + /// Gets the HTTP method. + public override string HttpMethod => "GET"; + + /// Gets the REST path. + public override string RestPath => "reviews/v1beta/{+parent}/productReviews"; + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + RequestParameters.Add("parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^accounts/[^/]+$", + }); + RequestParameters.Add("pageSize", new Google.Apis.Discovery.Parameter + { + Name = "pageSize", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add("pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); + } + } + } + } +} +namespace Google.Apis.Merchant.reviews_v1beta.Data +{ + /// + /// A message that represents custom attributes. Exactly one of `value` or `group_values` must not be empty. + /// + public class CustomAttribute : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Subattributes within this attribute group. If `group_values` is not empty, `value` must be empty. + /// + [Newtonsoft.Json.JsonPropertyAttribute("groupValues")] + public virtual System.Collections.Generic.IList GroupValues { get; set; } + + /// The name of the attribute. + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// The value of the attribute. If `value` is not empty, `group_values` must be empty. + [Newtonsoft.Json.JsonPropertyAttribute("value")] + public virtual string Value { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical + /// example is to use it as the request or the response type of an API method. For instance: service Foo { rpc + /// Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } + /// + public class Empty : Google.Apis.Requests.IDirectResponseSchema + { + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Response message for the `ListMerchantsReview` method. + public class ListMerchantReviewsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// The merchant review. + [Newtonsoft.Json.JsonPropertyAttribute("merchantReviews")] + public virtual System.Collections.Generic.IList MerchantReviews { get; set; } + + /// The token to retrieve the next page of results. + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// response message for the ListProductReviews method. + public class ListProductReviewsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no + /// subsequent pages. + /// + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + + /// The product review. + [Newtonsoft.Json.JsonPropertyAttribute("productReviews")] + public virtual System.Collections.Generic.IList ProductReviews { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// A review for a merchant. For more information, see [Introduction to Merchant Review + /// Feeds](https://developers.google.com/merchant-review-feeds) + /// + public class MerchantReview : Google.Apis.Requests.IDirectResponseSchema + { + /// Optional. A list of merchant review attributes. + [Newtonsoft.Json.JsonPropertyAttribute("attributes")] + public virtual MerchantReviewAttributes Attributes { get; set; } + + /// + /// Required. A list of custom (merchant-provided) attributes. It can also be used for submitting any attribute + /// of the data specification in its generic form (for example, `{ "name": "size type", "value": "regular" }`). + /// This is useful for submitting attributes not explicitly exposed by the API, such as experimental attributes. + /// Maximum allowed number of characters for each custom attribute is 10240 (represents sum of characters for + /// name and value). Maximum 2500 custom attributes can be set per product, with total size of 102.4kB. + /// Underscores in custom attribute names are replaced by spaces upon insertion. + /// + [Newtonsoft.Json.JsonPropertyAttribute("customAttributes")] + public virtual System.Collections.Generic.IList CustomAttributes { get; set; } + + /// Output only. The primary data source of the merchant review. + [Newtonsoft.Json.JsonPropertyAttribute("dataSource")] + public virtual string DataSource { get; set; } + + /// Required. The user provided merchant review ID to uniquely identify the merchant review. + [Newtonsoft.Json.JsonPropertyAttribute("merchantReviewId")] + public virtual string MerchantReviewId { get; set; } + + /// + /// Output only. The status of a merchant review, data validation issues, that is, information about a merchant + /// review computed asynchronously. + /// + [Newtonsoft.Json.JsonPropertyAttribute("merchantReviewStatus")] + public virtual MerchantReviewStatus MerchantReviewStatus { get; set; } + + /// + /// Identifier. The name of the merchant review. Format: + /// `"{merchantreview.name=accounts/{account}/merchantReviews/{merchantReview}}"` + /// + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Attributes. + public class MerchantReviewAttributes : Google.Apis.Requests.IDirectResponseSchema + { + /// Optional. The method used to collect the review. + [Newtonsoft.Json.JsonPropertyAttribute("collectionMethod")] + public virtual string CollectionMethod { get; set; } + + /// + /// Required. This should be any freeform text provided by the user and should not be truncated. If multiple + /// responses to different questions are provided, all responses should be included, with the minimal context + /// for the responses to make sense. Context should not be provided if questions were left unanswered. + /// + [Newtonsoft.Json.JsonPropertyAttribute("content")] + public virtual string Content { get; set; } + + /// Optional. Set to true if the reviewer should remain anonymous. + [Newtonsoft.Json.JsonPropertyAttribute("isAnonymous")] + public virtual System.Nullable IsAnonymous { get; set; } + + /// + /// Optional. The maximum possible number for the rating. The value of the max rating must be greater than the + /// value of the min rating. + /// + [Newtonsoft.Json.JsonPropertyAttribute("maxRating")] + public virtual System.Nullable MaxRating { get; set; } + + /// Optional. Human-readable display name for the merchant. + [Newtonsoft.Json.JsonPropertyAttribute("merchantDisplayName")] + public virtual string MerchantDisplayName { get; set; } + + /// + /// Required. Must be unique and stable across all requests. In other words, if a request today and another 90 + /// days ago refer to the same merchant, they must have the same id. + /// + [Newtonsoft.Json.JsonPropertyAttribute("merchantId")] + public virtual string MerchantId { get; set; } + + /// + /// Optional. URL to the merchant's main website. Do not use a redirect URL for this value. In other words, the + /// value should point directly to the merchant's site. + /// + [Newtonsoft.Json.JsonPropertyAttribute("merchantLink")] + public virtual string MerchantLink { get; set; } + + /// + /// Optional. URL to the landing page that hosts the reviews for this merchant. Do not use a redirect URL. + /// + [Newtonsoft.Json.JsonPropertyAttribute("merchantRatingLink")] + public virtual string MerchantRatingLink { get; set; } + + /// + /// Optional. The minimum possible number for the rating. This should be the worst possible rating and should + /// not be a value for no rating. + /// + [Newtonsoft.Json.JsonPropertyAttribute("minRating")] + public virtual System.Nullable MinRating { get; set; } + + /// Optional. The reviewer's overall rating of the merchant. + [Newtonsoft.Json.JsonPropertyAttribute("rating")] + public virtual System.Nullable Rating { get; set; } + + /// + /// Optional. The country where the reviewer made the order defined by ISO 3166-1 Alpha-2 Country Code. + /// + [Newtonsoft.Json.JsonPropertyAttribute("reviewCountry")] + public virtual string ReviewCountry { get; set; } + + /// Required. The language of the review defined by BCP-47 language code. + [Newtonsoft.Json.JsonPropertyAttribute("reviewLanguage")] + public virtual string ReviewLanguage { get; set; } + + private string _reviewTimeRaw; + + private object _reviewTime; + + /// Required. The timestamp indicating when the review was written. + [Newtonsoft.Json.JsonPropertyAttribute("reviewTime")] + public virtual string ReviewTimeRaw + { + get => _reviewTimeRaw; + set + { + _reviewTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _reviewTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use ReviewTimeDateTimeOffset instead.")] + public virtual object ReviewTime + { + get => _reviewTime; + set + { + _reviewTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _reviewTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? ReviewTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(ReviewTimeRaw); + set => ReviewTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// + /// Optional. A permanent, unique identifier for the author of the review in the publisher's system. + /// + [Newtonsoft.Json.JsonPropertyAttribute("reviewerId")] + public virtual string ReviewerId { get; set; } + + /// Optional. Display name of the review author. + [Newtonsoft.Json.JsonPropertyAttribute("reviewerUsername")] + public virtual string ReviewerUsername { get; set; } + + /// Optional. The title of the review. + [Newtonsoft.Json.JsonPropertyAttribute("title")] + public virtual string Title { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The destination status of the merchant review status. + public class MerchantReviewDestinationStatus : Google.Apis.Requests.IDirectResponseSchema + { + /// Output only. The name of the reporting context. + [Newtonsoft.Json.JsonPropertyAttribute("reportingContext")] + public virtual string ReportingContext { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The ItemLevelIssue of the merchant review status. + public class MerchantReviewItemLevelIssue : Google.Apis.Requests.IDirectResponseSchema + { + /// Output only. The attribute's name, if the issue is caused by a single attribute. + [Newtonsoft.Json.JsonPropertyAttribute("attribute")] + public virtual string Attribute { get; set; } + + /// Output only. The error code of the issue. + [Newtonsoft.Json.JsonPropertyAttribute("code")] + public virtual string Code { get; set; } + + /// Output only. A short issue description in English. + [Newtonsoft.Json.JsonPropertyAttribute("description")] + public virtual string Description { get; set; } + + /// Output only. A detailed issue description in English. + [Newtonsoft.Json.JsonPropertyAttribute("detail")] + public virtual string Detail { get; set; } + + /// Output only. The URL of a web page to help with resolving this issue. + [Newtonsoft.Json.JsonPropertyAttribute("documentation")] + public virtual string Documentation { get; set; } + + /// Output only. The reporting context the issue applies to. + [Newtonsoft.Json.JsonPropertyAttribute("reportingContext")] + public virtual string ReportingContext { get; set; } + + /// Output only. Whether the issue can be resolved by the merchant. + [Newtonsoft.Json.JsonPropertyAttribute("resolution")] + public virtual string Resolution { get; set; } + + /// Output only. How this issue affects serving of the merchant review. + [Newtonsoft.Json.JsonPropertyAttribute("severity")] + public virtual string Severity { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// The status of a merchant review, data validation issues, that is, information about a merchant review computed + /// asynchronously. + /// + public class MerchantReviewStatus : Google.Apis.Requests.IDirectResponseSchema + { + private string _createTimeRaw; + + private object _createTime; + + /// + /// Output only. Date on which the item has been created, in [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) + /// format. + /// + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw + { + get => _createTimeRaw; + set + { + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime + { + get => _createTime; + set + { + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// Output only. The intended destinations for the merchant review. + [Newtonsoft.Json.JsonPropertyAttribute("destinationStatuses")] + public virtual System.Collections.Generic.IList DestinationStatuses { get; set; } + + /// Output only. A list of all issues associated with the merchant review. + [Newtonsoft.Json.JsonPropertyAttribute("itemLevelIssues")] + public virtual System.Collections.Generic.IList ItemLevelIssues { get; set; } + + private string _lastUpdateTimeRaw; + + private object _lastUpdateTime; + + /// + /// Output only. Date on which the item has been last updated, in [ISO + /// 8601](http://en.wikipedia.org/wiki/ISO_8601) format. + /// + [Newtonsoft.Json.JsonPropertyAttribute("lastUpdateTime")] + public virtual string LastUpdateTimeRaw + { + get => _lastUpdateTimeRaw; + set + { + _lastUpdateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _lastUpdateTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use LastUpdateTimeDateTimeOffset instead.")] + public virtual object LastUpdateTime + { + get => _lastUpdateTime; + set + { + _lastUpdateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _lastUpdateTime = value; + } + } + + /// + /// representation of . + /// + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? LastUpdateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(LastUpdateTimeRaw); + set => LastUpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// The change that happened to the product including old value, new value, country code as the region code and + /// reporting context. + /// + public class ProductChange : Google.Apis.Requests.IDirectResponseSchema + { + /// The new value of the changed resource or attribute. + [Newtonsoft.Json.JsonPropertyAttribute("newValue")] + public virtual string NewValue { get; set; } + + /// The old value of the changed resource or attribute. + [Newtonsoft.Json.JsonPropertyAttribute("oldValue")] + public virtual string OldValue { get; set; } + + /// Countries that have the change (if applicable) + [Newtonsoft.Json.JsonPropertyAttribute("regionCode")] + public virtual string RegionCode { get; set; } + + /// Reporting contexts that have the change (if applicable) + [Newtonsoft.Json.JsonPropertyAttribute("reportingContext")] + public virtual string ReportingContext { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// + /// A review for a product. For more information, see [Introduction to Product Review + /// Feeds](https://developers.google.com/product-review-feeds) + /// + public class ProductReview : Google.Apis.Requests.IDirectResponseSchema + { + /// Optional. A list of product review attributes. + [Newtonsoft.Json.JsonPropertyAttribute("attributes")] + public virtual ProductReviewAttributes Attributes { get; set; } + + /// Optional. A list of custom (merchant-provided) attributes. + [Newtonsoft.Json.JsonPropertyAttribute("customAttributes")] + public virtual System.Collections.Generic.IList CustomAttributes { get; set; } + + /// Output only. The primary data source of the product review. + [Newtonsoft.Json.JsonPropertyAttribute("dataSource")] + public virtual string DataSource { get; set; } + + /// + /// Identifier. The name of the product review. Format: + /// `"{productreview.name=accounts/{account}/productReviews/{productReview}}"` + /// + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// + /// Required. The permanent, unique identifier for the product review in the publisherā€™s system. + /// + [Newtonsoft.Json.JsonPropertyAttribute("productReviewId")] + public virtual string ProductReviewId { get; set; } + + /// + /// Output only. The status of a product review, data validation issues, that is, information about a product + /// review computed asynchronously. + /// + [Newtonsoft.Json.JsonPropertyAttribute("productReviewStatus")] + public virtual ProductReviewStatus ProductReviewStatus { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Attributes. + public class ProductReviewAttributes : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Optional. The name of the aggregator of the product reviews. A publisher may use a reviews aggregator to + /// manage reviews and provide the feeds. This element indicates the use of an aggregator and contains + /// information about the aggregator. + /// + [Newtonsoft.Json.JsonPropertyAttribute("aggregatorName")] + public virtual string AggregatorName { get; set; } + + /// + /// Optional. Contains ASINs (Amazon Standard Identification Numbers) associated with a product. + /// + [Newtonsoft.Json.JsonPropertyAttribute("asins")] + public virtual System.Collections.Generic.IList Asins { get; set; } + + /// Optional. Contains brand names associated with a product. + [Newtonsoft.Json.JsonPropertyAttribute("brands")] + public virtual System.Collections.Generic.IList Brands { get; set; } + + /// Optional. The method used to collect the review. + [Newtonsoft.Json.JsonPropertyAttribute("collectionMethod")] + public virtual string CollectionMethod { get; set; } + + /// + /// Optional. Contains the disadvantages based on the opinion of the reviewer. Omit boilerplate text like "con:" + /// unless it was written by the reviewer. + /// + [Newtonsoft.Json.JsonPropertyAttribute("cons")] + public virtual System.Collections.Generic.IList Cons { get; set; } + + /// Required. The content of the review. + [Newtonsoft.Json.JsonPropertyAttribute("content")] + public virtual string Content { get; set; } + + /// + /// Optional. Contains GTINs (global trade item numbers) associated with a product. Sub-types of GTINs (e.g. + /// UPC, EAN, ISBN, JAN) are supported. + /// + [Newtonsoft.Json.JsonPropertyAttribute("gtins")] + public virtual System.Collections.Generic.IList Gtins { get; set; } + + /// Optional. Indicates whether the review is marked as spam in the publisher's system. + [Newtonsoft.Json.JsonPropertyAttribute("isSpam")] + public virtual System.Nullable IsSpam { get; set; } + + /// + /// Optional. The maximum possible number for the rating. The value of the max rating must be greater than the + /// value of the min attribute. + /// + [Newtonsoft.Json.JsonPropertyAttribute("maxRating")] + public virtual System.Nullable MaxRating { get; set; } + + /// + /// Optional. Contains the ratings associated with the review. The minimum possible number for the rating. This + /// should be the worst possible rating and should not be a value for no rating. + /// + [Newtonsoft.Json.JsonPropertyAttribute("minRating")] + public virtual System.Nullable MinRating { get; set; } + + /// Optional. Contains MPNs (manufacturer part numbers) associated with a product. + [Newtonsoft.Json.JsonPropertyAttribute("mpns")] + public virtual System.Collections.Generic.IList Mpns { get; set; } + + /// + /// Optional. The URI of the product. This URI can have the same value as the `review_link` element, if the + /// review URI and the product URI are the same. + /// + [Newtonsoft.Json.JsonPropertyAttribute("productLinks")] + public virtual System.Collections.Generic.IList ProductLinks { get; set; } + + /// Optional. Descriptive name of a product. + [Newtonsoft.Json.JsonPropertyAttribute("productNames")] + public virtual System.Collections.Generic.IList ProductNames { get; set; } + + /// + /// Optional. Contains the advantages based on the opinion of the reviewer. Omit boilerplate text like "pro:" + /// unless it was written by the reviewer. + /// + [Newtonsoft.Json.JsonPropertyAttribute("pros")] + public virtual System.Collections.Generic.IList Pros { get; set; } + + /// + /// Optional. A link to the company favicon of the publisher. The image dimensions should be favicon size: 16x16 + /// pixels. The image format should be GIF, JPG or PNG. + /// + [Newtonsoft.Json.JsonPropertyAttribute("publisherFavicon")] + public virtual string PublisherFavicon { get; set; } + + /// + /// Optional. The name of the publisher of the product reviews. The information about the publisher, which may + /// be a retailer, manufacturer, reviews service company, or any entity that publishes product reviews. + /// + [Newtonsoft.Json.JsonPropertyAttribute("publisherName")] + public virtual string PublisherName { get; set; } + + /// Optional. The reviewer's overall rating of the product. + [Newtonsoft.Json.JsonPropertyAttribute("rating")] + public virtual System.Nullable Rating { get; set; } + + /// Optional. The country of the review defined by ISO 3166-1 Alpha-2 Country Code. + [Newtonsoft.Json.JsonPropertyAttribute("reviewCountry")] + public virtual string ReviewCountry { get; set; } + + /// Optional. The language of the review defined by BCP-47 language code. + [Newtonsoft.Json.JsonPropertyAttribute("reviewLanguage")] + public virtual string ReviewLanguage { get; set; } + + /// Optional. The URI of the review landing page. + [Newtonsoft.Json.JsonPropertyAttribute("reviewLink")] + public virtual ReviewLink ReviewLink { get; set; } + + private string _reviewTimeRaw; + + private object _reviewTime; + + /// Required. The timestamp indicating when the review was written. + [Newtonsoft.Json.JsonPropertyAttribute("reviewTime")] + public virtual string ReviewTimeRaw + { + get => _reviewTimeRaw; + set + { + _reviewTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _reviewTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use ReviewTimeDateTimeOffset instead.")] + public virtual object ReviewTime + { + get => _reviewTime; + set + { + _reviewTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _reviewTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? ReviewTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(ReviewTimeRaw); + set => ReviewTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// + /// Optional. The author of the product review. A permanent, unique identifier for the author of the review in + /// the publisher's system. + /// + [Newtonsoft.Json.JsonPropertyAttribute("reviewerId")] + public virtual string ReviewerId { get; set; } + + /// + /// Optional. A URI to an image of the reviewed product created by the review author. The URI does not have to + /// end with an image file extension. + /// + [Newtonsoft.Json.JsonPropertyAttribute("reviewerImageLinks")] + public virtual System.Collections.Generic.IList ReviewerImageLinks { get; set; } + + /// Optional. Set to true if the reviewer should remain anonymous. + [Newtonsoft.Json.JsonPropertyAttribute("reviewerIsAnonymous")] + public virtual System.Nullable ReviewerIsAnonymous { get; set; } + + /// Optional. The name of the reviewer of the product review. + [Newtonsoft.Json.JsonPropertyAttribute("reviewerUsername")] + public virtual string ReviewerUsername { get; set; } + + /// + /// Optional. Contains SKUs (stock keeping units) associated with a product. Often this matches the product + /// Offer Id in the product feed. + /// + [Newtonsoft.Json.JsonPropertyAttribute("skus")] + public virtual System.Collections.Generic.IList Skus { get; set; } + + /// + /// Optional. The name of the subclient of the product reviews. The subclient is an identifier of the product + /// review source. It should be equivalent to the directory provided in the file data source path. + /// + [Newtonsoft.Json.JsonPropertyAttribute("subclientName")] + public virtual string SubclientName { get; set; } + + /// Optional. The title of the review. + [Newtonsoft.Json.JsonPropertyAttribute("title")] + public virtual string Title { get; set; } + + /// + /// Optional. A permanent, unique identifier for the transaction associated with the review in the publisher's + /// system. This ID can be used to indicate that multiple reviews are associated with the same transaction. + /// + [Newtonsoft.Json.JsonPropertyAttribute("transactionId")] + public virtual string TransactionId { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The destination status of the product review status. + public class ProductReviewDestinationStatus : Google.Apis.Requests.IDirectResponseSchema + { + /// Output only. The name of the reporting context. + [Newtonsoft.Json.JsonPropertyAttribute("reportingContext")] + public virtual string ReportingContext { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The ItemLevelIssue of the product review status. + public class ProductReviewItemLevelIssue : Google.Apis.Requests.IDirectResponseSchema + { + /// Output only. The attribute's name, if the issue is caused by a single attribute. + [Newtonsoft.Json.JsonPropertyAttribute("attribute")] + public virtual string Attribute { get; set; } + + /// Output only. The error code of the issue. + [Newtonsoft.Json.JsonPropertyAttribute("code")] + public virtual string Code { get; set; } + + /// Output only. A short issue description in English. + [Newtonsoft.Json.JsonPropertyAttribute("description")] + public virtual string Description { get; set; } + + /// Output only. A detailed issue description in English. + [Newtonsoft.Json.JsonPropertyAttribute("detail")] + public virtual string Detail { get; set; } + + /// Output only. The URL of a web page to help with resolving this issue. + [Newtonsoft.Json.JsonPropertyAttribute("documentation")] + public virtual string Documentation { get; set; } + + /// Output only. The reporting context the issue applies to. + [Newtonsoft.Json.JsonPropertyAttribute("reportingContext")] + public virtual string ReportingContext { get; set; } + + /// Output only. Whether the issue can be resolved by the merchant. + [Newtonsoft.Json.JsonPropertyAttribute("resolution")] + public virtual string Resolution { get; set; } + + /// Output only. How this issue affects serving of the product review. + [Newtonsoft.Json.JsonPropertyAttribute("severity")] + public virtual string Severity { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// Product review status. + public class ProductReviewStatus : Google.Apis.Requests.IDirectResponseSchema + { + private string _createTimeRaw; + + private object _createTime; + + /// + /// Output only. Date on which the item has been created, in [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) + /// format. + /// + [Newtonsoft.Json.JsonPropertyAttribute("createTime")] + public virtual string CreateTimeRaw + { + get => _createTimeRaw; + set + { + _createTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _createTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")] + public virtual object CreateTime + { + get => _createTime; + set + { + _createTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _createTime = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? CreateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(CreateTimeRaw); + set => CreateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// Output only. The intended destinations for the product review. + [Newtonsoft.Json.JsonPropertyAttribute("destinationStatuses")] + public virtual System.Collections.Generic.IList DestinationStatuses { get; set; } + + /// Output only. A list of all issues associated with the product review. + [Newtonsoft.Json.JsonPropertyAttribute("itemLevelIssues")] + public virtual System.Collections.Generic.IList ItemLevelIssues { get; set; } + + private string _lastUpdateTimeRaw; + + private object _lastUpdateTime; + + /// + /// Output only. Date on which the item has been last updated, in [ISO + /// 8601](http://en.wikipedia.org/wiki/ISO_8601) format. + /// + [Newtonsoft.Json.JsonPropertyAttribute("lastUpdateTime")] + public virtual string LastUpdateTimeRaw + { + get => _lastUpdateTimeRaw; + set + { + _lastUpdateTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _lastUpdateTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use LastUpdateTimeDateTimeOffset instead.")] + public virtual object LastUpdateTime + { + get => _lastUpdateTime; + set + { + _lastUpdateTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _lastUpdateTime = value; + } + } + + /// + /// representation of . + /// + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? LastUpdateTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(LastUpdateTimeRaw); + set => LastUpdateTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The message that the merchant will receive to notify about product status change event + public class ProductStatusChangeMessage : Google.Apis.Requests.IDirectResponseSchema + { + /// The target account that owns the entity that changed. Format : `accounts/{merchant_id}` + [Newtonsoft.Json.JsonPropertyAttribute("account")] + public virtual string Account { get; set; } + + /// The attribute in the resource that changed, in this case it will be always `Status`. + [Newtonsoft.Json.JsonPropertyAttribute("attribute")] + public virtual string Attribute { get; set; } + + /// A message to describe the change that happened to the product + [Newtonsoft.Json.JsonPropertyAttribute("changes")] + public virtual System.Collections.Generic.IList Changes { get; set; } + + /// + /// The account that manages the merchant's account. can be the same as merchant id if it is standalone account. + /// Format : `accounts/{service_provider_id}` + /// + [Newtonsoft.Json.JsonPropertyAttribute("managingAccount")] + public virtual string ManagingAccount { get; set; } + + /// The product name. Format: `{product.name=accounts/{account}/products/{product}}` + [Newtonsoft.Json.JsonPropertyAttribute("resource")] + public virtual string Resource { get; set; } + + /// The product id. + [Newtonsoft.Json.JsonPropertyAttribute("resourceId")] + public virtual string ResourceId { get; set; } + + /// The resource that changed, in this case it will always be `Product`. + [Newtonsoft.Json.JsonPropertyAttribute("resourceType")] + public virtual string ResourceType { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + /// The URI of the review landing page. + public class ReviewLink : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Optional. The URI of the review landing page. For example: `http://www.example.com/review_5.html`. + /// + [Newtonsoft.Json.JsonPropertyAttribute("link")] + public virtual string Link { get; set; } + + /// Optional. Type of the review URI. + [Newtonsoft.Json.JsonPropertyAttribute("type")] + public virtual string Type { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } +} diff --git a/Src/Generated/Google.Apis.Merchant.reviews_v1beta/Google.Apis.Merchant.reviews_v1beta.csproj b/Src/Generated/Google.Apis.Merchant.reviews_v1beta/Google.Apis.Merchant.reviews_v1beta.csproj new file mode 100644 index 00000000000..386dd03f61e --- /dev/null +++ b/Src/Generated/Google.Apis.Merchant.reviews_v1beta/Google.Apis.Merchant.reviews_v1beta.csproj @@ -0,0 +1,66 @@ + + + + + Google.Apis.Merchant.reviews_v1beta Client Library + 1.68.0.3575 + Google LLC + Copyright 2024 Google LLC + Google + https://github.com/google/google-api-dotnet-client + Apache-2.0 + git + https://github.com/google/google-api-dotnet-client + https://www.gstatic.com/images/branding/product/1x/google_developers_64dp.png + NuGetIcon.png + + Google APIs Client Library for working with Merchantapi reviews_v1beta. + + Product documentation is available at: + https://developers.devsite.corp.google.com/merchant/api + + API reference documentation for this package is available at: + https://googleapis.dev/dotnet/Google.Apis.Merchant.reviews_v1beta/latest/api/Google.Apis.Merchant.reviews_v1beta.html + + The source code for this package is available at: + https://github.com/google/google-api-dotnet-client/tree/master/Src/Generated/Google.Apis.Merchant.reviews_v1beta + + Supported Platforms: + - .NET Framework 4.6.2+ + - .NET Standard 2.0 + - .NET 6.0+ + + Incompatible platforms: + - .NET Framework < 4.6.2 + - Silverlight + - UWP (will build, but is known not to work at runtime) + - Xamarin/MAUI + - Windows 8 Apps + - Windows Phone 8.1 + - Windows Phone Silverlight 8.0 + + + + + + + + + + + netstandard2.0;net462;net6.0 + true + ..\..\..\google.apis.snk + portable + true + 1570,1587,1591 + + + + + + + + + + From 51898e104743b1de68e100f02702ee9b57ada001 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:12 -0700 Subject: [PATCH 45/61] feat: Generate Google.Apis.Networkconnectivity.v1 version 1.68.0.3569 --- DiscoveryJson/networkconnectivity.v1.json | 64 +++++++++++++++++-- .../Google.Apis.Networkconnectivity.v1.cs | 16 ++++- .../Google.Apis.Networkconnectivity.v1.csproj | 2 +- 3 files changed, 73 insertions(+), 9 deletions(-) diff --git a/DiscoveryJson/networkconnectivity.v1.json b/DiscoveryJson/networkconnectivity.v1.json index 39329670286..bdf80839713 100644 --- a/DiscoveryJson/networkconnectivity.v1.json +++ b/DiscoveryJson/networkconnectivity.v1.json @@ -2812,7 +2812,7 @@ } } }, - "revision": "20240923", + "revision": "20241009", "rootUrl": "https://networkconnectivity.googleapis.com/", "schemas": { "AcceptHubSpokeRequest": { @@ -2937,6 +2937,20 @@ "description": "This is used in PSC consumer ForwardingRule to control whether the PSC endpoint can be accessed from another region.", "type": "boolean" }, + "ipVersion": { + "description": "The requested IP version for the PSC connection.", + "enum": [ + "IP_VERSION_UNSPECIFIED", + "IPV4", + "IPV6" + ], + "enumDescriptions": [ + "Default value. We will use IPv4 or IPv6 depending on the IP version of first available subnetwork.", + "Will use IPv4 only.", + "Will use IPv6 only." + ], + "type": "string" + }, "network": { "description": "The resource path of the consumer network where PSC connections are allowed to be created in. Note, this network does not need be in the ConsumerPscConfig.project in the case of SharedVPC. Example: projects/{projectNumOrId}/global/networks/{networkId}.", "type": "string" @@ -3030,6 +3044,20 @@ "description": "The IP literal allocated on the consumer network for the PSC forwarding rule that is created to connect to the producer service attachment in this service connection map.", "type": "string" }, + "ipVersion": { + "description": "The requested IP version for the PSC connection.", + "enum": [ + "IP_VERSION_UNSPECIFIED", + "IPV4", + "IPV6" + ], + "enumDescriptions": [ + "Default value. We will use IPv4 or IPv6 depending on the IP version of first available subnetwork.", + "Will use IPv4 only.", + "Will use IPv6 only." + ], + "type": "string" + }, "network": { "description": "The consumer network whose PSC forwarding rule is connected to the service attachments in this service connection map. Note that the network could be on a different project (shared VPC).", "type": "string" @@ -3070,14 +3098,18 @@ "ACTIVE", "FAILED", "CREATING", - "DELETING" + "DELETING", + "CREATE_REPAIRING", + "DELETE_REPAIRING" ], "enumDescriptions": [ "An invalid state as the default case.", "The connection has been created successfully. However, for the up-to-date connection status, please use the service attachment's \"ConnectedEndpoint.status\" as the source of truth.", "The connection is not functional since some resources on the connection fail to be created.", "The connection is being created.", - "The connection is being deleted." + "The connection is being deleted.", + "The connection is being repaired to complete creation.", + "The connection is being repaired to complete deletion." ], "type": "string" } @@ -3480,7 +3512,7 @@ }, "migration": { "$ref": "Migration", - "description": "Optional. Should be present if usage is set to FOR_MIGRATION." + "description": "Optional. Must be present if usage is set to FOR_MIGRATION. This field is for internal use." }, "name": { "description": "Immutable. The name of an internal range. Format: projects/{project}/locations/{location}/internalRanges/{internal_range} See: https://google.aip.dev/122#fields-representing-resource-names", @@ -3552,7 +3584,7 @@ "Unspecified usage is allowed in calls which identify the resource by other fields and do not need Usage set to complete. These are, i.e.: GetInternalRange and DeleteInternalRange. Usage needs to be specified explicitly in CreateInternalRange or UpdateInternalRange calls.", "A VPC resource can use the reserved CIDR block by associating it with the internal range resource if usage is set to FOR_VPC.", "Ranges created with EXTERNAL_TO_VPC cannot be associated with VPC resources and are meant to block out address ranges for various use cases, like for example, usage on-prem, with dynamic route announcements via interconnect.", - "Ranges created FOR_MIGRATION can be used to lock a CIDR range between a source and target subnet. If usage is set to FOR_MIGRATION the peering value has to be set to FOR_SELF or default to FOR_SELF when unset." + "Ranges created FOR_MIGRATION can be used to lock a CIDR range between a source and target subnet. If usage is set to FOR_MIGRATION, the peering value has to be set to FOR_SELF or default to FOR_SELF when unset. This value is for internal use." ], "type": "string" }, @@ -4465,6 +4497,20 @@ "description": "The last Compute Engine operation to setup PSC connection.", "type": "string" }, + "ipVersion": { + "description": "The requested IP version for the PSC connection.", + "enum": [ + "IP_VERSION_UNSPECIFIED", + "IPV4", + "IPV6" + ], + "enumDescriptions": [ + "Default value. We will use IPv4 or IPv6 depending on the IP version of first available subnetwork.", + "Will use IPv4 only.", + "Will use IPv6 only." + ], + "type": "string" + }, "producerInstanceId": { "deprecated": true, "description": "Immutable. Deprecated. Use producer_instance_metadata instead. An immutable identifier for the producer instance.", @@ -4498,14 +4544,18 @@ "ACTIVE", "FAILED", "CREATING", - "DELETING" + "DELETING", + "CREATE_REPAIRING", + "DELETE_REPAIRING" ], "enumDescriptions": [ "An invalid state as the default case.", "The connection has been created successfully. However, for the up-to-date connection status, please use the created forwarding rule's \"PscConnectionStatus\" as the source of truth.", "The connection is not functional since some resources on the connection fail to be created.", "The connection is being created.", - "The connection is being deleted." + "The connection is being deleted.", + "The connection is being repaired to complete creation.", + "The connection is being repaired to complete deletion." ], "type": "string" } diff --git a/Src/Generated/Google.Apis.Networkconnectivity.v1/Google.Apis.Networkconnectivity.v1.cs b/Src/Generated/Google.Apis.Networkconnectivity.v1/Google.Apis.Networkconnectivity.v1.cs index 230a4340456..37f5e531bc9 100644 --- a/Src/Generated/Google.Apis.Networkconnectivity.v1/Google.Apis.Networkconnectivity.v1.cs +++ b/Src/Generated/Google.Apis.Networkconnectivity.v1/Google.Apis.Networkconnectivity.v1.cs @@ -6705,6 +6705,10 @@ public class ConsumerPscConfig : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("disableGlobalAccess")] public virtual System.Nullable DisableGlobalAccess { get; set; } + /// The requested IP version for the PSC connection. + [Newtonsoft.Json.JsonPropertyAttribute("ipVersion")] + public virtual string IpVersion { get; set; } + /// /// The resource path of the consumer network where PSC connections are allowed to be created in. Note, this /// network does not need be in the ConsumerPscConfig.project in the case of SharedVPC. Example: @@ -6778,6 +6782,10 @@ public class ConsumerPscConnection : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("ip")] public virtual string Ip { get; set; } + /// The requested IP version for the PSC connection. + [Newtonsoft.Json.JsonPropertyAttribute("ipVersion")] + public virtual string IpVersion { get; set; } + /// /// The consumer network whose PSC forwarding rule is connected to the service attachments in this service /// connection map. Note that the network could be on a different project (shared VPC). @@ -7412,7 +7420,9 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("labels")] public virtual System.Collections.Generic.IDictionary Labels { get; set; } - /// Optional. Should be present if usage is set to FOR_MIGRATION. + /// + /// Optional. Must be present if usage is set to FOR_MIGRATION. This field is for internal use. + /// [Newtonsoft.Json.JsonPropertyAttribute("migration")] public virtual Migration Migration { get; set; } @@ -8549,6 +8559,10 @@ public class PscConnection : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("gceOperation")] public virtual string GceOperation { get; set; } + /// The requested IP version for the PSC connection. + [Newtonsoft.Json.JsonPropertyAttribute("ipVersion")] + public virtual string IpVersion { get; set; } + /// /// Immutable. Deprecated. Use producer_instance_metadata instead. An immutable identifier for the producer /// instance. diff --git a/Src/Generated/Google.Apis.Networkconnectivity.v1/Google.Apis.Networkconnectivity.v1.csproj b/Src/Generated/Google.Apis.Networkconnectivity.v1/Google.Apis.Networkconnectivity.v1.csproj index a327e9979f1..6d8f708e5d3 100644 --- a/Src/Generated/Google.Apis.Networkconnectivity.v1/Google.Apis.Networkconnectivity.v1.csproj +++ b/Src/Generated/Google.Apis.Networkconnectivity.v1/Google.Apis.Networkconnectivity.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Networkconnectivity.v1 Client Library - 1.68.0.3553 + 1.68.0.3569 Google LLC Copyright 2024 Google LLC Google From 8205a13b68e29e6f54e9e2735882a7118b0ac422 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:15 -0700 Subject: [PATCH 46/61] feat: Generate Google.Apis.Networkconnectivity.v1alpha1 version 1.68.0.3569 --- DiscoveryJson/networkconnectivity.v1alpha1.json | 6 +++--- .../Google.Apis.Networkconnectivity.v1alpha1.cs | 4 +++- .../Google.Apis.Networkconnectivity.v1alpha1.csproj | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/DiscoveryJson/networkconnectivity.v1alpha1.json b/DiscoveryJson/networkconnectivity.v1alpha1.json index b0083408a3d..faeef469957 100644 --- a/DiscoveryJson/networkconnectivity.v1alpha1.json +++ b/DiscoveryJson/networkconnectivity.v1alpha1.json @@ -1116,7 +1116,7 @@ } } }, - "revision": "20240911", + "revision": "20241009", "rootUrl": "https://networkconnectivity.googleapis.com/", "schemas": { "AuditConfig": { @@ -1395,7 +1395,7 @@ }, "migration": { "$ref": "Migration", - "description": "Optional. Should be present if usage is set to FOR_MIGRATION." + "description": "Optional. Must be present if usage is set to FOR_MIGRATION. This field is for internal use." }, "name": { "description": "Immutable. The name of an internal range. Format: projects/{project}/locations/{location}/internalRanges/{internal_range} See: https://google.aip.dev/122#fields-representing-resource-names", @@ -1467,7 +1467,7 @@ "Unspecified usage is allowed in calls which identify the resource by other fields and do not need Usage set to complete. These are, i.e.: GetInternalRange and DeleteInternalRange. Usage needs to be specified explicitly in CreateInternalRange or UpdateInternalRange calls.", "A VPC resource can use the reserved CIDR block by associating it with the internal range resource if usage is set to FOR_VPC.", "Ranges created with EXTERNAL_TO_VPC cannot be associated with VPC resources and are meant to block out address ranges for various use cases such as usage on-premises, with dynamic route announcements via Interconnect.", - "Ranges created FOR_MIGRATION can be used to lock a CIDR range between a source and target subnet. If usage is set to FOR_MIGRATION the peering value has to be set to FOR_SELF or default to FOR_SELF when unset." + "Ranges created FOR_MIGRATION can be used to lock a CIDR range between a source and target subnet. If usage is set to FOR_MIGRATION the peering value has to be set to FOR_SELF or default to FOR_SELF when unset. This value is for internal use." ], "type": "string" }, diff --git a/Src/Generated/Google.Apis.Networkconnectivity.v1alpha1/Google.Apis.Networkconnectivity.v1alpha1.cs b/Src/Generated/Google.Apis.Networkconnectivity.v1alpha1/Google.Apis.Networkconnectivity.v1alpha1.cs index a324d716251..c8d58285c07 100644 --- a/Src/Generated/Google.Apis.Networkconnectivity.v1alpha1/Google.Apis.Networkconnectivity.v1alpha1.cs +++ b/Src/Generated/Google.Apis.Networkconnectivity.v1alpha1/Google.Apis.Networkconnectivity.v1alpha1.cs @@ -3052,7 +3052,9 @@ public virtual System.DateTimeOffset? CreateTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("labels")] public virtual System.Collections.Generic.IDictionary Labels { get; set; } - /// Optional. Should be present if usage is set to FOR_MIGRATION. + /// + /// Optional. Must be present if usage is set to FOR_MIGRATION. This field is for internal use. + /// [Newtonsoft.Json.JsonPropertyAttribute("migration")] public virtual Migration Migration { get; set; } diff --git a/Src/Generated/Google.Apis.Networkconnectivity.v1alpha1/Google.Apis.Networkconnectivity.v1alpha1.csproj b/Src/Generated/Google.Apis.Networkconnectivity.v1alpha1/Google.Apis.Networkconnectivity.v1alpha1.csproj index 6d8af56ffcc..230ee1a20c1 100644 --- a/Src/Generated/Google.Apis.Networkconnectivity.v1alpha1/Google.Apis.Networkconnectivity.v1alpha1.csproj +++ b/Src/Generated/Google.Apis.Networkconnectivity.v1alpha1/Google.Apis.Networkconnectivity.v1alpha1.csproj @@ -3,7 +3,7 @@ Google.Apis.Networkconnectivity.v1alpha1 Client Library - 1.68.0.3541 + 1.68.0.3569 Google LLC Copyright 2024 Google LLC Google From b89529afa177fc5f98f20e9100e901c094a6f341 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:18 -0700 Subject: [PATCH 47/61] feat: Generate Google.Apis.NetworkManagement.v1 version 1.68.0.3569 --- DiscoveryJson/networkmanagement.v1.json | 4 ++-- .../Google.Apis.NetworkManagement.v1.csproj | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/DiscoveryJson/networkmanagement.v1.json b/DiscoveryJson/networkmanagement.v1.json index 239a2e485ca..58c7b888a63 100644 --- a/DiscoveryJson/networkmanagement.v1.json +++ b/DiscoveryJson/networkmanagement.v1.json @@ -591,7 +591,7 @@ } } }, - "revision": "20240918", + "revision": "20241009", "rootUrl": "https://networkmanagement.googleapis.com/", "schemas": { "AbortInfo": { @@ -1238,7 +1238,7 @@ "Packet sent to a load balancer, which requires a proxy-only subnet and the subnet is not found.", "Packet sent to Cloud Nat without active NAT IPs.", "Packet is stuck in a routing loop.", - "Packet is dropped due to an unspecified reason inside a Google-managed service. Used only for return traces.", + "Packet is dropped inside a Google-managed service due to being delivered in return trace to an endpoint that doesn't match the endpoint the packet was sent from in forward trace. Used only for return traces.", "Packet is dropped due to a load balancer backend instance not having a network interface in the network expected by the load balancer.", "Packet is dropped due to a backend service named port not being defined on the instance group level.", "Packet is dropped due to a destination IP range being part of a Private NAT IP range.", diff --git a/Src/Generated/Google.Apis.NetworkManagement.v1/Google.Apis.NetworkManagement.v1.csproj b/Src/Generated/Google.Apis.NetworkManagement.v1/Google.Apis.NetworkManagement.v1.csproj index f9e9db6aca0..ffa5de32963 100644 --- a/Src/Generated/Google.Apis.NetworkManagement.v1/Google.Apis.NetworkManagement.v1.csproj +++ b/Src/Generated/Google.Apis.NetworkManagement.v1/Google.Apis.NetworkManagement.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.NetworkManagement.v1 Client Library - 1.68.0.3548 + 1.68.0.3569 Google LLC Copyright 2024 Google LLC Google From 9aade929ee2954ea83858dc00662bf60e44ae93d Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:21 -0700 Subject: [PATCH 48/61] feat: Generate Google.Apis.NetworkManagement.v1beta1 version 1.68.0.3569 --- DiscoveryJson/networkmanagement.v1beta1.json | 4 ++-- .../Google.Apis.NetworkManagement.v1beta1.csproj | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/DiscoveryJson/networkmanagement.v1beta1.json b/DiscoveryJson/networkmanagement.v1beta1.json index f033dd10e24..fde33ae4273 100644 --- a/DiscoveryJson/networkmanagement.v1beta1.json +++ b/DiscoveryJson/networkmanagement.v1beta1.json @@ -758,7 +758,7 @@ } } }, - "revision": "20240918", + "revision": "20241009", "rootUrl": "https://networkmanagement.googleapis.com/", "schemas": { "AbortInfo": { @@ -1410,7 +1410,7 @@ "Packet sent to a load balancer, which requires a proxy-only subnet and the subnet is not found.", "Packet sent to Cloud Nat without active NAT IPs.", "Packet is stuck in a routing loop.", - "Packet is dropped due to an unspecified reason inside a Google-managed service. Used only for return traces.", + "Packet is dropped inside a Google-managed service due to being delivered in return trace to an endpoint that doesn't match the endpoint the packet was sent from in forward trace. Used only for return traces.", "Packet is dropped due to a load balancer backend instance not having a network interface in the network expected by the load balancer.", "Packet is dropped due to a backend service named port not being defined on the instance group level.", "Packet is dropped due to a destination IP range being part of a Private NAT IP range.", diff --git a/Src/Generated/Google.Apis.NetworkManagement.v1beta1/Google.Apis.NetworkManagement.v1beta1.csproj b/Src/Generated/Google.Apis.NetworkManagement.v1beta1/Google.Apis.NetworkManagement.v1beta1.csproj index a0ea6e99c68..28ce1a466f8 100644 --- a/Src/Generated/Google.Apis.NetworkManagement.v1beta1/Google.Apis.NetworkManagement.v1beta1.csproj +++ b/Src/Generated/Google.Apis.NetworkManagement.v1beta1/Google.Apis.NetworkManagement.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.NetworkManagement.v1beta1 Client Library - 1.68.0.3548 + 1.68.0.3569 Google LLC Copyright 2024 Google LLC Google From 3a76fed00910cb6862d7a67a0d0b009db69ce30b Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:24 -0700 Subject: [PATCH 49/61] feat: Generate Google.Apis.OracleDatabase.v1 version 1.68.0.3569 --- DiscoveryJson/oracledatabase.v1.json | 11 +++++++---- .../Google.Apis.OracleDatabase.v1.cs | 6 +++--- .../Google.Apis.OracleDatabase.v1.csproj | 2 +- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/DiscoveryJson/oracledatabase.v1.json b/DiscoveryJson/oracledatabase.v1.json index 52dd18df47c..985da39f035 100644 --- a/DiscoveryJson/oracledatabase.v1.json +++ b/DiscoveryJson/oracledatabase.v1.json @@ -1119,7 +1119,7 @@ } } }, - "revision": "20241002", + "revision": "20241009", "rootUrl": "https://oracledatabase.googleapis.com/", "schemas": { "AllConnectionStrings": { @@ -2237,8 +2237,9 @@ "type": "integer" }, "cpuCount": { - "description": "Optional. The number of enabled CPU cores.", + "description": "Output only. The number of enabled CPU cores.", "format": "int32", + "readOnly": true, "type": "integer" }, "customerContacts": { @@ -2255,8 +2256,9 @@ "type": "number" }, "dbNodeStorageSizeGb": { - "description": "Optional. The local node storage allocated in GBs.", + "description": "Output only. The local node storage allocated in GBs.", "format": "int32", + "readOnly": true, "type": "integer" }, "dbServerVersion": { @@ -2293,8 +2295,9 @@ "type": "integer" }, "memorySizeGb": { - "description": "Optional. The memory allocated in GBs.", + "description": "Output only. The memory allocated in GBs.", "format": "int32", + "readOnly": true, "type": "integer" }, "monthlyDbServerVersion": { diff --git a/Src/Generated/Google.Apis.OracleDatabase.v1/Google.Apis.OracleDatabase.v1.cs b/Src/Generated/Google.Apis.OracleDatabase.v1/Google.Apis.OracleDatabase.v1.cs index 07c4228844f..5b68b764a5c 100644 --- a/Src/Generated/Google.Apis.OracleDatabase.v1/Google.Apis.OracleDatabase.v1.cs +++ b/Src/Generated/Google.Apis.OracleDatabase.v1/Google.Apis.OracleDatabase.v1.cs @@ -3793,7 +3793,7 @@ public class CloudExadataInfrastructureProperties : Google.Apis.Requests.IDirect [Newtonsoft.Json.JsonPropertyAttribute("computeCount")] public virtual System.Nullable ComputeCount { get; set; } - /// Optional. The number of enabled CPU cores. + /// Output only. The number of enabled CPU cores. [Newtonsoft.Json.JsonPropertyAttribute("cpuCount")] public virtual System.Nullable CpuCount { get; set; } @@ -3805,7 +3805,7 @@ public class CloudExadataInfrastructureProperties : Google.Apis.Requests.IDirect [Newtonsoft.Json.JsonPropertyAttribute("dataStorageSizeTb")] public virtual System.Nullable DataStorageSizeTb { get; set; } - /// Optional. The local node storage allocated in GBs. + /// Output only. The local node storage allocated in GBs. [Newtonsoft.Json.JsonPropertyAttribute("dbNodeStorageSizeGb")] public virtual System.Nullable DbNodeStorageSizeGb { get; set; } @@ -3835,7 +3835,7 @@ public class CloudExadataInfrastructureProperties : Google.Apis.Requests.IDirect [Newtonsoft.Json.JsonPropertyAttribute("maxMemoryGb")] public virtual System.Nullable MaxMemoryGb { get; set; } - /// Optional. The memory allocated in GBs. + /// Output only. The memory allocated in GBs. [Newtonsoft.Json.JsonPropertyAttribute("memorySizeGb")] public virtual System.Nullable MemorySizeGb { get; set; } diff --git a/Src/Generated/Google.Apis.OracleDatabase.v1/Google.Apis.OracleDatabase.v1.csproj b/Src/Generated/Google.Apis.OracleDatabase.v1/Google.Apis.OracleDatabase.v1.csproj index a531ed0f697..5d897cfadf6 100644 --- a/Src/Generated/Google.Apis.OracleDatabase.v1/Google.Apis.OracleDatabase.v1.csproj +++ b/Src/Generated/Google.Apis.OracleDatabase.v1/Google.Apis.OracleDatabase.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.OracleDatabase.v1 Client Library - 1.68.0.3562 + 1.68.0.3569 Google LLC Copyright 2024 Google LLC Google From 826f2516c23101f49b13587470074fbeb7338c8d Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:27 -0700 Subject: [PATCH 50/61] feat: Generate Google.Apis.MapsPlaces.v1 version 1.68.0.3575 --- DiscoveryJson/places.v1.json | 4 ++-- .../Google.Apis.MapsPlaces.v1/Google.Apis.MapsPlaces.v1.cs | 5 ++++- .../Google.Apis.MapsPlaces.v1.csproj | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/DiscoveryJson/places.v1.json b/DiscoveryJson/places.v1.json index 30b3976984b..e728033d0c7 100644 --- a/DiscoveryJson/places.v1.json +++ b/DiscoveryJson/places.v1.json @@ -280,7 +280,7 @@ } } }, - "revision": "20241013", + "revision": "20241015", "rootUrl": "https://places.googleapis.com/", "schemas": { "GoogleGeoTypeViewport": { @@ -1298,7 +1298,7 @@ }, "viewport": { "$ref": "GoogleGeoTypeViewport", - "description": "A viewport suitable for displaying the place on an average-sized map." + "description": "A viewport suitable for displaying the place on an average-sized map. This viewport should not be used as the physical boundary or the service area of the business." }, "websiteUri": { "description": "The authoritative website for this place, e.g. a business' homepage. Note that for places that are part of a chain (e.g. an IKEA store), this will usually be the website for the individual store, not the overall chain.", diff --git a/Src/Generated/Google.Apis.MapsPlaces.v1/Google.Apis.MapsPlaces.v1.cs b/Src/Generated/Google.Apis.MapsPlaces.v1/Google.Apis.MapsPlaces.v1.cs index a9f9b461ac6..6a21cc89863 100644 --- a/Src/Generated/Google.Apis.MapsPlaces.v1/Google.Apis.MapsPlaces.v1.cs +++ b/Src/Generated/Google.Apis.MapsPlaces.v1/Google.Apis.MapsPlaces.v1.cs @@ -1815,7 +1815,10 @@ public class GoogleMapsPlacesV1Place : Google.Apis.Requests.IDirectResponseSchem [Newtonsoft.Json.JsonPropertyAttribute("utcOffsetMinutes")] public virtual System.Nullable UtcOffsetMinutes { get; set; } - /// A viewport suitable for displaying the place on an average-sized map. + /// + /// A viewport suitable for displaying the place on an average-sized map. This viewport should not be used as + /// the physical boundary or the service area of the business. + /// [Newtonsoft.Json.JsonPropertyAttribute("viewport")] public virtual GoogleGeoTypeViewport Viewport { get; set; } diff --git a/Src/Generated/Google.Apis.MapsPlaces.v1/Google.Apis.MapsPlaces.v1.csproj b/Src/Generated/Google.Apis.MapsPlaces.v1/Google.Apis.MapsPlaces.v1.csproj index abc33ab5643..bd147f50a90 100644 --- a/Src/Generated/Google.Apis.MapsPlaces.v1/Google.Apis.MapsPlaces.v1.csproj +++ b/Src/Generated/Google.Apis.MapsPlaces.v1/Google.Apis.MapsPlaces.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.MapsPlaces.v1 Client Library - 1.68.0.3573 + 1.68.0.3575 Google LLC Copyright 2024 Google LLC Google From fadc6a43800ce85c330db9a704d7f7f314d6852a Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:31 -0700 Subject: [PATCH 51/61] feat: Generate Google.Apis.SubscriptionLinking.v1 version 1.68.0.3575 --- DiscoveryJson/readerrevenuesubscriptionlinking.v1.json | 4 ++-- .../Google.Apis.SubscriptionLinking.v1.cs | 1 - .../Google.Apis.SubscriptionLinking.v1.csproj | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/DiscoveryJson/readerrevenuesubscriptionlinking.v1.json b/DiscoveryJson/readerrevenuesubscriptionlinking.v1.json index 8f572514fc4..fd8921a4bb3 100644 --- a/DiscoveryJson/readerrevenuesubscriptionlinking.v1.json +++ b/DiscoveryJson/readerrevenuesubscriptionlinking.v1.json @@ -207,7 +207,7 @@ } } }, - "revision": "20241014", + "revision": "20241015", "rootUrl": "https://readerrevenuesubscriptionlinking.googleapis.com/", "schemas": { "DeleteReaderResponse": { @@ -225,7 +225,7 @@ "type": "string" }, "expireTime": { - "description": "Required. Expiration time of the entitlement. Entitlements that have expired over 30 days will be purged. The max expire_time is 398 days from now(). LINT.ThenChange(//depot/google3/java/com/google/subscribewithgoogle/accountlinking/subscriptionlink/service/config/protoconf.pi:max_expiry_age)", + "description": "Required. Expiration time of the entitlement. Entitlements that have expired over 30 days will be purged. The max expire_time is 398 days from now().", "format": "google-datetime", "type": "string" }, diff --git a/Src/Generated/Google.Apis.SubscriptionLinking.v1/Google.Apis.SubscriptionLinking.v1.cs b/Src/Generated/Google.Apis.SubscriptionLinking.v1/Google.Apis.SubscriptionLinking.v1.cs index 43c6e5bd875..9251597a22f 100644 --- a/Src/Generated/Google.Apis.SubscriptionLinking.v1/Google.Apis.SubscriptionLinking.v1.cs +++ b/Src/Generated/Google.Apis.SubscriptionLinking.v1/Google.Apis.SubscriptionLinking.v1.cs @@ -553,7 +553,6 @@ public class Entitlement : Google.Apis.Requests.IDirectResponseSchema /// /// Required. Expiration time of the entitlement. Entitlements that have expired over 30 days will be purged. /// The max expire_time is 398 days from now(). - /// LINT.ThenChange(//depot/google3/java/com/google/subscribewithgoogle/accountlinking/subscriptionlink/service/config/protoconf.pi:max_expiry_age) /// [Newtonsoft.Json.JsonPropertyAttribute("expireTime")] public virtual string ExpireTimeRaw diff --git a/Src/Generated/Google.Apis.SubscriptionLinking.v1/Google.Apis.SubscriptionLinking.v1.csproj b/Src/Generated/Google.Apis.SubscriptionLinking.v1/Google.Apis.SubscriptionLinking.v1.csproj index 32d0b01be43..1032b4b9899 100644 --- a/Src/Generated/Google.Apis.SubscriptionLinking.v1/Google.Apis.SubscriptionLinking.v1.csproj +++ b/Src/Generated/Google.Apis.SubscriptionLinking.v1/Google.Apis.SubscriptionLinking.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.SubscriptionLinking.v1 Client Library - 1.68.0.3574 + 1.68.0.3575 Google LLC Copyright 2024 Google LLC Google From 92a4e44369f402b9cac0149ca57402f39c3af515 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:34 -0700 Subject: [PATCH 52/61] feat: Generate Google.Apis.Recommender.v1beta1 version 1.68.0.3573 --- DiscoveryJson/recommender.v1beta1.json | 13 ++++++++++++- .../Google.Apis.Recommender.v1beta1.cs | 11 +++++++++++ .../Google.Apis.Recommender.v1beta1.csproj | 2 +- 3 files changed, 24 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/recommender.v1beta1.json b/DiscoveryJson/recommender.v1beta1.json index e2725590457..fb890b3904a 100644 --- a/DiscoveryJson/recommender.v1beta1.json +++ b/DiscoveryJson/recommender.v1beta1.json @@ -1920,7 +1920,7 @@ } } }, - "revision": "20240428", + "revision": "20241013", "rootUrl": "https://recommender.googleapis.com/", "schemas": { "GoogleCloudLocationListLocationsResponse": { @@ -2039,6 +2039,13 @@ "$ref": "GoogleCloudRecommenderV1beta1CostProjection", "description": "Use with CategoryType.COST" }, + "impactComponents": { + "description": "If populated, the impact contains multiple components. In this case, the top-level impact contains aggregated values and each component contains per-service details.", + "items": { + "$ref": "GoogleCloudRecommenderV1beta1Impact" + }, + "type": "array" + }, "reliabilityProjection": { "$ref": "GoogleCloudRecommenderV1beta1ReliabilityProjection", "description": "Use with CategoryType.RELIABILITY" @@ -2047,6 +2054,10 @@ "$ref": "GoogleCloudRecommenderV1beta1SecurityProjection", "description": "Use with CategoryType.SECURITY" }, + "service": { + "description": "The service that this impact is associated with.", + "type": "string" + }, "sustainabilityProjection": { "$ref": "GoogleCloudRecommenderV1beta1SustainabilityProjection", "description": "Use with CategoryType.SUSTAINABILITY" diff --git a/Src/Generated/Google.Apis.Recommender.v1beta1/Google.Apis.Recommender.v1beta1.cs b/Src/Generated/Google.Apis.Recommender.v1beta1/Google.Apis.Recommender.v1beta1.cs index b1b193cf00b..cfcbfecaeb7 100644 --- a/Src/Generated/Google.Apis.Recommender.v1beta1/Google.Apis.Recommender.v1beta1.cs +++ b/Src/Generated/Google.Apis.Recommender.v1beta1/Google.Apis.Recommender.v1beta1.cs @@ -4898,6 +4898,13 @@ public class GoogleCloudRecommenderV1beta1Impact : Google.Apis.Requests.IDirectR [Newtonsoft.Json.JsonPropertyAttribute("costProjection")] public virtual GoogleCloudRecommenderV1beta1CostProjection CostProjection { get; set; } + /// + /// If populated, the impact contains multiple components. In this case, the top-level impact contains + /// aggregated values and each component contains per-service details. + /// + [Newtonsoft.Json.JsonPropertyAttribute("impactComponents")] + public virtual System.Collections.Generic.IList ImpactComponents { get; set; } + /// Use with CategoryType.RELIABILITY [Newtonsoft.Json.JsonPropertyAttribute("reliabilityProjection")] public virtual GoogleCloudRecommenderV1beta1ReliabilityProjection ReliabilityProjection { get; set; } @@ -4906,6 +4913,10 @@ public class GoogleCloudRecommenderV1beta1Impact : Google.Apis.Requests.IDirectR [Newtonsoft.Json.JsonPropertyAttribute("securityProjection")] public virtual GoogleCloudRecommenderV1beta1SecurityProjection SecurityProjection { get; set; } + /// The service that this impact is associated with. + [Newtonsoft.Json.JsonPropertyAttribute("service")] + public virtual string Service { get; set; } + /// Use with CategoryType.SUSTAINABILITY [Newtonsoft.Json.JsonPropertyAttribute("sustainabilityProjection")] public virtual GoogleCloudRecommenderV1beta1SustainabilityProjection SustainabilityProjection { get; set; } diff --git a/Src/Generated/Google.Apis.Recommender.v1beta1/Google.Apis.Recommender.v1beta1.csproj b/Src/Generated/Google.Apis.Recommender.v1beta1/Google.Apis.Recommender.v1beta1.csproj index 364f4a71fc4..86e086488ec 100644 --- a/Src/Generated/Google.Apis.Recommender.v1beta1/Google.Apis.Recommender.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Recommender.v1beta1/Google.Apis.Recommender.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Recommender.v1beta1 Client Library - 1.68.0.3405 + 1.68.0.3573 Google LLC Copyright 2024 Google LLC Google From 748f262e6064134be60bafb9faeaebb8b4ffff91 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:37 -0700 Subject: [PATCH 53/61] feat: Generate Google.Apis.CloudRedis.v1beta1 version 1.68.0.3570 --- DiscoveryJson/redis.v1beta1.json | 8 +++- .../Google.Apis.CloudRedis.v1beta1.cs | 39 +++++++++++++++++++ .../Google.Apis.CloudRedis.v1beta1.csproj | 2 +- 3 files changed, 47 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/redis.v1beta1.json b/DiscoveryJson/redis.v1beta1.json index 9e82b3ac4a7..3f664b93ceb 100644 --- a/DiscoveryJson/redis.v1beta1.json +++ b/DiscoveryJson/redis.v1beta1.json @@ -849,7 +849,7 @@ } } }, - "revision": "20241003", + "revision": "20241010", "rootUrl": "https://redis.googleapis.com/", "schemas": { "AOFConfig": { @@ -3920,6 +3920,7 @@ "type": "integer" }, "retentionUnit": { + "deprecated": true, "description": "The unit that 'retained_backups' represents.", "enum": [ "RETENTION_UNIT_UNSPECIFIED", @@ -3940,6 +3941,11 @@ "timeBasedRetention": { "format": "google-duration", "type": "string" + }, + "timestampBasedRetentionTime": { + "description": "Timestamp based retention period i.e. 2024-05-01T00:00:00Z", + "format": "google-datetime", + "type": "string" } }, "type": "object" diff --git a/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.cs b/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.cs index f975ab4ecbe..672316aef7f 100644 --- a/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.cs +++ b/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.cs @@ -4979,6 +4979,45 @@ public class RetentionSettings : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("timeBasedRetention")] public virtual object TimeBasedRetention { get; set; } + private string _timestampBasedRetentionTimeRaw; + + private object _timestampBasedRetentionTime; + + /// Timestamp based retention period i.e. 2024-05-01T00:00:00Z + [Newtonsoft.Json.JsonPropertyAttribute("timestampBasedRetentionTime")] + public virtual string TimestampBasedRetentionTimeRaw + { + get => _timestampBasedRetentionTimeRaw; + set + { + _timestampBasedRetentionTime = Google.Apis.Util.Utilities.DeserializeForGoogleFormat(value); + _timestampBasedRetentionTimeRaw = value; + } + } + + /// representation of . + [Newtonsoft.Json.JsonIgnoreAttribute] + [System.ObsoleteAttribute("This property is obsolete and may behave unexpectedly; please use TimestampBasedRetentionTimeDateTimeOffset instead.")] + public virtual object TimestampBasedRetentionTime + { + get => _timestampBasedRetentionTime; + set + { + _timestampBasedRetentionTimeRaw = Google.Apis.Util.Utilities.SerializeForGoogleFormat(value); + _timestampBasedRetentionTime = value; + } + } + + /// + /// representation of . + /// + [Newtonsoft.Json.JsonIgnoreAttribute] + public virtual System.DateTimeOffset? TimestampBasedRetentionTimeDateTimeOffset + { + get => Google.Apis.Util.DiscoveryFormat.ParseGoogleDateTimeToDateTimeOffset(TimestampBasedRetentionTimeRaw); + set => TimestampBasedRetentionTimeRaw = Google.Apis.Util.DiscoveryFormat.FormatDateTimeOffsetToGoogleDateTime(value); + } + /// The ETag of the item. public virtual string ETag { get; set; } } diff --git a/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.csproj b/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.csproj index df2039e9400..619665d7de8 100644 --- a/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.csproj +++ b/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudRedis.v1beta1 Client Library - 1.68.0.3563 + 1.68.0.3570 Google LLC Copyright 2024 Google LLC Google From 8e35ffef9f8ff42e61d6fe4fa1e099b2088d3347 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:40 -0700 Subject: [PATCH 54/61] feat: Generate Google.Apis.CloudRun.v2 version 1.68.0.3571 --- DiscoveryJson/run.v2.json | 4 ++-- .../Google.Apis.CloudRun.v2/Google.Apis.CloudRun.v2.cs | 5 +++-- .../Google.Apis.CloudRun.v2/Google.Apis.CloudRun.v2.csproj | 2 +- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/DiscoveryJson/run.v2.json b/DiscoveryJson/run.v2.json index 86a10b0e268..69e9b09ad81 100644 --- a/DiscoveryJson/run.v2.json +++ b/DiscoveryJson/run.v2.json @@ -1526,7 +1526,7 @@ } } }, - "revision": "20241004", + "revision": "20241011", "rootUrl": "https://run.googleapis.com/", "schemas": { "GoogleCloudRunV2BinaryAuthorization": { @@ -3259,7 +3259,7 @@ "type": "string" }, "invokerIamDisabled": { - "description": "Optional. Disables IAM permission check for run.routes.invoke for callers of this service. This setting should not be used with external ingress.", + "description": "Optional. Disables IAM permission check for run.routes.invoke for callers of this service. This feature is available by invitation only. For more information, visit https://cloud.google.com/run/docs/securing/managing-access#invoker_check.", "type": "boolean" }, "labels": { diff --git a/Src/Generated/Google.Apis.CloudRun.v2/Google.Apis.CloudRun.v2.cs b/Src/Generated/Google.Apis.CloudRun.v2/Google.Apis.CloudRun.v2.cs index 5a416ba8813..17000c7f8d0 100644 --- a/Src/Generated/Google.Apis.CloudRun.v2/Google.Apis.CloudRun.v2.cs +++ b/Src/Generated/Google.Apis.CloudRun.v2/Google.Apis.CloudRun.v2.cs @@ -5470,8 +5470,9 @@ public virtual System.DateTimeOffset? ExpireTimeDateTimeOffset public virtual string Ingress { get; set; } /// - /// Optional. Disables IAM permission check for run.routes.invoke for callers of this service. This setting - /// should not be used with external ingress. + /// Optional. Disables IAM permission check for run.routes.invoke for callers of this service. This feature is + /// available by invitation only. For more information, visit + /// https://cloud.google.com/run/docs/securing/managing-access#invoker_check. /// [Newtonsoft.Json.JsonPropertyAttribute("invokerIamDisabled")] public virtual System.Nullable InvokerIamDisabled { get; set; } diff --git a/Src/Generated/Google.Apis.CloudRun.v2/Google.Apis.CloudRun.v2.csproj b/Src/Generated/Google.Apis.CloudRun.v2/Google.Apis.CloudRun.v2.csproj index ea946a1cd94..3af4ef54b7b 100644 --- a/Src/Generated/Google.Apis.CloudRun.v2/Google.Apis.CloudRun.v2.csproj +++ b/Src/Generated/Google.Apis.CloudRun.v2/Google.Apis.CloudRun.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudRun.v2 Client Library - 1.68.0.3564 + 1.68.0.3571 Google LLC Copyright 2024 Google LLC Google From e9632e93905e6565f66228e855215e3a243a890b Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:43 -0700 Subject: [PATCH 55/61] feat: Generate Google.Apis.Transcoder.v1 version 1.68.0.3569 --- DiscoveryJson/transcoder.v1.json | 6 +++--- .../Google.Apis.Transcoder.v1/Google.Apis.Transcoder.v1.cs | 4 ++-- .../Google.Apis.Transcoder.v1.csproj | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/DiscoveryJson/transcoder.v1.json b/DiscoveryJson/transcoder.v1.json index bbc4b9995b5..935c76114e0 100644 --- a/DiscoveryJson/transcoder.v1.json +++ b/DiscoveryJson/transcoder.v1.json @@ -385,7 +385,7 @@ } } }, - "revision": "20240626", + "revision": "20241009", "rootUrl": "https://transcoder.googleapis.com/", "schemas": { "AdBreak": { @@ -565,7 +565,7 @@ "type": "array" }, "codec": { - "description": "The codec for this audio stream. The default is `aac`. Supported audio codecs: - `aac` - `aac-he` - `aac-he-v2` - `mp3` - `ac3` - `eac3`", + "description": "The codec for this audio stream. The default is `aac`. Supported audio codecs: - `aac` - `aac-he` - `aac-he-v2` - `mp3` - `ac3` - `eac3` - `vorbis`", "type": "string" }, "displayName": { @@ -1486,7 +1486,7 @@ "id": "MuxStream", "properties": { "container": { - "description": "The container format. The default is `mp4` Supported container formats: - `ts` - `fmp4`- the corresponding file extension is `.m4s` - `mp4` - `vtt` See also: [Supported input and output formats](https://cloud.google.com/transcoder/docs/concepts/supported-input-and-output-formats)", + "description": "The container format. The default is `mp4` Supported container formats: - `ts` - `fmp4`- the corresponding file extension is `.m4s` - `mp4` - `vtt` - `ogg` See also: [Supported input and output formats](https://cloud.google.com/transcoder/docs/concepts/supported-input-and-output-formats)", "type": "string" }, "elementaryStreams": { diff --git a/Src/Generated/Google.Apis.Transcoder.v1/Google.Apis.Transcoder.v1.cs b/Src/Generated/Google.Apis.Transcoder.v1/Google.Apis.Transcoder.v1.cs index 125ec27ef0a..f2745c9667e 100644 --- a/Src/Generated/Google.Apis.Transcoder.v1/Google.Apis.Transcoder.v1.cs +++ b/Src/Generated/Google.Apis.Transcoder.v1/Google.Apis.Transcoder.v1.cs @@ -1091,7 +1091,7 @@ public class AudioStream : Google.Apis.Requests.IDirectResponseSchema /// /// The codec for this audio stream. The default is `aac`. Supported audio codecs: - `aac` - `aac-he` - - /// `aac-he-v2` - `mp3` - `ac3` - `eac3` + /// `aac-he-v2` - `mp3` - `ac3` - `eac3` - `vorbis` /// [Newtonsoft.Json.JsonPropertyAttribute("codec")] public virtual string Codec { get; set; } @@ -2205,7 +2205,7 @@ public class MuxStream : Google.Apis.Requests.IDirectResponseSchema { /// /// The container format. The default is `mp4` Supported container formats: - `ts` - `fmp4`- the corresponding - /// file extension is `.m4s` - `mp4` - `vtt` See also: [Supported input and output + /// file extension is `.m4s` - `mp4` - `vtt` - `ogg` See also: [Supported input and output /// formats](https://cloud.google.com/transcoder/docs/concepts/supported-input-and-output-formats) /// [Newtonsoft.Json.JsonPropertyAttribute("container")] diff --git a/Src/Generated/Google.Apis.Transcoder.v1/Google.Apis.Transcoder.v1.csproj b/Src/Generated/Google.Apis.Transcoder.v1/Google.Apis.Transcoder.v1.csproj index 56ac8df3fec..6080218eed7 100644 --- a/Src/Generated/Google.Apis.Transcoder.v1/Google.Apis.Transcoder.v1.csproj +++ b/Src/Generated/Google.Apis.Transcoder.v1/Google.Apis.Transcoder.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Transcoder.v1 Client Library - 1.68.0.3464 + 1.68.0.3569 Google LLC Copyright 2024 Google LLC Google From 90d0da806260bc8ff98a4bcdf14931e0854ef11d Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:47 -0700 Subject: [PATCH 56/61] feat: Generate Google.Apis.VMMigrationService.v1 version 1.68.0.3573 --- DiscoveryJson/vmmigration.v1.json | 76 ++++++++++++++++++- .../Google.Apis.VMMigrationService.v1.cs | 20 +++++ .../Google.Apis.VMMigrationService.v1.csproj | 2 +- 3 files changed, 96 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/vmmigration.v1.json b/DiscoveryJson/vmmigration.v1.json index b6ff7db6af1..6c3894df2fc 100644 --- a/DiscoveryJson/vmmigration.v1.json +++ b/DiscoveryJson/vmmigration.v1.json @@ -2220,7 +2220,7 @@ } } }, - "revision": "20240912", + "revision": "20241013", "rootUrl": "https://vmmigration.googleapis.com/", "schemas": { "AccessKeyCredentials": { @@ -2430,6 +2430,21 @@ "description": "Represent the source AWS VM details.", "id": "AwsSourceVmDetails", "properties": { + "architecture": { + "description": "Output only. The VM architecture.", + "enum": [ + "VM_ARCHITECTURE_UNSPECIFIED", + "VM_ARCHITECTURE_X86_FAMILY", + "VM_ARCHITECTURE_ARM64" + ], + "enumDescriptions": [ + "The architecture is unknown.", + "The architecture is one of the x86 architectures.", + "The architecture is ARM64." + ], + "readOnly": true, + "type": "string" + }, "committedStorageBytes": { "description": "Output only. The total size of the disks being migrated in bytes.", "format": "int64", @@ -2700,6 +2715,21 @@ "description": "Represent the source Azure VM details.", "id": "AzureSourceVmDetails", "properties": { + "architecture": { + "description": "Output only. The VM architecture.", + "enum": [ + "VM_ARCHITECTURE_UNSPECIFIED", + "VM_ARCHITECTURE_X86_FAMILY", + "VM_ARCHITECTURE_ARM64" + ], + "enumDescriptions": [ + "The architecture is unknown.", + "The architecture is one of the x86 architectures.", + "The architecture is ARM64." + ], + "readOnly": true, + "type": "string" + }, "committedStorageBytes": { "description": "Output only. The total size of the disks being migrated in bytes.", "format": "int64", @@ -2741,6 +2771,20 @@ "description": "AzureVmDetails describes a VM in Azure.", "id": "AzureVmDetails", "properties": { + "architecture": { + "description": "The CPU architecture.", + "enum": [ + "VM_ARCHITECTURE_UNSPECIFIED", + "VM_ARCHITECTURE_X86_FAMILY", + "VM_ARCHITECTURE_ARM64" + ], + "enumDescriptions": [ + "The architecture is unknown.", + "The architecture is one of the x86 architectures.", + "The architecture is ARM64." + ], + "type": "string" + }, "bootOption": { "description": "The VM Boot Option.", "enum": [ @@ -5899,6 +5943,21 @@ "description": "Represent the source Vmware VM details.", "id": "VmwareSourceVmDetails", "properties": { + "architecture": { + "description": "Output only. The VM architecture.", + "enum": [ + "VM_ARCHITECTURE_UNSPECIFIED", + "VM_ARCHITECTURE_X86_FAMILY", + "VM_ARCHITECTURE_ARM64" + ], + "enumDescriptions": [ + "The architecture is unknown.", + "The architecture is one of the x86 architectures.", + "The architecture is ARM64." + ], + "readOnly": true, + "type": "string" + }, "committedStorageBytes": { "description": "Output only. The total size of the disks being migrated in bytes.", "format": "int64", @@ -5940,6 +5999,21 @@ "description": "VmwareVmDetails describes a VM in vCenter.", "id": "VmwareVmDetails", "properties": { + "architecture": { + "description": "Output only. The CPU architecture.", + "enum": [ + "VM_ARCHITECTURE_UNSPECIFIED", + "VM_ARCHITECTURE_X86_FAMILY", + "VM_ARCHITECTURE_ARM64" + ], + "enumDescriptions": [ + "The architecture is unknown.", + "The architecture is one of the x86 architectures.", + "The architecture is ARM64." + ], + "readOnly": true, + "type": "string" + }, "bootOption": { "description": "Output only. The VM Boot Option.", "enum": [ diff --git a/Src/Generated/Google.Apis.VMMigrationService.v1/Google.Apis.VMMigrationService.v1.cs b/Src/Generated/Google.Apis.VMMigrationService.v1/Google.Apis.VMMigrationService.v1.cs index dd25c87cf3c..b6b7f95f462 100644 --- a/Src/Generated/Google.Apis.VMMigrationService.v1/Google.Apis.VMMigrationService.v1.cs +++ b/Src/Generated/Google.Apis.VMMigrationService.v1/Google.Apis.VMMigrationService.v1.cs @@ -5156,6 +5156,10 @@ public class AwsSourceDetails : Google.Apis.Requests.IDirectResponseSchema /// Represent the source AWS VM details. public class AwsSourceVmDetails : Google.Apis.Requests.IDirectResponseSchema { + /// Output only. The VM architecture. + [Newtonsoft.Json.JsonPropertyAttribute("architecture")] + public virtual string Architecture { get; set; } + /// Output only. The total size of the disks being migrated in bytes. [Newtonsoft.Json.JsonPropertyAttribute("committedStorageBytes")] public virtual System.Nullable CommittedStorageBytes { get; set; } @@ -5330,6 +5334,10 @@ public class AzureSourceDetails : Google.Apis.Requests.IDirectResponseSchema /// Represent the source Azure VM details. public class AzureSourceVmDetails : Google.Apis.Requests.IDirectResponseSchema { + /// Output only. The VM architecture. + [Newtonsoft.Json.JsonPropertyAttribute("architecture")] + public virtual string Architecture { get; set; } + /// Output only. The total size of the disks being migrated in bytes. [Newtonsoft.Json.JsonPropertyAttribute("committedStorageBytes")] public virtual System.Nullable CommittedStorageBytes { get; set; } @@ -5353,6 +5361,10 @@ public class AzureSourceVmDetails : Google.Apis.Requests.IDirectResponseSchema /// AzureVmDetails describes a VM in Azure. public class AzureVmDetails : Google.Apis.Requests.IDirectResponseSchema { + /// The CPU architecture. + [Newtonsoft.Json.JsonPropertyAttribute("architecture")] + public virtual string Architecture { get; set; } + /// The VM Boot Option. [Newtonsoft.Json.JsonPropertyAttribute("bootOption")] public virtual string BootOption { get; set; } @@ -9380,6 +9392,10 @@ public class VmwareSourceDetails : Google.Apis.Requests.IDirectResponseSchema /// Represent the source Vmware VM details. public class VmwareSourceVmDetails : Google.Apis.Requests.IDirectResponseSchema { + /// Output only. The VM architecture. + [Newtonsoft.Json.JsonPropertyAttribute("architecture")] + public virtual string Architecture { get; set; } + /// Output only. The total size of the disks being migrated in bytes. [Newtonsoft.Json.JsonPropertyAttribute("committedStorageBytes")] public virtual System.Nullable CommittedStorageBytes { get; set; } @@ -9403,6 +9419,10 @@ public class VmwareSourceVmDetails : Google.Apis.Requests.IDirectResponseSchema /// VmwareVmDetails describes a VM in vCenter. public class VmwareVmDetails : Google.Apis.Requests.IDirectResponseSchema { + /// Output only. The CPU architecture. + [Newtonsoft.Json.JsonPropertyAttribute("architecture")] + public virtual string Architecture { get; set; } + /// Output only. The VM Boot Option. [Newtonsoft.Json.JsonPropertyAttribute("bootOption")] public virtual string BootOption { get; set; } diff --git a/Src/Generated/Google.Apis.VMMigrationService.v1/Google.Apis.VMMigrationService.v1.csproj b/Src/Generated/Google.Apis.VMMigrationService.v1/Google.Apis.VMMigrationService.v1.csproj index 0b1f27a39de..aa6e6cef2e4 100644 --- a/Src/Generated/Google.Apis.VMMigrationService.v1/Google.Apis.VMMigrationService.v1.csproj +++ b/Src/Generated/Google.Apis.VMMigrationService.v1/Google.Apis.VMMigrationService.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.VMMigrationService.v1 Client Library - 1.68.0.3542 + 1.68.0.3573 Google LLC Copyright 2024 Google LLC Google From 2c3669bd16810d461df4b16014ea1c367ce8757c Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:50 -0700 Subject: [PATCH 57/61] feat: Generate Google.Apis.VMMigrationService.v1alpha1 version 1.68.0.3573 --- DiscoveryJson/vmmigration.v1alpha1.json | 76 ++++++++++++++++++- ...Google.Apis.VMMigrationService.v1alpha1.cs | 20 +++++ ...le.Apis.VMMigrationService.v1alpha1.csproj | 2 +- 3 files changed, 96 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/vmmigration.v1alpha1.json b/DiscoveryJson/vmmigration.v1alpha1.json index 0614fc4da76..d59f2c5d207 100644 --- a/DiscoveryJson/vmmigration.v1alpha1.json +++ b/DiscoveryJson/vmmigration.v1alpha1.json @@ -2220,7 +2220,7 @@ } } }, - "revision": "20240912", + "revision": "20241013", "rootUrl": "https://vmmigration.googleapis.com/", "schemas": { "AccessKeyCredentials": { @@ -2430,6 +2430,21 @@ "description": "Represent the source AWS VM details.", "id": "AwsSourceVmDetails", "properties": { + "architecture": { + "description": "Output only. The VM architecture.", + "enum": [ + "VM_ARCHITECTURE_UNSPECIFIED", + "VM_ARCHITECTURE_X86_FAMILY", + "VM_ARCHITECTURE_ARM64" + ], + "enumDescriptions": [ + "The architecture is unknown.", + "The architecture is one of the x86 architectures.", + "The architecture is ARM64." + ], + "readOnly": true, + "type": "string" + }, "committedStorageBytes": { "description": "Output only. The total size of the disks being migrated in bytes.", "format": "int64", @@ -2700,6 +2715,21 @@ "description": "Represent the source Azure VM details.", "id": "AzureSourceVmDetails", "properties": { + "architecture": { + "description": "Output only. The VM architecture.", + "enum": [ + "VM_ARCHITECTURE_UNSPECIFIED", + "VM_ARCHITECTURE_X86_FAMILY", + "VM_ARCHITECTURE_ARM64" + ], + "enumDescriptions": [ + "The architecture is unknown.", + "The architecture is one of the x86 architectures.", + "The architecture is ARM64." + ], + "readOnly": true, + "type": "string" + }, "committedStorageBytes": { "description": "Output only. The total size of the disks being migrated in bytes.", "format": "int64", @@ -2741,6 +2771,20 @@ "description": "AzureVmDetails describes a VM in Azure.", "id": "AzureVmDetails", "properties": { + "architecture": { + "description": "The CPU architecture.", + "enum": [ + "VM_ARCHITECTURE_UNSPECIFIED", + "VM_ARCHITECTURE_X86_FAMILY", + "VM_ARCHITECTURE_ARM64" + ], + "enumDescriptions": [ + "The architecture is unknown.", + "The architecture is one of the x86 architectures.", + "The architecture is ARM64." + ], + "type": "string" + }, "bootOption": { "description": "The VM Boot Option.", "enum": [ @@ -6153,6 +6197,21 @@ "description": "Represent the source Vmware VM details.", "id": "VmwareSourceVmDetails", "properties": { + "architecture": { + "description": "Output only. The VM architecture.", + "enum": [ + "VM_ARCHITECTURE_UNSPECIFIED", + "VM_ARCHITECTURE_X86_FAMILY", + "VM_ARCHITECTURE_ARM64" + ], + "enumDescriptions": [ + "The architecture is unknown.", + "The architecture is one of the x86 architectures.", + "The architecture is ARM64." + ], + "readOnly": true, + "type": "string" + }, "committedStorageBytes": { "description": "Output only. The total size of the disks being migrated in bytes.", "format": "int64", @@ -6194,6 +6253,21 @@ "description": "VmwareVmDetails describes a VM in vCenter.", "id": "VmwareVmDetails", "properties": { + "architecture": { + "description": "Output only. The CPU architecture.", + "enum": [ + "VM_ARCHITECTURE_UNSPECIFIED", + "VM_ARCHITECTURE_X86_FAMILY", + "VM_ARCHITECTURE_ARM64" + ], + "enumDescriptions": [ + "The architecture is unknown.", + "The architecture is one of the x86 architectures.", + "The architecture is ARM64." + ], + "readOnly": true, + "type": "string" + }, "bootOption": { "description": "Output only. The VM Boot Option.", "enum": [ diff --git a/Src/Generated/Google.Apis.VMMigrationService.v1alpha1/Google.Apis.VMMigrationService.v1alpha1.cs b/Src/Generated/Google.Apis.VMMigrationService.v1alpha1/Google.Apis.VMMigrationService.v1alpha1.cs index 1fb0d49c36b..f070298ee85 100644 --- a/Src/Generated/Google.Apis.VMMigrationService.v1alpha1/Google.Apis.VMMigrationService.v1alpha1.cs +++ b/Src/Generated/Google.Apis.VMMigrationService.v1alpha1/Google.Apis.VMMigrationService.v1alpha1.cs @@ -5156,6 +5156,10 @@ public class AwsSourceDetails : Google.Apis.Requests.IDirectResponseSchema /// Represent the source AWS VM details. public class AwsSourceVmDetails : Google.Apis.Requests.IDirectResponseSchema { + /// Output only. The VM architecture. + [Newtonsoft.Json.JsonPropertyAttribute("architecture")] + public virtual string Architecture { get; set; } + /// Output only. The total size of the disks being migrated in bytes. [Newtonsoft.Json.JsonPropertyAttribute("committedStorageBytes")] public virtual System.Nullable CommittedStorageBytes { get; set; } @@ -5330,6 +5334,10 @@ public class AzureSourceDetails : Google.Apis.Requests.IDirectResponseSchema /// Represent the source Azure VM details. public class AzureSourceVmDetails : Google.Apis.Requests.IDirectResponseSchema { + /// Output only. The VM architecture. + [Newtonsoft.Json.JsonPropertyAttribute("architecture")] + public virtual string Architecture { get; set; } + /// Output only. The total size of the disks being migrated in bytes. [Newtonsoft.Json.JsonPropertyAttribute("committedStorageBytes")] public virtual System.Nullable CommittedStorageBytes { get; set; } @@ -5353,6 +5361,10 @@ public class AzureSourceVmDetails : Google.Apis.Requests.IDirectResponseSchema /// AzureVmDetails describes a VM in Azure. public class AzureVmDetails : Google.Apis.Requests.IDirectResponseSchema { + /// The CPU architecture. + [Newtonsoft.Json.JsonPropertyAttribute("architecture")] + public virtual string Architecture { get; set; } + /// The VM Boot Option. [Newtonsoft.Json.JsonPropertyAttribute("bootOption")] public virtual string BootOption { get; set; } @@ -9576,6 +9588,10 @@ public class VmwareSourceDetails : Google.Apis.Requests.IDirectResponseSchema /// Represent the source Vmware VM details. public class VmwareSourceVmDetails : Google.Apis.Requests.IDirectResponseSchema { + /// Output only. The VM architecture. + [Newtonsoft.Json.JsonPropertyAttribute("architecture")] + public virtual string Architecture { get; set; } + /// Output only. The total size of the disks being migrated in bytes. [Newtonsoft.Json.JsonPropertyAttribute("committedStorageBytes")] public virtual System.Nullable CommittedStorageBytes { get; set; } @@ -9599,6 +9615,10 @@ public class VmwareSourceVmDetails : Google.Apis.Requests.IDirectResponseSchema /// VmwareVmDetails describes a VM in vCenter. public class VmwareVmDetails : Google.Apis.Requests.IDirectResponseSchema { + /// Output only. The CPU architecture. + [Newtonsoft.Json.JsonPropertyAttribute("architecture")] + public virtual string Architecture { get; set; } + /// Output only. The VM Boot Option. [Newtonsoft.Json.JsonPropertyAttribute("bootOption")] public virtual string BootOption { get; set; } diff --git a/Src/Generated/Google.Apis.VMMigrationService.v1alpha1/Google.Apis.VMMigrationService.v1alpha1.csproj b/Src/Generated/Google.Apis.VMMigrationService.v1alpha1/Google.Apis.VMMigrationService.v1alpha1.csproj index 5cd3347a141..41da66c8bf0 100644 --- a/Src/Generated/Google.Apis.VMMigrationService.v1alpha1/Google.Apis.VMMigrationService.v1alpha1.csproj +++ b/Src/Generated/Google.Apis.VMMigrationService.v1alpha1/Google.Apis.VMMigrationService.v1alpha1.csproj @@ -3,7 +3,7 @@ Google.Apis.VMMigrationService.v1alpha1 Client Library - 1.68.0.3542 + 1.68.0.3573 Google LLC Copyright 2024 Google LLC Google From fb74cc7cafc42ae3eaf85d8934cea43d8d30932d Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:53 -0700 Subject: [PATCH 58/61] feat: Generate Google.Apis.Walletobjects.v1 version 1.68.0.3577 --- DiscoveryJson/walletobjects.v1.json | 146 +++++++++++++++++- .../Google.Apis.Walletobjects.v1.cs | 115 ++++++++++++++ .../Google.Apis.Walletobjects.v1.csproj | 2 +- 3 files changed, 261 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/walletobjects.v1.json b/DiscoveryJson/walletobjects.v1.json index b64a2680dfd..1b2ed469db2 100644 --- a/DiscoveryJson/walletobjects.v1.json +++ b/DiscoveryJson/walletobjects.v1.json @@ -2681,7 +2681,7 @@ } } }, - "revision": "20240927", + "revision": "20241017", "rootUrl": "https://walletobjects.googleapis.com/", "schemas": { "ActivationOptions": { @@ -3955,6 +3955,18 @@ ], "type": "string" }, + "notifyPreference": { + "description": "Whether or not field updates to this class should trigger notifications. When set to NOTIFY, we will attempt to trigger a field update notification to users. These notifications will only be sent to users if the field is part of an allowlist. If not specified, no notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered.", + "enum": [ + "NOTIFICATION_SETTINGS_FOR_UPDATES_UNSPECIFIED", + "NOTIFY_ON_UPDATE" + ], + "enumDescriptions": [ + "Default behavior is no notifications sent.", + "This value will result in a notification being sent, if the updated fields are part of an allowlist." + ], + "type": "string" + }, "redemptionIssuers": { "description": "Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.", "items": { @@ -4248,6 +4260,18 @@ }, "type": "array" }, + "notifyPreference": { + "description": "Whether or not field updates to this object should trigger notifications. When set to NOTIFY, we will attempt to trigger a field update notification to users. These notifications will only be sent to users if the field is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered.", + "enum": [ + "NOTIFICATION_SETTINGS_FOR_UPDATES_UNSPECIFIED", + "NOTIFY_ON_UPDATE" + ], + "enumDescriptions": [ + "Default behavior is no notifications sent.", + "This value will result in a notification being sent, if the updated fields are part of an allowlist." + ], + "type": "string" + }, "passConstraints": { "$ref": "PassConstraints", "description": "Pass constraints for the object. Includes limiting NFC and screenshot behaviors." @@ -4762,6 +4786,18 @@ ], "type": "string" }, + "notifyPreference": { + "description": "Whether or not field updates to this class should trigger notifications. When set to NOTIFY, we will attempt to trigger a field update notification to users. These notifications will only be sent to users if the field is part of an allowlist. If not specified, no notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered.", + "enum": [ + "NOTIFICATION_SETTINGS_FOR_UPDATES_UNSPECIFIED", + "NOTIFY_ON_UPDATE" + ], + "enumDescriptions": [ + "Default behavior is no notifications sent.", + "This value will result in a notification being sent, if the updated fields are part of an allowlist." + ], + "type": "string" + }, "origin": { "$ref": "AirportInfo", "description": "Required. Origin airport." @@ -5012,6 +5048,18 @@ }, "type": "array" }, + "notifyPreference": { + "description": "Whether or not field updates to this object should trigger notifications. When set to NOTIFY, we will attempt to trigger a field update notification to users. These notifications will only be sent to users if the field is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered.", + "enum": [ + "NOTIFICATION_SETTINGS_FOR_UPDATES_UNSPECIFIED", + "NOTIFY_ON_UPDATE" + ], + "enumDescriptions": [ + "Default behavior is no notifications sent.", + "This value will result in a notification being sent, if the updated fields are part of an allowlist." + ], + "type": "string" + }, "passConstraints": { "$ref": "PassConstraints", "description": "Pass constraints for the object. Includes limiting NFC and screenshot behaviors." @@ -5668,6 +5716,18 @@ ], "type": "string" }, + "notifyPreference": { + "description": "Whether or not field updates to this class should trigger notifications. When set to NOTIFY, we will attempt to trigger a field update notification to users. These notifications will only be sent to users if the field is part of an allowlist. If not specified, no notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered.", + "enum": [ + "NOTIFICATION_SETTINGS_FOR_UPDATES_UNSPECIFIED", + "NOTIFY_ON_UPDATE" + ], + "enumDescriptions": [ + "Default behavior is no notifications sent.", + "This value will result in a notification being sent, if the updated fields are part of an allowlist." + ], + "type": "string" + }, "pinLabel": { "description": "The label to display for the PIN, such as \"4-digit PIN\".", "type": "string" @@ -5903,6 +5963,18 @@ }, "type": "array" }, + "notifyPreference": { + "description": "Whether or not field updates to this object should trigger notifications. When set to NOTIFY, we will attempt to trigger a field update notification to users. These notifications will only be sent to users if the field is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered.", + "enum": [ + "NOTIFICATION_SETTINGS_FOR_UPDATES_UNSPECIFIED", + "NOTIFY_ON_UPDATE" + ], + "enumDescriptions": [ + "Default behavior is no notifications sent.", + "This value will result in a notification being sent, if the updated fields are part of an allowlist." + ], + "type": "string" + }, "passConstraints": { "$ref": "PassConstraints", "description": "Pass constraints for the object. Includes limiting NFC and screenshot behaviors." @@ -6504,6 +6576,18 @@ ], "type": "string" }, + "notifyPreference": { + "description": "Whether or not field updates to this class should trigger notifications. When set to NOTIFY, we will attempt to trigger a field update notification to users. These notifications will only be sent to users if the field is part of an allowlist. If not specified, no notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered.", + "enum": [ + "NOTIFICATION_SETTINGS_FOR_UPDATES_UNSPECIFIED", + "NOTIFY_ON_UPDATE" + ], + "enumDescriptions": [ + "Default behavior is no notifications sent.", + "This value will result in a notification being sent, if the updated fields are part of an allowlist." + ], + "type": "string" + }, "programLogo": { "$ref": "Image", "description": "Required. The logo of the loyalty program or company. This logo is displayed in both the details and list views of the app." @@ -6758,6 +6842,18 @@ }, "type": "array" }, + "notifyPreference": { + "description": "Whether or not field updates to this object should trigger notifications. When set to NOTIFY, we will attempt to trigger a field update notification to users. These notifications will only be sent to users if the field is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered.", + "enum": [ + "NOTIFICATION_SETTINGS_FOR_UPDATES_UNSPECIFIED", + "NOTIFY_ON_UPDATE" + ], + "enumDescriptions": [ + "Default behavior is no notifications sent.", + "This value will result in a notification being sent, if the updated fields are part of an allowlist." + ], + "type": "string" + }, "passConstraints": { "$ref": "PassConstraints", "description": "Pass constraints for the object. Includes limiting NFC and screenshot behaviors." @@ -7458,6 +7554,18 @@ ], "type": "string" }, + "notifyPreference": { + "description": "Whether or not field updates to this class should trigger notifications. When set to NOTIFY, we will attempt to trigger a field update notification to users. These notifications will only be sent to users if the field is part of an allowlist. If not specified, no notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered.", + "enum": [ + "NOTIFICATION_SETTINGS_FOR_UPDATES_UNSPECIFIED", + "NOTIFY_ON_UPDATE" + ], + "enumDescriptions": [ + "Default behavior is no notifications sent.", + "This value will result in a notification being sent, if the updated fields are part of an allowlist." + ], + "type": "string" + }, "provider": { "description": "Required. The offer provider (either the aggregator name or merchant name). Recommended maximum length is 12 characters to ensure full string is displayed on smaller screens.", "type": "string" @@ -7721,6 +7829,18 @@ }, "type": "array" }, + "notifyPreference": { + "description": "Whether or not field updates to this object should trigger notifications. When set to NOTIFY, we will attempt to trigger a field update notification to users. These notifications will only be sent to users if the field is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered.", + "enum": [ + "NOTIFICATION_SETTINGS_FOR_UPDATES_UNSPECIFIED", + "NOTIFY_ON_UPDATE" + ], + "enumDescriptions": [ + "Default behavior is no notifications sent.", + "This value will result in a notification being sent, if the updated fields are part of an allowlist." + ], + "type": "string" + }, "passConstraints": { "$ref": "PassConstraints", "description": "Pass constraints for the object. Includes limiting NFC and screenshot behaviors." @@ -8849,6 +8969,18 @@ ], "type": "string" }, + "notifyPreference": { + "description": "Whether or not field updates to this class should trigger notifications. When set to NOTIFY, we will attempt to trigger a field update notification to users. These notifications will only be sent to users if the field is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered.", + "enum": [ + "NOTIFICATION_SETTINGS_FOR_UPDATES_UNSPECIFIED", + "NOTIFY_ON_UPDATE" + ], + "enumDescriptions": [ + "Default behavior is no notifications sent.", + "This value will result in a notification being sent, if the updated fields are part of an allowlist." + ], + "type": "string" + }, "redemptionIssuers": { "description": "Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.", "items": { @@ -9157,6 +9289,18 @@ }, "type": "array" }, + "notifyPreference": { + "description": "Whether or not field updates to this object should trigger notifications. When set to NOTIFY, we will attempt to trigger a field update notification to users. These notifications will only be sent to users if the field is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered.", + "enum": [ + "NOTIFICATION_SETTINGS_FOR_UPDATES_UNSPECIFIED", + "NOTIFY_ON_UPDATE" + ], + "enumDescriptions": [ + "Default behavior is no notifications sent.", + "This value will result in a notification being sent, if the updated fields are part of an allowlist." + ], + "type": "string" + }, "passConstraints": { "$ref": "PassConstraints", "description": "Pass constraints for the object. Includes limiting NFC and screenshot behaviors." diff --git a/Src/Generated/Google.Apis.Walletobjects.v1/Google.Apis.Walletobjects.v1.cs b/Src/Generated/Google.Apis.Walletobjects.v1/Google.Apis.Walletobjects.v1.cs index 3ea83245b79..80f4c6de733 100644 --- a/Src/Generated/Google.Apis.Walletobjects.v1/Google.Apis.Walletobjects.v1.cs +++ b/Src/Generated/Google.Apis.Walletobjects.v1/Google.Apis.Walletobjects.v1.cs @@ -7681,6 +7681,15 @@ public class EventTicketClass : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("multipleDevicesAndHoldersAllowedStatus")] public virtual string MultipleDevicesAndHoldersAllowedStatus { get; set; } + /// + /// Whether or not field updates to this class should trigger notifications. When set to NOTIFY, we will attempt + /// to trigger a field update notification to users. These notifications will only be sent to users if the field + /// is part of an allowlist. If not specified, no notification will be triggered. This setting is ephemeral and + /// needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered. + /// + [Newtonsoft.Json.JsonPropertyAttribute("notifyPreference")] + public virtual string NotifyPreference { get; set; } + /// /// Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by /// their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` @@ -7942,6 +7951,16 @@ public class EventTicketObject : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("messages")] public virtual System.Collections.Generic.IList Messages { get; set; } + /// + /// Whether or not field updates to this object should trigger notifications. When set to NOTIFY, we will + /// attempt to trigger a field update notification to users. These notifications will only be sent to users if + /// the field is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no + /// notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE + /// request, otherwise a notification will not be triggered. + /// + [Newtonsoft.Json.JsonPropertyAttribute("notifyPreference")] + public virtual string NotifyPreference { get; set; } + /// Pass constraints for the object. Includes limiting NFC and screenshot behaviors. [Newtonsoft.Json.JsonPropertyAttribute("passConstraints")] public virtual PassConstraints PassConstraints { get; set; } @@ -8408,6 +8427,15 @@ public class FlightClass : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("multipleDevicesAndHoldersAllowedStatus")] public virtual string MultipleDevicesAndHoldersAllowedStatus { get; set; } + /// + /// Whether or not field updates to this class should trigger notifications. When set to NOTIFY, we will attempt + /// to trigger a field update notification to users. These notifications will only be sent to users if the field + /// is part of an allowlist. If not specified, no notification will be triggered. This setting is ephemeral and + /// needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered. + /// + [Newtonsoft.Json.JsonPropertyAttribute("notifyPreference")] + public virtual string NotifyPreference { get; set; } + /// Required. Origin airport. [Newtonsoft.Json.JsonPropertyAttribute("origin")] public virtual AirportInfo Origin { get; set; } @@ -8667,6 +8695,16 @@ public class FlightObject : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("messages")] public virtual System.Collections.Generic.IList Messages { get; set; } + /// + /// Whether or not field updates to this object should trigger notifications. When set to NOTIFY, we will + /// attempt to trigger a field update notification to users. These notifications will only be sent to users if + /// the field is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no + /// notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE + /// request, otherwise a notification will not be triggered. + /// + [Newtonsoft.Json.JsonPropertyAttribute("notifyPreference")] + public virtual string NotifyPreference { get; set; } + /// Pass constraints for the object. Includes limiting NFC and screenshot behaviors. [Newtonsoft.Json.JsonPropertyAttribute("passConstraints")] public virtual PassConstraints PassConstraints { get; set; } @@ -9298,6 +9336,15 @@ public class GiftCardClass : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("multipleDevicesAndHoldersAllowedStatus")] public virtual string MultipleDevicesAndHoldersAllowedStatus { get; set; } + /// + /// Whether or not field updates to this class should trigger notifications. When set to NOTIFY, we will attempt + /// to trigger a field update notification to users. These notifications will only be sent to users if the field + /// is part of an allowlist. If not specified, no notification will be triggered. This setting is ephemeral and + /// needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered. + /// + [Newtonsoft.Json.JsonPropertyAttribute("notifyPreference")] + public virtual string NotifyPreference { get; set; } + /// The label to display for the PIN, such as "4-digit PIN". [Newtonsoft.Json.JsonPropertyAttribute("pinLabel")] public virtual string PinLabel { get; set; } @@ -9535,6 +9582,16 @@ public class GiftCardObject : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("messages")] public virtual System.Collections.Generic.IList Messages { get; set; } + /// + /// Whether or not field updates to this object should trigger notifications. When set to NOTIFY, we will + /// attempt to trigger a field update notification to users. These notifications will only be sent to users if + /// the field is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no + /// notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE + /// request, otherwise a notification will not be triggered. + /// + [Newtonsoft.Json.JsonPropertyAttribute("notifyPreference")] + public virtual string NotifyPreference { get; set; } + /// Pass constraints for the object. Includes limiting NFC and screenshot behaviors. [Newtonsoft.Json.JsonPropertyAttribute("passConstraints")] public virtual PassConstraints PassConstraints { get; set; } @@ -10157,6 +10214,15 @@ public class LoyaltyClass : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("multipleDevicesAndHoldersAllowedStatus")] public virtual string MultipleDevicesAndHoldersAllowedStatus { get; set; } + /// + /// Whether or not field updates to this class should trigger notifications. When set to NOTIFY, we will attempt + /// to trigger a field update notification to users. These notifications will only be sent to users if the field + /// is part of an allowlist. If not specified, no notification will be triggered. This setting is ephemeral and + /// needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered. + /// + [Newtonsoft.Json.JsonPropertyAttribute("notifyPreference")] + public virtual string NotifyPreference { get; set; } + /// /// Required. The logo of the loyalty program or company. This logo is displayed in both the details and list /// views of the app. @@ -10423,6 +10489,16 @@ public class LoyaltyObject : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("messages")] public virtual System.Collections.Generic.IList Messages { get; set; } + /// + /// Whether or not field updates to this object should trigger notifications. When set to NOTIFY, we will + /// attempt to trigger a field update notification to users. These notifications will only be sent to users if + /// the field is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no + /// notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE + /// request, otherwise a notification will not be triggered. + /// + [Newtonsoft.Json.JsonPropertyAttribute("notifyPreference")] + public virtual string NotifyPreference { get; set; } + /// Pass constraints for the object. Includes limiting NFC and screenshot behaviors. [Newtonsoft.Json.JsonPropertyAttribute("passConstraints")] public virtual PassConstraints PassConstraints { get; set; } @@ -11103,6 +11179,15 @@ public class OfferClass : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("multipleDevicesAndHoldersAllowedStatus")] public virtual string MultipleDevicesAndHoldersAllowedStatus { get; set; } + /// + /// Whether or not field updates to this class should trigger notifications. When set to NOTIFY, we will attempt + /// to trigger a field update notification to users. These notifications will only be sent to users if the field + /// is part of an allowlist. If not specified, no notification will be triggered. This setting is ephemeral and + /// needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered. + /// + [Newtonsoft.Json.JsonPropertyAttribute("notifyPreference")] + public virtual string NotifyPreference { get; set; } + /// /// Required. The offer provider (either the aggregator name or merchant name). Recommended maximum length is 12 /// characters to ensure full string is displayed on smaller screens. @@ -11341,6 +11426,16 @@ public class OfferObject : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("messages")] public virtual System.Collections.Generic.IList Messages { get; set; } + /// + /// Whether or not field updates to this object should trigger notifications. When set to NOTIFY, we will + /// attempt to trigger a field update notification to users. These notifications will only be sent to users if + /// the field is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no + /// notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE + /// request, otherwise a notification will not be triggered. + /// + [Newtonsoft.Json.JsonPropertyAttribute("notifyPreference")] + public virtual string NotifyPreference { get; set; } + /// Pass constraints for the object. Includes limiting NFC and screenshot behaviors. [Newtonsoft.Json.JsonPropertyAttribute("passConstraints")] public virtual PassConstraints PassConstraints { get; set; } @@ -12369,6 +12464,16 @@ public class TransitClass : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("multipleDevicesAndHoldersAllowedStatus")] public virtual string MultipleDevicesAndHoldersAllowedStatus { get; set; } + /// + /// Whether or not field updates to this class should trigger notifications. When set to NOTIFY, we will attempt + /// to trigger a field update notification to users. These notifications will only be sent to users if the field + /// is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no notification will + /// be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a + /// notification will not be triggered. + /// + [Newtonsoft.Json.JsonPropertyAttribute("notifyPreference")] + public virtual string NotifyPreference { get; set; } + /// /// Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by /// their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` @@ -12617,6 +12722,16 @@ public class TransitObject : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("messages")] public virtual System.Collections.Generic.IList Messages { get; set; } + /// + /// Whether or not field updates to this object should trigger notifications. When set to NOTIFY, we will + /// attempt to trigger a field update notification to users. These notifications will only be sent to users if + /// the field is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no + /// notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE + /// request, otherwise a notification will not be triggered. + /// + [Newtonsoft.Json.JsonPropertyAttribute("notifyPreference")] + public virtual string NotifyPreference { get; set; } + /// Pass constraints for the object. Includes limiting NFC and screenshot behaviors. [Newtonsoft.Json.JsonPropertyAttribute("passConstraints")] public virtual PassConstraints PassConstraints { get; set; } diff --git a/Src/Generated/Google.Apis.Walletobjects.v1/Google.Apis.Walletobjects.v1.csproj b/Src/Generated/Google.Apis.Walletobjects.v1/Google.Apis.Walletobjects.v1.csproj index 8cf81fab049..f1a890aec6d 100644 --- a/Src/Generated/Google.Apis.Walletobjects.v1/Google.Apis.Walletobjects.v1.csproj +++ b/Src/Generated/Google.Apis.Walletobjects.v1/Google.Apis.Walletobjects.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Walletobjects.v1 Client Library - 1.68.0.3557 + 1.68.0.3577 Google LLC Copyright 2024 Google LLC Google From d6b78366858f2f3a7b567472ab8b34d3f945eeb1 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:56 -0700 Subject: [PATCH 59/61] feat: Generate Google.Apis.WorkloadManager.v1 version 1.68.0.3569 --- DiscoveryJson/workloadmanager.v1.json | 52 ++++++++++++++++++- .../Google.Apis.WorkloadManager.v1.cs | 31 +++++++++++ .../Google.Apis.WorkloadManager.v1.csproj | 2 +- 3 files changed, 83 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/workloadmanager.v1.json b/DiscoveryJson/workloadmanager.v1.json index 54acd339bd8..d4f00ee078f 100644 --- a/DiscoveryJson/workloadmanager.v1.json +++ b/DiscoveryJson/workloadmanager.v1.json @@ -772,7 +772,7 @@ } } }, - "revision": "20241002", + "revision": "20241009", "rootUrl": "https://workloadmanager.googleapis.com/", "schemas": { "AgentCommand": { @@ -1029,6 +1029,14 @@ "description": "The name of execution resource. The format is projects/{project}/locations/{location}/evaluations/{evaluation}/executions/{execution}", "type": "string" }, + "ruleResults": { + "description": "Output only. execution result summary per rule", + "items": { + "$ref": "RuleExecutionResult" + }, + "readOnly": true, + "type": "array" + }, "runType": { "description": "type represent whether the execution executed directly by user or scheduled according evaluation.schedule field.", "enum": [ @@ -1847,6 +1855,48 @@ }, "type": "object" }, + "RuleExecutionResult": { + "description": "Message for execution result summary per rule", + "id": "RuleExecutionResult", + "properties": { + "message": { + "description": "Execution message, if any", + "type": "string" + }, + "resultCount": { + "description": "Number of violations", + "format": "int64", + "type": "string" + }, + "rule": { + "description": "rule name", + "type": "string" + }, + "scannedResourceCount": { + "description": "Number of total scanned resources", + "format": "int64", + "type": "string" + }, + "state": { + "description": "Output only. The execution status", + "enum": [ + "STATE_UNSPECIFIED", + "STATE_SUCCESS", + "STATE_FAILURE", + "STATE_SKIPPED" + ], + "enumDescriptions": [ + "Unknown state", + "execution completed successfully", + "execution completed with failures", + "execution was not executed" + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "RunEvaluationRequest": { "description": "Message for creating a Execution", "id": "RunEvaluationRequest", diff --git a/Src/Generated/Google.Apis.WorkloadManager.v1/Google.Apis.WorkloadManager.v1.cs b/Src/Generated/Google.Apis.WorkloadManager.v1/Google.Apis.WorkloadManager.v1.cs index c20d6e5f53c..d2aef01da18 100644 --- a/Src/Generated/Google.Apis.WorkloadManager.v1/Google.Apis.WorkloadManager.v1.cs +++ b/Src/Generated/Google.Apis.WorkloadManager.v1/Google.Apis.WorkloadManager.v1.cs @@ -2140,6 +2140,10 @@ public virtual System.DateTimeOffset? InventoryTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("name")] public virtual string Name { get; set; } + /// Output only. execution result summary per rule + [Newtonsoft.Json.JsonPropertyAttribute("ruleResults")] + public virtual System.Collections.Generic.IList RuleResults { get; set; } + /// /// type represent whether the execution executed directly by user or scheduled according evaluation.schedule /// field. @@ -2877,6 +2881,33 @@ public class Rule : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + /// Message for execution result summary per rule + public class RuleExecutionResult : Google.Apis.Requests.IDirectResponseSchema + { + /// Execution message, if any + [Newtonsoft.Json.JsonPropertyAttribute("message")] + public virtual string Message { get; set; } + + /// Number of violations + [Newtonsoft.Json.JsonPropertyAttribute("resultCount")] + public virtual System.Nullable ResultCount { get; set; } + + /// rule name + [Newtonsoft.Json.JsonPropertyAttribute("rule")] + public virtual string Rule { get; set; } + + /// Number of total scanned resources + [Newtonsoft.Json.JsonPropertyAttribute("scannedResourceCount")] + public virtual System.Nullable ScannedResourceCount { get; set; } + + /// Output only. The execution status + [Newtonsoft.Json.JsonPropertyAttribute("state")] + public virtual string State { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// Message for creating a Execution public class RunEvaluationRequest : Google.Apis.Requests.IDirectResponseSchema { diff --git a/Src/Generated/Google.Apis.WorkloadManager.v1/Google.Apis.WorkloadManager.v1.csproj b/Src/Generated/Google.Apis.WorkloadManager.v1/Google.Apis.WorkloadManager.v1.csproj index c01eb2e7187..d3f172f5646 100644 --- a/Src/Generated/Google.Apis.WorkloadManager.v1/Google.Apis.WorkloadManager.v1.csproj +++ b/Src/Generated/Google.Apis.WorkloadManager.v1/Google.Apis.WorkloadManager.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.WorkloadManager.v1 Client Library - 1.68.0.3562 + 1.68.0.3569 Google LLC Copyright 2024 Google LLC Google From 1569e693a673e44ccceddd6646cb4319ca05bb04 Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:13:59 -0700 Subject: [PATCH 60/61] feat: Generate Google.Apis.CloudWorkstations.v1 version 1.68.0.3569 --- DiscoveryJson/workstations.v1.json | 52 +++++++++++++- .../Google.Apis.CloudWorkstations.v1.cs | 72 +++++++++++++++++++ .../Google.Apis.CloudWorkstations.v1.csproj | 2 +- 3 files changed, 124 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/workstations.v1.json b/DiscoveryJson/workstations.v1.json index da5bec6b3f1..8f8a14f9f42 100644 --- a/DiscoveryJson/workstations.v1.json +++ b/DiscoveryJson/workstations.v1.json @@ -1195,7 +1195,7 @@ } } }, - "revision": "20240904", + "revision": "20241009", "rootUrl": "https://workstations.googleapis.com/", "schemas": { "Accelerator": { @@ -1284,6 +1284,42 @@ }, "type": "object" }, + "BoostConfig": { + "description": "A configuration that workstations can boost to.", + "id": "BoostConfig", + "properties": { + "accelerators": { + "description": "Optional. A list of the type and count of accelerator cards attached to the boost instance. Defaults to `none`.", + "items": { + "$ref": "Accelerator" + }, + "type": "array" + }, + "bootDiskSizeGb": { + "description": "Optional. The size of the boot disk for the VM in gigabytes (GB). The minimum boot disk size is `30` GB. Defaults to `50` GB.", + "format": "int32", + "type": "integer" + }, + "enableNestedVirtualization": { + "description": "Optional. Whether to enable nested virtualization on boosted Cloud Workstations VMs running using this boost configuration. Defaults to false. Nested virtualization lets you run virtual machine (VM) instances inside your workstation. Before enabling nested virtualization, consider the following important considerations. Cloud Workstations instances are subject to the [same restrictions as Compute Engine instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions): * **Organization policy**: projects, folders, or organizations may be restricted from creating nested VMs if the **Disable VM nested virtualization** constraint is enforced in the organization policy. For more information, see the Compute Engine section, [Checking whether nested virtualization is allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed). * **Performance**: nested VMs might experience a 10% or greater decrease in performance for workloads that are CPU-bound and possibly greater than a 10% decrease for workloads that are input/output bound. * **Machine Type**: nested virtualization can only be enabled on boost configurations that specify a machine_type in the N1 or N2 machine series.", + "type": "boolean" + }, + "id": { + "description": "Optional. Required. The id to be used for the boost configuration.", + "type": "string" + }, + "machineType": { + "description": "Optional. The type of machine that boosted VM instances will use\u2014for example, `e2-standard-4`. For more information about machine types that Cloud Workstations supports, see the list of [available machine types](https://cloud.google.com/workstations/docs/available-machine-types). Defaults to `e2-standard-4`.", + "type": "string" + }, + "poolSize": { + "description": "Optional. The number of boost VMs that the system should keep idle so that workstations can be boosted quickly. Defaults to `0`.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "CancelOperationRequest": { "description": "The request message for Operations.CancelOperation.", "id": "CancelOperationRequest", @@ -1417,6 +1453,13 @@ }, "type": "array" }, + "boostConfigs": { + "description": "Optional. A list of the boost configurations that workstations created using this workstation configuration are allowed to use.", + "items": { + "$ref": "BoostConfig" + }, + "type": "array" + }, "bootDiskSizeGb": { "description": "Optional. The size of the boot disk for the VM in gigabytes (GB). The minimum boot disk size is `30` GB. Defaults to `50` GB.", "format": "int32", @@ -2286,6 +2329,13 @@ "description": "Immutable. Name of the Compute Engine subnetwork in which instances associated with this workstation cluster will be created. Must be part of the subnetwork specified for this workstation cluster.", "type": "string" }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Tag keys/values directly bound to this resource. For example: \"123/environment\": \"production\", \"123/costCenter\": \"marketing\"", + "type": "object" + }, "uid": { "description": "Output only. A system-assigned unique identifier for this workstation cluster.", "readOnly": true, diff --git a/Src/Generated/Google.Apis.CloudWorkstations.v1/Google.Apis.CloudWorkstations.v1.cs b/Src/Generated/Google.Apis.CloudWorkstations.v1/Google.Apis.CloudWorkstations.v1.cs index 7b3328f307f..57f94dd0616 100644 --- a/Src/Generated/Google.Apis.CloudWorkstations.v1/Google.Apis.CloudWorkstations.v1.cs +++ b/Src/Generated/Google.Apis.CloudWorkstations.v1/Google.Apis.CloudWorkstations.v1.cs @@ -2799,6 +2799,64 @@ public class Binding : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + /// A configuration that workstations can boost to. + public class BoostConfig : Google.Apis.Requests.IDirectResponseSchema + { + /// + /// Optional. A list of the type and count of accelerator cards attached to the boost instance. Defaults to + /// `none`. + /// + [Newtonsoft.Json.JsonPropertyAttribute("accelerators")] + public virtual System.Collections.Generic.IList Accelerators { get; set; } + + /// + /// Optional. The size of the boot disk for the VM in gigabytes (GB). The minimum boot disk size is `30` GB. + /// Defaults to `50` GB. + /// + [Newtonsoft.Json.JsonPropertyAttribute("bootDiskSizeGb")] + public virtual System.Nullable BootDiskSizeGb { get; set; } + + /// + /// Optional. Whether to enable nested virtualization on boosted Cloud Workstations VMs running using this boost + /// configuration. Defaults to false. Nested virtualization lets you run virtual machine (VM) instances inside + /// your workstation. Before enabling nested virtualization, consider the following important considerations. + /// Cloud Workstations instances are subject to the [same restrictions as Compute Engine + /// instances](https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions): * + /// **Organization policy**: projects, folders, or organizations may be restricted from creating nested VMs if + /// the **Disable VM nested virtualization** constraint is enforced in the organization policy. For more + /// information, see the Compute Engine section, [Checking whether nested virtualization is + /// allowed](https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed). + /// * **Performance**: nested VMs might experience a 10% or greater decrease in performance for workloads that + /// are CPU-bound and possibly greater than a 10% decrease for workloads that are input/output bound. * + /// **Machine Type**: nested virtualization can only be enabled on boost configurations that specify a + /// machine_type in the N1 or N2 machine series. + /// + [Newtonsoft.Json.JsonPropertyAttribute("enableNestedVirtualization")] + public virtual System.Nullable EnableNestedVirtualization { get; set; } + + /// Optional. Required. The id to be used for the boost configuration. + [Newtonsoft.Json.JsonPropertyAttribute("id")] + public virtual string Id { get; set; } + + /// + /// Optional. The type of machine that boosted VM instances will useā€”for example, `e2-standard-4`. For more + /// information about machine types that Cloud Workstations supports, see the list of [available machine + /// types](https://cloud.google.com/workstations/docs/available-machine-types). Defaults to `e2-standard-4`. + /// + [Newtonsoft.Json.JsonPropertyAttribute("machineType")] + public virtual string MachineType { get; set; } + + /// + /// Optional. The number of boost VMs that the system should keep idle so that workstations can be boosted + /// quickly. Defaults to `0`. + /// + [Newtonsoft.Json.JsonPropertyAttribute("poolSize")] + public virtual System.Nullable PoolSize { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// The request message for Operations.CancelOperation. public class CancelOperationRequest : Google.Apis.Requests.IDirectResponseSchema { @@ -2966,6 +3024,13 @@ public class GceInstance : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("accelerators")] public virtual System.Collections.Generic.IList Accelerators { get; set; } + /// + /// Optional. A list of the boost configurations that workstations created using this workstation configuration + /// are allowed to use. + /// + [Newtonsoft.Json.JsonPropertyAttribute("boostConfigs")] + public virtual System.Collections.Generic.IList BoostConfigs { get; set; } + /// /// Optional. The size of the boot disk for the VM in gigabytes (GB). The minimum boot disk size is `30` GB. /// Defaults to `50` GB. @@ -4270,6 +4335,13 @@ public virtual System.DateTimeOffset? DeleteTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("subnetwork")] public virtual string Subnetwork { get; set; } + /// + /// Optional. Tag keys/values directly bound to this resource. For example: "123/environment": "production", + /// "123/costCenter": "marketing" + /// + [Newtonsoft.Json.JsonPropertyAttribute("tags")] + public virtual System.Collections.Generic.IDictionary Tags { get; set; } + /// Output only. A system-assigned unique identifier for this workstation cluster. [Newtonsoft.Json.JsonPropertyAttribute("uid")] public virtual string Uid { get; set; } diff --git a/Src/Generated/Google.Apis.CloudWorkstations.v1/Google.Apis.CloudWorkstations.v1.csproj b/Src/Generated/Google.Apis.CloudWorkstations.v1/Google.Apis.CloudWorkstations.v1.csproj index d0c93348e78..c716a00db5b 100644 --- a/Src/Generated/Google.Apis.CloudWorkstations.v1/Google.Apis.CloudWorkstations.v1.csproj +++ b/Src/Generated/Google.Apis.CloudWorkstations.v1/Google.Apis.CloudWorkstations.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudWorkstations.v1 Client Library - 1.68.0.3534 + 1.68.0.3569 Google LLC Copyright 2024 Google LLC Google From a865a98705c777f4d0a584d7d38b6c72140bf8ee Mon Sep 17 00:00:00 2001 From: Amanda Tarafa Mas Date: Mon, 21 Oct 2024 01:14:02 -0700 Subject: [PATCH 61/61] feat: Generate Google.Apis.CloudWorkstations.v1beta version 1.68.0.3569 --- DiscoveryJson/workstations.v1beta.json | 9 ++++++++- .../Google.Apis.CloudWorkstations.v1beta.cs | 7 +++++++ .../Google.Apis.CloudWorkstations.v1beta.csproj | 2 +- 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/DiscoveryJson/workstations.v1beta.json b/DiscoveryJson/workstations.v1beta.json index 838e2dfae78..56add30e609 100644 --- a/DiscoveryJson/workstations.v1beta.json +++ b/DiscoveryJson/workstations.v1beta.json @@ -1127,7 +1127,7 @@ } } }, - "revision": "20240904", + "revision": "20241009", "rootUrl": "https://workstations.googleapis.com/", "schemas": { "Accelerator": { @@ -2268,6 +2268,13 @@ "description": "Immutable. Name of the Compute Engine subnetwork in which instances associated with this workstation cluster will be created. Must be part of the subnetwork specified for this workstation cluster.", "type": "string" }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Tag keys/values directly bound to this resource. For example: \"123/environment\": \"production\", \"123/costCenter\": \"marketing\"", + "type": "object" + }, "uid": { "description": "Output only. A system-assigned unique identifier for this workstation cluster.", "readOnly": true, diff --git a/Src/Generated/Google.Apis.CloudWorkstations.v1beta/Google.Apis.CloudWorkstations.v1beta.cs b/Src/Generated/Google.Apis.CloudWorkstations.v1beta/Google.Apis.CloudWorkstations.v1beta.cs index c0fde609407..52c07656dea 100644 --- a/Src/Generated/Google.Apis.CloudWorkstations.v1beta/Google.Apis.CloudWorkstations.v1beta.cs +++ b/Src/Generated/Google.Apis.CloudWorkstations.v1beta/Google.Apis.CloudWorkstations.v1beta.cs @@ -4219,6 +4219,13 @@ public virtual System.DateTimeOffset? DeleteTimeDateTimeOffset [Newtonsoft.Json.JsonPropertyAttribute("subnetwork")] public virtual string Subnetwork { get; set; } + /// + /// Optional. Tag keys/values directly bound to this resource. For example: "123/environment": "production", + /// "123/costCenter": "marketing" + /// + [Newtonsoft.Json.JsonPropertyAttribute("tags")] + public virtual System.Collections.Generic.IDictionary Tags { get; set; } + /// Output only. A system-assigned unique identifier for this workstation cluster. [Newtonsoft.Json.JsonPropertyAttribute("uid")] public virtual string Uid { get; set; } diff --git a/Src/Generated/Google.Apis.CloudWorkstations.v1beta/Google.Apis.CloudWorkstations.v1beta.csproj b/Src/Generated/Google.Apis.CloudWorkstations.v1beta/Google.Apis.CloudWorkstations.v1beta.csproj index a2a265d032c..2db091b775c 100644 --- a/Src/Generated/Google.Apis.CloudWorkstations.v1beta/Google.Apis.CloudWorkstations.v1beta.csproj +++ b/Src/Generated/Google.Apis.CloudWorkstations.v1beta/Google.Apis.CloudWorkstations.v1beta.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudWorkstations.v1beta Client Library - 1.68.0.3534 + 1.68.0.3569 Google LLC Copyright 2024 Google LLC Google