From a8d941461d22e8ef16843883e66afe33f5605553 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Bot Date: Fri, 26 Jan 2024 00:22:15 -0800 Subject: [PATCH] feat(all): auto-regenerate discovery clients (#2377) --- api-list.json | 15 + apphub/v1/apphub-api.json | 4 +- apphub/v1/apphub-gen.go | 6 +- apphub/v1alpha/apphub-api.json | 4 +- apphub/v1alpha/apphub-gen.go | 6 +- .../v1beta1/artifactregistry-api.json | 49 +- .../v1beta1/artifactregistry-gen.go | 6 +- cloudasset/v1p5beta1/cloudasset-api.json | 4 +- cloudasset/v1p5beta1/cloudasset-gen.go | 6 +- cloudfunctions/v1/cloudfunctions-api.json | 6 +- cloudfunctions/v1/cloudfunctions-gen.go | 18 +- cloudfunctions/v2/cloudfunctions-api.json | 4 +- cloudfunctions/v2/cloudfunctions-gen.go | 6 +- .../v2alpha/cloudfunctions-api.json | 4 +- cloudfunctions/v2alpha/cloudfunctions-gen.go | 6 +- cloudfunctions/v2beta/cloudfunctions-api.json | 4 +- cloudfunctions/v2beta/cloudfunctions-gen.go | 6 +- container/v1/container-api.json | 34 +- container/v1/container-gen.go | 34 +- dialogflow/v2/dialogflow-api.json | 8 +- dialogflow/v2/dialogflow-gen.go | 12 +- dialogflow/v2beta1/dialogflow-api.json | 8 +- dialogflow/v2beta1/dialogflow-gen.go | 12 +- dialogflow/v3/dialogflow-api.json | 6 +- dialogflow/v3/dialogflow-gen.go | 8 +- dialogflow/v3beta1/dialogflow-api.json | 6 +- dialogflow/v3beta1/dialogflow-gen.go | 8 +- displayvideo/v1/displayvideo-api.json | 11 +- displayvideo/v1/displayvideo-gen.go | 4 + displayvideo/v2/displayvideo-api.json | 204 ++- displayvideo/v2/displayvideo-gen.go | 559 ++++++++ displayvideo/v3/displayvideo-api.json | 864 +++++++++++- displayvideo/v3/displayvideo-gen.go | 1194 +++++++++++++++++ .../v2/doubleclicksearch-api.json | 4 +- doubleclicksearch/v2/doubleclicksearch-gen.go | 6 +- drive/v3/drive-api.json | 240 +++- drive/v3/drive-gen.go | 543 ++++++++ identitytoolkit/v2/identitytoolkit-api.json | 4 +- identitytoolkit/v2/identitytoolkit-gen.go | 6 +- monitoring/v1/monitoring-api.json | 20 +- monitoring/v1/monitoring-gen.go | 37 +- run/v2/run-api.json | 4 +- run/v2/run-gen.go | 6 +- .../v1/servicemanagement-api.json | 4 +- servicemanagement/v1/servicemanagement-gen.go | 6 +- vmmigration/v1/vmmigration-api.json | 4 +- vmmigration/v1/vmmigration-gen.go | 2 +- vmmigration/v1alpha1/vmmigration-api.json | 4 +- vmmigration/v1alpha1/vmmigration-gen.go | 2 +- workspaceevents/v1/workspaceevents-api.json | 106 ++ workspaceevents/v1/workspaceevents-gen.go | 141 ++ 51 files changed, 4056 insertions(+), 209 deletions(-) create mode 100644 workspaceevents/v1/workspaceevents-api.json create mode 100644 workspaceevents/v1/workspaceevents-gen.go diff --git a/api-list.json b/api-list.json index 44ffba6a2ff..e34491a50d0 100644 --- a/api-list.json +++ b/api-list.json @@ -6442,6 +6442,21 @@ "documentationLink": "https://cloud.google.com/workload-manager/docs", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "workspaceevents:v1", + "name": "workspaceevents", + "version": "v1", + "title": "Google Workspace Events API", + "description": "The Google Workspace Events API lets you subscribe to events and manage change notifications across Google Workspace applications.", + "discoveryRestUrl": "https://workspaceevents.googleapis.com/$discovery/rest?version=v1", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://developers.google.com/workspace/events", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "workstations:v1beta", diff --git a/apphub/v1/apphub-api.json b/apphub/v1/apphub-api.json index ad17976928a..38a3c902631 100644 --- a/apphub/v1/apphub-api.json +++ b/apphub/v1/apphub-api.json @@ -396,7 +396,7 @@ } } }, - "revision": "20240116", + "revision": "20240122", "rootUrl": "https://apphub.googleapis.com/", "schemas": { "AuditConfig": { @@ -463,7 +463,7 @@ "type": "array" }, "role": { - "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "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" } }, diff --git a/apphub/v1/apphub-gen.go b/apphub/v1/apphub-gen.go index 38eddd57b72..ddc8492d785 100644 --- a/apphub/v1/apphub-gen.go +++ b/apphub/v1/apphub-gen.go @@ -377,7 +377,11 @@ type Binding struct { Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. - // For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + // 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). Role string `json:"role,omitempty"` // ForceSendFields is a list of field names (e.g. "Condition") to diff --git a/apphub/v1alpha/apphub-api.json b/apphub/v1alpha/apphub-api.json index 7b9396564f1..fc62f467338 100644 --- a/apphub/v1alpha/apphub-api.json +++ b/apphub/v1alpha/apphub-api.json @@ -1378,7 +1378,7 @@ } } }, - "revision": "20240104", + "revision": "20240122", "rootUrl": "https://apphub.googleapis.com/", "schemas": { "Application": { @@ -1542,7 +1542,7 @@ "type": "array" }, "role": { - "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "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" } }, diff --git a/apphub/v1alpha/apphub-gen.go b/apphub/v1alpha/apphub-gen.go index 373ec95f59c..427fc717a70 100644 --- a/apphub/v1alpha/apphub-gen.go +++ b/apphub/v1alpha/apphub-gen.go @@ -552,7 +552,11 @@ type Binding struct { Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. - // For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + // 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). Role string `json:"role,omitempty"` // ForceSendFields is a list of field names (e.g. "Condition") to diff --git a/artifactregistry/v1beta1/artifactregistry-api.json b/artifactregistry/v1beta1/artifactregistry-api.json index c541dd6690b..c6b9d6fab88 100644 --- a/artifactregistry/v1beta1/artifactregistry-api.json +++ b/artifactregistry/v1beta1/artifactregistry-api.json @@ -23,51 +23,6 @@ "description": "Regional Endpoint", "endpointUrl": "https://artifactregistry.me-central2.rep.googleapis.com/", "location": "me-central2" - }, - { - "description": "Locational Endpoint", - "endpointUrl": "https://apt.me-central2.rep.pkg.dev/", - "location": "me-central2" - }, - { - "description": "Locational Endpoint", - "endpointUrl": "https://docker.me-central2.rep.pkg.dev/", - "location": "me-central2" - }, - { - "description": "Locational Endpoint", - "endpointUrl": "https://go.me-central2.rep.pkg.dev/", - "location": "me-central2" - }, - { - "description": "Locational Endpoint", - "endpointUrl": "https://googet.me-central2.rep.pkg.dev/", - "location": "me-central2" - }, - { - "description": "Locational Endpoint", - "endpointUrl": "https://kfp.me-central2.rep.pkg.dev/", - "location": "me-central2" - }, - { - "description": "Locational Endpoint", - "endpointUrl": "https://maven.me-central2.rep.pkg.dev/", - "location": "me-central2" - }, - { - "description": "Locational Endpoint", - "endpointUrl": "https://npm.me-central2.rep.pkg.dev/", - "location": "me-central2" - }, - { - "description": "Locational Endpoint", - "endpointUrl": "https://python.me-central2.rep.pkg.dev/", - "location": "me-central2" - }, - { - "description": "Locational Endpoint", - "endpointUrl": "https://yum.me-central2.rep.pkg.dev/", - "location": "me-central2" } ], "fullyEncodeReservedExpansion": true, @@ -981,7 +936,7 @@ } } }, - "revision": "20240102", + "revision": "20240122", "rootUrl": "https://artifactregistry.googleapis.com/", "schemas": { "Binding": { @@ -1000,7 +955,7 @@ "type": "array" }, "role": { - "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "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" } }, diff --git a/artifactregistry/v1beta1/artifactregistry-gen.go b/artifactregistry/v1beta1/artifactregistry-gen.go index 28be72156da..9d9a48d55e1 100644 --- a/artifactregistry/v1beta1/artifactregistry-gen.go +++ b/artifactregistry/v1beta1/artifactregistry-gen.go @@ -338,7 +338,11 @@ type Binding struct { Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. - // For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + // 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). Role string `json:"role,omitempty"` // ForceSendFields is a list of field names (e.g. "Condition") to diff --git a/cloudasset/v1p5beta1/cloudasset-api.json b/cloudasset/v1p5beta1/cloudasset-api.json index 9eecb15b9cc..5a616d017d9 100644 --- a/cloudasset/v1p5beta1/cloudasset-api.json +++ b/cloudasset/v1p5beta1/cloudasset-api.json @@ -177,7 +177,7 @@ } } }, - "revision": "20240105", + "revision": "20240119", "rootUrl": "https://cloudasset.googleapis.com/", "schemas": { "AnalyzeIamPolicyLongrunningMetadata": { @@ -312,7 +312,7 @@ "type": "array" }, "role": { - "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "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" } }, diff --git a/cloudasset/v1p5beta1/cloudasset-gen.go b/cloudasset/v1p5beta1/cloudasset-gen.go index a71639678dc..86ae4ba1650 100644 --- a/cloudasset/v1p5beta1/cloudasset-gen.go +++ b/cloudasset/v1p5beta1/cloudasset-gen.go @@ -462,7 +462,11 @@ type Binding struct { Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. - // For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + // 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). Role string `json:"role,omitempty"` // ForceSendFields is a list of field names (e.g. "Condition") to diff --git a/cloudfunctions/v1/cloudfunctions-api.json b/cloudfunctions/v1/cloudfunctions-api.json index be160acc78c..210ba07f595 100644 --- a/cloudfunctions/v1/cloudfunctions-api.json +++ b/cloudfunctions/v1/cloudfunctions-api.json @@ -552,7 +552,7 @@ } } }, - "revision": "20240104", + "revision": "20240118", "rootUrl": "https://cloudfunctions.googleapis.com/", "schemas": { "AuditConfig": { @@ -625,7 +625,7 @@ "type": "array" }, "role": { - "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "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" } }, @@ -968,7 +968,7 @@ "id": "GenerateUploadUrlRequest", "properties": { "kmsKeyName": { - "description": "Resource name of a KMS crypto key (managed by the user) used to encrypt/decrypt function source code objects in staging Cloud Storage buckets. When you generate an upload url and upload your source code, it gets copied to a staging Cloud Storage bucket in an internal regional project. The source code is then copied to a versioned directory in the sources bucket in the consumer project during the function deployment. It must match the pattern `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`. The Google Cloud Functions service account (service-{project_number}@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role 'Cloud KMS CryptoKey Encrypter/Decrypter (roles/cloudkms.cryptoKeyEncrypterDecrypter)' on the Key/KeyRing/Project/Organization (least access preferred). GCF will delegate access to the Google Storage service account in the internal project.", + "description": "Resource name of a KMS crypto key (managed by the user) used to encrypt/decrypt function source code objects in intermediate Cloud Storage buckets. When you generate an upload url and upload your source code, it gets copied to an intermediate Cloud Storage bucket. The source code is then copied to a versioned directory in the sources bucket in the consumer project during the function deployment. It must match the pattern `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`. The Google Cloud Functions service account (service-{project_number}@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role 'Cloud KMS CryptoKey Encrypter/Decrypter (roles/cloudkms.cryptoKeyEncrypterDecrypter)' on the Key/KeyRing/Project/Organization (least access preferred). GCF will delegate access to the Google Storage service account in the internal project.", "type": "string" } }, diff --git a/cloudfunctions/v1/cloudfunctions-gen.go b/cloudfunctions/v1/cloudfunctions-gen.go index ab3870c333c..5d86d9b4409 100644 --- a/cloudfunctions/v1/cloudfunctions-gen.go +++ b/cloudfunctions/v1/cloudfunctions-gen.go @@ -382,7 +382,11 @@ type Binding struct { Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. - // For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + // 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). Role string `json:"role,omitempty"` // ForceSendFields is a list of field names (e.g. "Condition") to @@ -964,12 +968,12 @@ func (s *GenerateDownloadUrlResponse) MarshalJSON() ([]byte, error) { // method. type GenerateUploadUrlRequest struct { // KmsKeyName: Resource name of a KMS crypto key (managed by the user) - // used to encrypt/decrypt function source code objects in staging Cloud - // Storage buckets. When you generate an upload url and upload your - // source code, it gets copied to a staging Cloud Storage bucket in an - // internal regional project. The source code is then copied to a - // versioned directory in the sources bucket in the consumer project - // during the function deployment. It must match the pattern + // used to encrypt/decrypt function source code objects in intermediate + // Cloud Storage buckets. When you generate an upload url and upload + // your source code, it gets copied to an intermediate Cloud Storage + // bucket. The source code is then copied to a versioned directory in + // the sources bucket in the consumer project during the function + // deployment. It must match the pattern // `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKey // s/{crypto_key}`. The Google Cloud Functions service account // (service-{project_number}@gcf-admin-robot.iam.gserviceaccount.com) diff --git a/cloudfunctions/v2/cloudfunctions-api.json b/cloudfunctions/v2/cloudfunctions-api.json index d65740b9c81..9c3260dbcc1 100644 --- a/cloudfunctions/v2/cloudfunctions-api.json +++ b/cloudfunctions/v2/cloudfunctions-api.json @@ -571,7 +571,7 @@ } } }, - "revision": "20240104", + "revision": "20240118", "rootUrl": "https://cloudfunctions.googleapis.com/", "schemas": { "AuditConfig": { @@ -644,7 +644,7 @@ "type": "array" }, "role": { - "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "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" } }, diff --git a/cloudfunctions/v2/cloudfunctions-gen.go b/cloudfunctions/v2/cloudfunctions-gen.go index 9c0e20f831b..0eb53c1b6ee 100644 --- a/cloudfunctions/v2/cloudfunctions-gen.go +++ b/cloudfunctions/v2/cloudfunctions-gen.go @@ -394,7 +394,11 @@ type Binding struct { Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. - // For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + // 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). Role string `json:"role,omitempty"` // ForceSendFields is a list of field names (e.g. "Condition") to diff --git a/cloudfunctions/v2alpha/cloudfunctions-api.json b/cloudfunctions/v2alpha/cloudfunctions-api.json index 9a6a38cd4d6..7dc57a31834 100644 --- a/cloudfunctions/v2alpha/cloudfunctions-api.json +++ b/cloudfunctions/v2alpha/cloudfunctions-api.json @@ -571,7 +571,7 @@ } } }, - "revision": "20240104", + "revision": "20240118", "rootUrl": "https://cloudfunctions.googleapis.com/", "schemas": { "AuditConfig": { @@ -644,7 +644,7 @@ "type": "array" }, "role": { - "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "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" } }, diff --git a/cloudfunctions/v2alpha/cloudfunctions-gen.go b/cloudfunctions/v2alpha/cloudfunctions-gen.go index 2b0354c2696..91479b93615 100644 --- a/cloudfunctions/v2alpha/cloudfunctions-gen.go +++ b/cloudfunctions/v2alpha/cloudfunctions-gen.go @@ -394,7 +394,11 @@ type Binding struct { Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. - // For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + // 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). Role string `json:"role,omitempty"` // ForceSendFields is a list of field names (e.g. "Condition") to diff --git a/cloudfunctions/v2beta/cloudfunctions-api.json b/cloudfunctions/v2beta/cloudfunctions-api.json index 7041d569d8f..14f323faaf3 100644 --- a/cloudfunctions/v2beta/cloudfunctions-api.json +++ b/cloudfunctions/v2beta/cloudfunctions-api.json @@ -571,7 +571,7 @@ } } }, - "revision": "20240104", + "revision": "20240118", "rootUrl": "https://cloudfunctions.googleapis.com/", "schemas": { "AuditConfig": { @@ -644,7 +644,7 @@ "type": "array" }, "role": { - "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "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" } }, diff --git a/cloudfunctions/v2beta/cloudfunctions-gen.go b/cloudfunctions/v2beta/cloudfunctions-gen.go index 07db1de6962..832bc012ace 100644 --- a/cloudfunctions/v2beta/cloudfunctions-gen.go +++ b/cloudfunctions/v2beta/cloudfunctions-gen.go @@ -394,7 +394,11 @@ type Binding struct { Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. - // For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + // 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). Role string `json:"role,omitempty"` // ForceSendFields is a list of field names (e.g. "Condition") to diff --git a/container/v1/container-api.json b/container/v1/container-api.json index 5d3d1feeb87..129890a214a 100644 --- a/container/v1/container-api.json +++ b/container/v1/container-api.json @@ -367,7 +367,7 @@ ] }, "getJwks": { - "description": "Gets the public component of the cluster signing keys in JSON Web Key format. This API is not yet intended for general use, and is not available for all clusters.", + "description": "Gets the public component of the cluster signing keys in JSON Web Key format.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/jwks", "httpMethod": "GET", "id": "container.projects.locations.clusters.getJwks", @@ -1108,7 +1108,7 @@ "well-known": { "methods": { "getOpenid-configuration": { - "description": "Gets the OIDC discovery document for the cluster. See the [OpenID Connect Discovery 1.0 specification](https://openid.net/specs/openid-connect-discovery-1_0.html) for details. This API is not yet intended for general use, and is not available for all clusters.", + "description": "Gets the OIDC discovery document for the cluster. See the [OpenID Connect Discovery 1.0 specification](https://openid.net/specs/openid-connect-discovery-1_0.html) for details.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/.well-known/openid-configuration", "httpMethod": "GET", "id": "container.projects.locations.clusters.well-known.getOpenid-configuration", @@ -2540,7 +2540,7 @@ } } }, - "revision": "20231122", + "revision": "20240109", "rootUrl": "https://container.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -3558,6 +3558,20 @@ "description": "The desired image type for the node pool. NOTE: Set the \"desired_node_pool\" field as well.", "type": "string" }, + "desiredInTransitEncryptionConfig": { + "description": "Specify the details of in-transit encryption.", + "enum": [ + "IN_TRANSIT_ENCRYPTION_CONFIG_UNSPECIFIED", + "IN_TRANSIT_ENCRYPTION_DISABLED", + "IN_TRANSIT_ENCRYPTION_INTER_NODE_TRANSPARENT" + ], + "enumDescriptions": [ + "Unspecified, will be inferred as default - IN_TRANSIT_ENCRYPTION_UNSPECIFIED.", + "In-transit encryption is disabled.", + "Data in-transit is encrypted using inter-node transparent encryption." + ], + "type": "string" + }, "desiredIntraNodeVisibilityConfig": { "$ref": "IntraNodeVisibilityConfig", "description": "The desired config of Intra-node visibility." @@ -4967,6 +4981,20 @@ "$ref": "GatewayAPIConfig", "description": "GatewayAPIConfig contains the desired config of Gateway API on this cluster." }, + "inTransitEncryptionConfig": { + "description": "Specify the details of in-transit encryption.", + "enum": [ + "IN_TRANSIT_ENCRYPTION_CONFIG_UNSPECIFIED", + "IN_TRANSIT_ENCRYPTION_DISABLED", + "IN_TRANSIT_ENCRYPTION_INTER_NODE_TRANSPARENT" + ], + "enumDescriptions": [ + "Unspecified, will be inferred as default - IN_TRANSIT_ENCRYPTION_UNSPECIFIED.", + "In-transit encryption is disabled.", + "Data in-transit is encrypted using inter-node transparent encryption." + ], + "type": "string" + }, "network": { "description": "Output only. The relative name of the Google Compute Engine network(https://cloud.google.com/compute/docs/networks-and-firewalls#networks) to which the cluster is connected. Example: projects/my-project/global/networks/my-network", "type": "string" diff --git a/container/v1/container-gen.go b/container/v1/container-gen.go index e68680cd75b..00c4d710a2f 100644 --- a/container/v1/container-gen.go +++ b/container/v1/container-gen.go @@ -1803,6 +1803,18 @@ type ClusterUpdate struct { // the "desired_node_pool" field as well. DesiredImageType string `json:"desiredImageType,omitempty"` + // DesiredInTransitEncryptionConfig: Specify the details of in-transit + // encryption. + // + // Possible values: + // "IN_TRANSIT_ENCRYPTION_CONFIG_UNSPECIFIED" - Unspecified, will be + // inferred as default - IN_TRANSIT_ENCRYPTION_UNSPECIFIED. + // "IN_TRANSIT_ENCRYPTION_DISABLED" - In-transit encryption is + // disabled. + // "IN_TRANSIT_ENCRYPTION_INTER_NODE_TRANSPARENT" - Data in-transit is + // encrypted using inter-node transparent encryption. + DesiredInTransitEncryptionConfig string `json:"desiredInTransitEncryptionConfig,omitempty"` + // DesiredIntraNodeVisibilityConfig: The desired config of Intra-node // visibility. DesiredIntraNodeVisibilityConfig *IntraNodeVisibilityConfig `json:"desiredIntraNodeVisibilityConfig,omitempty"` @@ -4375,6 +4387,18 @@ type NetworkConfig struct { // Gateway API on this cluster. GatewayApiConfig *GatewayAPIConfig `json:"gatewayApiConfig,omitempty"` + // InTransitEncryptionConfig: Specify the details of in-transit + // encryption. + // + // Possible values: + // "IN_TRANSIT_ENCRYPTION_CONFIG_UNSPECIFIED" - Unspecified, will be + // inferred as default - IN_TRANSIT_ENCRYPTION_UNSPECIFIED. + // "IN_TRANSIT_ENCRYPTION_DISABLED" - In-transit encryption is + // disabled. + // "IN_TRANSIT_ENCRYPTION_INTER_NODE_TRANSPARENT" - Data in-transit is + // encrypted using inter-node transparent encryption. + InTransitEncryptionConfig string `json:"inTransitEncryptionConfig,omitempty"` + // Network: Output only. The relative name of the Google Compute Engine // network(https://cloud.google.com/compute/docs/networks-and-firewalls#n // etworks) to which the cluster is connected. Example: @@ -9752,8 +9776,7 @@ type ProjectsLocationsClustersGetJwksCall struct { } // GetJwks: Gets the public component of the cluster signing keys in -// JSON Web Key format. This API is not yet intended for general use, -// and is not available for all clusters. +// JSON Web Key format. // // - parent: The cluster (project, location, cluster name) to get keys // for. Specified in the format `projects/*/locations/*/clusters/*`. @@ -9862,7 +9885,7 @@ func (c *ProjectsLocationsClustersGetJwksCall) Do(opts ...googleapi.CallOption) } return ret, nil // { - // "description": "Gets the public component of the cluster signing keys in JSON Web Key format. This API is not yet intended for general use, and is not available for all clusters.", + // "description": "Gets the public component of the cluster signing keys in JSON Web Key format.", // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/jwks", // "httpMethod": "GET", // "id": "container.projects.locations.clusters.getJwks", @@ -13421,8 +13444,7 @@ type ProjectsLocationsClustersWellKnownGetOpenidConfigurationCall struct { // GetOpenidConfiguration: Gets the OIDC discovery document for the // cluster. See the OpenID Connect Discovery 1.0 specification // (https://openid.net/specs/openid-connect-discovery-1_0.html) for -// details. This API is not yet intended for general use, and is not -// available for all clusters. +// details. // // - parent: The cluster (project, location, cluster name) to get the // discovery document for. Specified in the format @@ -13532,7 +13554,7 @@ func (c *ProjectsLocationsClustersWellKnownGetOpenidConfigurationCall) Do(opts . } return ret, nil // { - // "description": "Gets the OIDC discovery document for the cluster. See the [OpenID Connect Discovery 1.0 specification](https://openid.net/specs/openid-connect-discovery-1_0.html) for details. This API is not yet intended for general use, and is not available for all clusters.", + // "description": "Gets the OIDC discovery document for the cluster. See the [OpenID Connect Discovery 1.0 specification](https://openid.net/specs/openid-connect-discovery-1_0.html) for details.", // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/.well-known/openid-configuration", // "httpMethod": "GET", // "id": "container.projects.locations.clusters.well-known.getOpenid-configuration", diff --git a/dialogflow/v2/dialogflow-api.json b/dialogflow/v2/dialogflow-api.json index d63bdb9ba4a..0432b18410e 100644 --- a/dialogflow/v2/dialogflow-api.json +++ b/dialogflow/v2/dialogflow-api.json @@ -8327,7 +8327,7 @@ } } }, - "revision": "20240113", + "revision": "20240122", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -9289,7 +9289,7 @@ "type": "string" }, "optOutConformerModelMigration": { - "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024.", + "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024. Please refer to [Dialogflow CX Speech model migration](https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration).", "type": "boolean" }, "phraseHints": { @@ -11501,7 +11501,7 @@ "type": "string" }, "optOutConformerModelMigration": { - "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024.", + "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024. Please refer to [Dialogflow CX Speech model migration](https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration).", "type": "boolean" }, "phraseHints": { @@ -15302,7 +15302,7 @@ "type": "string" }, "optOutConformerModelMigration": { - "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024.", + "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024. Please refer to [Dialogflow ES Speech model migration](https://cloud.google.com/dialogflow/es/docs/speech-model-migration).", "type": "boolean" }, "phraseHints": { diff --git a/dialogflow/v2/dialogflow-gen.go b/dialogflow/v2/dialogflow-gen.go index 372ee2723f2..83893589c01 100644 --- a/dialogflow/v2/dialogflow-gen.go +++ b/dialogflow/v2/dialogflow-gen.go @@ -2762,7 +2762,9 @@ type GoogleCloudDialogflowCxV3InputAudioConfig struct { // OptOutConformerModelMigration: If `true`, the request will opt out // for STT conformer model migration. This field will be deprecated once - // force migration takes place in June 2024. + // force migration takes place in June 2024. Please refer to Dialogflow + // CX Speech model migration + // (https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration). OptOutConformerModelMigration bool `json:"optOutConformerModelMigration,omitempty"` // PhraseHints: Optional. A list of strings containing words and phrases @@ -6853,7 +6855,9 @@ type GoogleCloudDialogflowCxV3beta1InputAudioConfig struct { // OptOutConformerModelMigration: If `true`, the request will opt out // for STT conformer model migration. This field will be deprecated once - // force migration takes place in June 2024. + // force migration takes place in June 2024. Please refer to Dialogflow + // CX Speech model migration + // (https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration). OptOutConformerModelMigration bool `json:"optOutConformerModelMigration,omitempty"` // PhraseHints: Optional. A list of strings containing words and phrases @@ -13672,7 +13676,9 @@ type GoogleCloudDialogflowV2InputAudioConfig struct { // OptOutConformerModelMigration: If `true`, the request will opt out // for STT conformer model migration. This field will be deprecated once - // force migration takes place in June 2024. + // force migration takes place in June 2024. Please refer to Dialogflow + // ES Speech model migration + // (https://cloud.google.com/dialogflow/es/docs/speech-model-migration). OptOutConformerModelMigration bool `json:"optOutConformerModelMigration,omitempty"` // PhraseHints: A list of strings containing words and phrases that the diff --git a/dialogflow/v2beta1/dialogflow-api.json b/dialogflow/v2beta1/dialogflow-api.json index 20f9136628f..ece5240ae0f 100644 --- a/dialogflow/v2beta1/dialogflow-api.json +++ b/dialogflow/v2beta1/dialogflow-api.json @@ -7695,7 +7695,7 @@ } } }, - "revision": "20240113", + "revision": "20240122", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -8657,7 +8657,7 @@ "type": "string" }, "optOutConformerModelMigration": { - "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024.", + "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024. Please refer to [Dialogflow CX Speech model migration](https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration).", "type": "boolean" }, "phraseHints": { @@ -10869,7 +10869,7 @@ "type": "string" }, "optOutConformerModelMigration": { - "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024.", + "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024. Please refer to [Dialogflow CX Speech model migration](https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration).", "type": "boolean" }, "phraseHints": { @@ -16564,7 +16564,7 @@ "type": "string" }, "optOutConformerModelMigration": { - "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024.", + "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024. Please refer to [Dialogflow ES Speech model migration](https://cloud.google.com/dialogflow/es/docs/speech-model-migration).", "type": "boolean" }, "phraseHints": { diff --git a/dialogflow/v2beta1/dialogflow-gen.go b/dialogflow/v2beta1/dialogflow-gen.go index 1115eeb684a..cb07e652952 100644 --- a/dialogflow/v2beta1/dialogflow-gen.go +++ b/dialogflow/v2beta1/dialogflow-gen.go @@ -2690,7 +2690,9 @@ type GoogleCloudDialogflowCxV3InputAudioConfig struct { // OptOutConformerModelMigration: If `true`, the request will opt out // for STT conformer model migration. This field will be deprecated once - // force migration takes place in June 2024. + // force migration takes place in June 2024. Please refer to Dialogflow + // CX Speech model migration + // (https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration). OptOutConformerModelMigration bool `json:"optOutConformerModelMigration,omitempty"` // PhraseHints: Optional. A list of strings containing words and phrases @@ -6781,7 +6783,9 @@ type GoogleCloudDialogflowCxV3beta1InputAudioConfig struct { // OptOutConformerModelMigration: If `true`, the request will opt out // for STT conformer model migration. This field will be deprecated once - // force migration takes place in June 2024. + // force migration takes place in June 2024. Please refer to Dialogflow + // CX Speech model migration + // (https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration). OptOutConformerModelMigration bool `json:"optOutConformerModelMigration,omitempty"` // PhraseHints: Optional. A list of strings containing words and phrases @@ -16802,7 +16806,9 @@ type GoogleCloudDialogflowV2beta1InputAudioConfig struct { // OptOutConformerModelMigration: If `true`, the request will opt out // for STT conformer model migration. This field will be deprecated once - // force migration takes place in June 2024. + // force migration takes place in June 2024. Please refer to Dialogflow + // ES Speech model migration + // (https://cloud.google.com/dialogflow/es/docs/speech-model-migration). OptOutConformerModelMigration bool `json:"optOutConformerModelMigration,omitempty"` // PhraseHints: A list of strings containing words and phrases that the diff --git a/dialogflow/v3/dialogflow-api.json b/dialogflow/v3/dialogflow-api.json index e4b2537eac8..bb5105ac2fa 100644 --- a/dialogflow/v3/dialogflow-api.json +++ b/dialogflow/v3/dialogflow-api.json @@ -4395,7 +4395,7 @@ } } }, - "revision": "20240113", + "revision": "20240122", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -6745,7 +6745,7 @@ "type": "string" }, "optOutConformerModelMigration": { - "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024.", + "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024. Please refer to [Dialogflow CX Speech model migration](https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration).", "type": "boolean" }, "phraseHints": { @@ -10566,7 +10566,7 @@ "type": "string" }, "optOutConformerModelMigration": { - "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024.", + "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024. Please refer to [Dialogflow CX Speech model migration](https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration).", "type": "boolean" }, "phraseHints": { diff --git a/dialogflow/v3/dialogflow-gen.go b/dialogflow/v3/dialogflow-gen.go index f513026b707..11a95708365 100644 --- a/dialogflow/v3/dialogflow-gen.go +++ b/dialogflow/v3/dialogflow-gen.go @@ -4859,7 +4859,9 @@ type GoogleCloudDialogflowCxV3InputAudioConfig struct { // OptOutConformerModelMigration: If `true`, the request will opt out // for STT conformer model migration. This field will be deprecated once - // force migration takes place in June 2024. + // force migration takes place in June 2024. Please refer to Dialogflow + // CX Speech model migration + // (https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration). OptOutConformerModelMigration bool `json:"optOutConformerModelMigration,omitempty"` // PhraseHints: Optional. A list of strings containing words and phrases @@ -11987,7 +11989,9 @@ type GoogleCloudDialogflowCxV3beta1InputAudioConfig struct { // OptOutConformerModelMigration: If `true`, the request will opt out // for STT conformer model migration. This field will be deprecated once - // force migration takes place in June 2024. + // force migration takes place in June 2024. Please refer to Dialogflow + // CX Speech model migration + // (https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration). OptOutConformerModelMigration bool `json:"optOutConformerModelMigration,omitempty"` // PhraseHints: Optional. A list of strings containing words and phrases diff --git a/dialogflow/v3beta1/dialogflow-api.json b/dialogflow/v3beta1/dialogflow-api.json index f944fb52d18..b043c35c228 100644 --- a/dialogflow/v3beta1/dialogflow-api.json +++ b/dialogflow/v3beta1/dialogflow-api.json @@ -4395,7 +4395,7 @@ } } }, - "revision": "20240113", + "revision": "20240122", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -5357,7 +5357,7 @@ "type": "string" }, "optOutConformerModelMigration": { - "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024.", + "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024. Please refer to [Dialogflow CX Speech model migration](https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration).", "type": "boolean" }, "phraseHints": { @@ -8957,7 +8957,7 @@ "type": "string" }, "optOutConformerModelMigration": { - "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024.", + "description": "If `true`, the request will opt out for STT conformer model migration. This field will be deprecated once force migration takes place in June 2024. Please refer to [Dialogflow CX Speech model migration](https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration).", "type": "boolean" }, "phraseHints": { diff --git a/dialogflow/v3beta1/dialogflow-gen.go b/dialogflow/v3beta1/dialogflow-gen.go index edad772f7e8..1b5e72e88a0 100644 --- a/dialogflow/v3beta1/dialogflow-gen.go +++ b/dialogflow/v3beta1/dialogflow-gen.go @@ -2354,7 +2354,9 @@ type GoogleCloudDialogflowCxV3InputAudioConfig struct { // OptOutConformerModelMigration: If `true`, the request will opt out // for STT conformer model migration. This field will be deprecated once - // force migration takes place in June 2024. + // force migration takes place in June 2024. Please refer to Dialogflow + // CX Speech model migration + // (https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration). OptOutConformerModelMigration bool `json:"optOutConformerModelMigration,omitempty"` // PhraseHints: Optional. A list of strings containing words and phrases @@ -8951,7 +8953,9 @@ type GoogleCloudDialogflowCxV3beta1InputAudioConfig struct { // OptOutConformerModelMigration: If `true`, the request will opt out // for STT conformer model migration. This field will be deprecated once - // force migration takes place in June 2024. + // force migration takes place in June 2024. Please refer to Dialogflow + // CX Speech model migration + // (https://cloud.google.com/dialogflow/cx/docs/concept/speech-model-migration). OptOutConformerModelMigration bool `json:"optOutConformerModelMigration,omitempty"` // PhraseHints: Optional. A list of strings containing words and phrases diff --git a/displayvideo/v1/displayvideo-api.json b/displayvideo/v1/displayvideo-api.json index 8c716e3f653..b5fd0d006f6 100644 --- a/displayvideo/v1/displayvideo-api.json +++ b/displayvideo/v1/displayvideo-api.json @@ -8146,7 +8146,7 @@ } } }, - "revision": "20240118", + "revision": "20240125", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActivateManualTriggerRequest": { @@ -10226,6 +10226,15 @@ "format": "int64", "type": "string" }, + "cmAdvertiserIds": { + "description": "Output only. The set of CM360 Advertiser IDs sharing the CM360 Floodlight configuration.", + "items": { + "format": "int64", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "cmFloodlightConfigId": { "description": "Required. Immutable. ID of the CM360 Floodlight configuration linked with the DV360 advertiser.", "format": "int64", diff --git a/displayvideo/v1/displayvideo-gen.go b/displayvideo/v1/displayvideo-gen.go index 5e0cdcc4891..d771c20175b 100644 --- a/displayvideo/v1/displayvideo-gen.go +++ b/displayvideo/v1/displayvideo-gen.go @@ -4129,6 +4129,10 @@ type CmHybridConfig struct { // configuration linked with the DV360 advertiser. CmAccountId int64 `json:"cmAccountId,omitempty,string"` + // CmAdvertiserIds: Output only. The set of CM360 Advertiser IDs sharing + // the CM360 Floodlight configuration. + CmAdvertiserIds googleapi.Int64s `json:"cmAdvertiserIds,omitempty"` + // CmFloodlightConfigId: Required. Immutable. ID of the CM360 Floodlight // configuration linked with the DV360 advertiser. CmFloodlightConfigId int64 `json:"cmFloodlightConfigId,omitempty,string"` diff --git a/displayvideo/v2/displayvideo-api.json b/displayvideo/v2/displayvideo-api.json index 0b191720961..4f55e14b80d 100644 --- a/displayvideo/v2/displayvideo-api.json +++ b/displayvideo/v2/displayvideo-api.json @@ -6464,6 +6464,101 @@ "https://www.googleapis.com/auth/display-video" ] } + }, + "resources": { + "floodlightActivities": { + "methods": { + "get": { + "description": "Gets a Floodlight activity.", + "flatPath": "v2/floodlightGroups/{floodlightGroupsId}/floodlightActivities/{floodlightActivitiesId}", + "httpMethod": "GET", + "id": "displayvideo.floodlightGroups.floodlightActivities.get", + "parameterOrder": [ + "floodlightGroupId", + "floodlightActivityId" + ], + "parameters": { + "floodlightActivityId": { + "description": "Required. The ID of the Floodlight activity to fetch.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "floodlightGroupId": { + "description": "Required. The ID of the parent Floodlight group to which the requested Floodlight activity belongs.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "partnerId": { + "description": "Required. The ID of the partner through which the Floodlight activity is being accessed.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "v2/floodlightGroups/{+floodlightGroupId}/floodlightActivities/{+floodlightActivityId}", + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, + "list": { + "description": "Lists Floodlight activities in a Floodlight group.", + "flatPath": "v2/floodlightGroups/{floodlightGroupsId}/floodlightActivities", + "httpMethod": "GET", + "id": "displayvideo.floodlightGroups.floodlightActivities.list", + "parameterOrder": [ + "floodlightGroupId" + ], + "parameters": { + "floodlightGroupId": { + "description": "Required. The ID of the parent Floodlight group to which the requested Floodlight activities belong.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `floodlightActivityId` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `displayName desc`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListFloodlightActivities` method. If not specified, the first page of results will be returned.", + "location": "query", + "type": "string" + }, + "partnerId": { + "description": "Required. The ID of the partner through which the Floodlight activities are being accessed.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "v2/floodlightGroups/{+floodlightGroupId}/floodlightActivities", + "response": { + "$ref": "ListFloodlightActivitiesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + } + } + } } }, "googleAudiences": { @@ -9172,7 +9267,7 @@ } } }, - "revision": "20240118", + "revision": "20240125", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActivateManualTriggerRequest": { @@ -11491,6 +11586,15 @@ "format": "int64", "type": "string" }, + "cmAdvertiserIds": { + "description": "Output only. The set of CM360 Advertiser IDs sharing the CM360 Floodlight configuration.", + "items": { + "format": "int64", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "cmFloodlightConfigId": { "description": "Required. Immutable. ID of the CM360 Floodlight configuration linked with the DV360 advertiser.", "format": "int64", @@ -14902,6 +15006,69 @@ }, "type": "object" }, + "FloodlightActivity": { + "description": "A single Floodlight activity.", + "id": "FloodlightActivity", + "properties": { + "advertiserIds": { + "description": "Output only. IDs of the advertisers that have access to the parent Floodlight group. Only advertisers under the provided partner ID will be listed in this field.", + "items": { + "format": "int64", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "displayName": { + "description": "Required. The display name of the Floodlight activity.", + "type": "string" + }, + "floodlightActivityId": { + "description": "Output only. The unique ID of the Floodlight activity. Assigned by the system.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "floodlightGroupId": { + "description": "Required. Immutable. The ID of the parent Floodlight group.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Output only. The resource name of the Floodlight activity.", + "readOnly": true, + "type": "string" + }, + "remarketingConfigs": { + "description": "Output only. A list of configuration objects designating whether remarketing for this Floodlight Activity is enabled and available for a specifc advertiser. If enabled, this Floodlight Activity generates a remarketing user list that is able to be used in targeting under the advertiser.", + "items": { + "$ref": "RemarketingConfig" + }, + "readOnly": true, + "type": "array" + }, + "servingStatus": { + "description": "Optional. Whether the Floodlight activity is served.", + "enum": [ + "FLOODLIGHT_ACTIVITY_SERVING_STATUS_UNSPECIFIED", + "FLOODLIGHT_ACTIVITY_SERVING_STATUS_ENABLED", + "FLOODLIGHT_ACTIVITY_SERVING_STATUS_DISABLED" + ], + "enumDescriptions": [ + "Type value is not specified or is unknown in this version.", + "Enabled.", + "Disabled." + ], + "type": "string" + }, + "sslRequired": { + "description": "Output only. Whether tags are required to be compliant.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, "FloodlightGroup": { "description": "A single Floodlight group.", "id": "FloodlightGroup", @@ -17470,6 +17637,23 @@ }, "type": "object" }, + "ListFloodlightActivitiesResponse": { + "id": "ListFloodlightActivitiesResponse", + "properties": { + "floodlightActivities": { + "description": "The list of Floodlight activities. This list will be absent if empty.", + "items": { + "$ref": "FloodlightActivity" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve the next page of results. Pass this value in the page_token field in the subsequent call to `ListFloodlightActivities` method to retrieve the next page of results.", + "type": "string" + } + }, + "type": "object" + }, "ListGoogleAudiencesResponse": { "id": "ListGoogleAudiencesResponse", "properties": { @@ -19331,6 +19515,24 @@ }, "type": "object" }, + "RemarketingConfig": { + "description": "Settings that control the whether remarketing is enabled for the given identified advertiser.", + "id": "RemarketingConfig", + "properties": { + "advertiserId": { + "description": "Output only. The ID of the advertiser.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "remarketingEnabled": { + "description": "Output only. Whether the Floodlight activity remarketing user list is available to the identified advertiser.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, "ReplaceNegativeKeywordsRequest": { "description": "Request message for NegativeKeywordService.ReplaceNegativeKeywords.", "id": "ReplaceNegativeKeywordsRequest", diff --git a/displayvideo/v2/displayvideo-gen.go b/displayvideo/v2/displayvideo-gen.go index 9eef99916d4..75b0852e1c5 100644 --- a/displayvideo/v2/displayvideo-gen.go +++ b/displayvideo/v2/displayvideo-gen.go @@ -575,11 +575,23 @@ type FirstAndThirdPartyAudiencesService struct { func NewFloodlightGroupsService(s *Service) *FloodlightGroupsService { rs := &FloodlightGroupsService{s: s} + rs.FloodlightActivities = NewFloodlightGroupsFloodlightActivitiesService(s) return rs } type FloodlightGroupsService struct { s *Service + + FloodlightActivities *FloodlightGroupsFloodlightActivitiesService +} + +func NewFloodlightGroupsFloodlightActivitiesService(s *Service) *FloodlightGroupsFloodlightActivitiesService { + rs := &FloodlightGroupsFloodlightActivitiesService{s: s} + return rs +} + +type FloodlightGroupsFloodlightActivitiesService struct { + s *Service } func NewGoogleAudiencesService(s *Service) *GoogleAudiencesService { @@ -4610,6 +4622,10 @@ type CmHybridConfig struct { // configuration linked with the DV360 advertiser. CmAccountId int64 `json:"cmAccountId,omitempty,string"` + // CmAdvertiserIds: Output only. The set of CM360 Advertiser IDs sharing + // the CM360 Floodlight configuration. + CmAdvertiserIds googleapi.Int64s `json:"cmAdvertiserIds,omitempty"` + // CmFloodlightConfigId: Required. Immutable. ID of the CM360 Floodlight // configuration linked with the DV360 advertiser. CmFloodlightConfigId int64 `json:"cmFloodlightConfigId,omitempty,string"` @@ -9022,6 +9038,73 @@ func (s *FixedBidStrategy) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// FloodlightActivity: A single Floodlight activity. +type FloodlightActivity struct { + // AdvertiserIds: Output only. IDs of the advertisers that have access + // to the parent Floodlight group. Only advertisers under the provided + // partner ID will be listed in this field. + AdvertiserIds googleapi.Int64s `json:"advertiserIds,omitempty"` + + // DisplayName: Required. The display name of the Floodlight activity. + DisplayName string `json:"displayName,omitempty"` + + // FloodlightActivityId: Output only. The unique ID of the Floodlight + // activity. Assigned by the system. + FloodlightActivityId int64 `json:"floodlightActivityId,omitempty,string"` + + // FloodlightGroupId: Required. Immutable. The ID of the parent + // Floodlight group. + FloodlightGroupId int64 `json:"floodlightGroupId,omitempty,string"` + + // Name: Output only. The resource name of the Floodlight activity. + Name string `json:"name,omitempty"` + + // RemarketingConfigs: Output only. A list of configuration objects + // designating whether remarketing for this Floodlight Activity is + // enabled and available for a specifc advertiser. If enabled, this + // Floodlight Activity generates a remarketing user list that is able to + // be used in targeting under the advertiser. + RemarketingConfigs []*RemarketingConfig `json:"remarketingConfigs,omitempty"` + + // ServingStatus: Optional. Whether the Floodlight activity is served. + // + // Possible values: + // "FLOODLIGHT_ACTIVITY_SERVING_STATUS_UNSPECIFIED" - Type value is + // not specified or is unknown in this version. + // "FLOODLIGHT_ACTIVITY_SERVING_STATUS_ENABLED" - Enabled. + // "FLOODLIGHT_ACTIVITY_SERVING_STATUS_DISABLED" - Disabled. + ServingStatus string `json:"servingStatus,omitempty"` + + // SslRequired: Output only. Whether tags are required to be compliant. + SslRequired bool `json:"sslRequired,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AdvertiserIds") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AdvertiserIds") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FloodlightActivity) MarshalJSON() ([]byte, error) { + type NoMethod FloodlightActivity + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // FloodlightGroup: A single Floodlight group. type FloodlightGroup struct { // ActiveViewConfig: The Active View video viewability metric @@ -12429,6 +12512,46 @@ func (s *ListFirstAndThirdPartyAudiencesResponse) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type ListFloodlightActivitiesResponse struct { + // FloodlightActivities: The list of Floodlight activities. This list + // will be absent if empty. + FloodlightActivities []*FloodlightActivity `json:"floodlightActivities,omitempty"` + + // NextPageToken: A token to retrieve the next page of results. Pass + // this value in the page_token field in the subsequent call to + // `ListFloodlightActivities` method to retrieve the next page of + // results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. + // "FloodlightActivities") to unconditionally include in API requests. + // By default, fields with empty or default values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FloodlightActivities") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ListFloodlightActivitiesResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListFloodlightActivitiesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type ListGoogleAudiencesResponse struct { // GoogleAudiences: The list of Google audiences. This list will be // absent if empty. @@ -15676,6 +15799,39 @@ func (s *RegionalLocationListAssignedTargetingOptionDetails) MarshalJSON() ([]by return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// RemarketingConfig: Settings that control the whether remarketing is +// enabled for the given identified advertiser. +type RemarketingConfig struct { + // AdvertiserId: Output only. The ID of the advertiser. + AdvertiserId int64 `json:"advertiserId,omitempty,string"` + + // RemarketingEnabled: Output only. Whether the Floodlight activity + // remarketing user list is available to the identified advertiser. + RemarketingEnabled bool `json:"remarketingEnabled,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AdvertiserId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AdvertiserId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RemarketingConfig) MarshalJSON() ([]byte, error) { + type NoMethod RemarketingConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ReplaceNegativeKeywordsRequest: Request message for // NegativeKeywordService.ReplaceNegativeKeywords. type ReplaceNegativeKeywordsRequest struct { @@ -41108,6 +41264,409 @@ func (c *FloodlightGroupsPatchCall) Do(opts ...googleapi.CallOption) (*Floodligh } +// method id "displayvideo.floodlightGroups.floodlightActivities.get": + +type FloodlightGroupsFloodlightActivitiesGetCall struct { + s *Service + floodlightGroupId int64 + floodlightActivityId int64 + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a Floodlight activity. +// +// - floodlightActivityId: The ID of the Floodlight activity to fetch. +// - floodlightGroupId: The ID of the parent Floodlight group to which +// the requested Floodlight activity belongs. +func (r *FloodlightGroupsFloodlightActivitiesService) Get(floodlightGroupId int64, floodlightActivityId int64) *FloodlightGroupsFloodlightActivitiesGetCall { + c := &FloodlightGroupsFloodlightActivitiesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.floodlightGroupId = floodlightGroupId + c.floodlightActivityId = floodlightActivityId + return c +} + +// PartnerId sets the optional parameter "partnerId": Required. The ID +// of the partner through which the Floodlight activity is being +// accessed. +func (c *FloodlightGroupsFloodlightActivitiesGetCall) PartnerId(partnerId int64) *FloodlightGroupsFloodlightActivitiesGetCall { + c.urlParams_.Set("partnerId", fmt.Sprint(partnerId)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FloodlightGroupsFloodlightActivitiesGetCall) Fields(s ...googleapi.Field) *FloodlightGroupsFloodlightActivitiesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *FloodlightGroupsFloodlightActivitiesGetCall) IfNoneMatch(entityTag string) *FloodlightGroupsFloodlightActivitiesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FloodlightGroupsFloodlightActivitiesGetCall) Context(ctx context.Context) *FloodlightGroupsFloodlightActivitiesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FloodlightGroupsFloodlightActivitiesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FloodlightGroupsFloodlightActivitiesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/floodlightGroups/{+floodlightGroupId}/floodlightActivities/{+floodlightActivityId}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "floodlightGroupId": strconv.FormatInt(c.floodlightGroupId, 10), + "floodlightActivityId": strconv.FormatInt(c.floodlightActivityId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "displayvideo.floodlightGroups.floodlightActivities.get" call. +// Exactly one of *FloodlightActivity or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *FloodlightActivity.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *FloodlightGroupsFloodlightActivitiesGetCall) Do(opts ...googleapi.CallOption) (*FloodlightActivity, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &FloodlightActivity{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets a Floodlight activity.", + // "flatPath": "v2/floodlightGroups/{floodlightGroupsId}/floodlightActivities/{floodlightActivitiesId}", + // "httpMethod": "GET", + // "id": "displayvideo.floodlightGroups.floodlightActivities.get", + // "parameterOrder": [ + // "floodlightGroupId", + // "floodlightActivityId" + // ], + // "parameters": { + // "floodlightActivityId": { + // "description": "Required. The ID of the Floodlight activity to fetch.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "floodlightGroupId": { + // "description": "Required. The ID of the parent Floodlight group to which the requested Floodlight activity belongs.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "partnerId": { + // "description": "Required. The ID of the partner through which the Floodlight activity is being accessed.", + // "format": "int64", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/floodlightGroups/{+floodlightGroupId}/floodlightActivities/{+floodlightActivityId}", + // "response": { + // "$ref": "FloodlightActivity" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/display-video" + // ] + // } + +} + +// method id "displayvideo.floodlightGroups.floodlightActivities.list": + +type FloodlightGroupsFloodlightActivitiesListCall struct { + s *Service + floodlightGroupId int64 + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists Floodlight activities in a Floodlight group. +// +// - floodlightGroupId: The ID of the parent Floodlight group to which +// the requested Floodlight activities belong. +func (r *FloodlightGroupsFloodlightActivitiesService) List(floodlightGroupId int64) *FloodlightGroupsFloodlightActivitiesListCall { + c := &FloodlightGroupsFloodlightActivitiesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.floodlightGroupId = floodlightGroupId + return c +} + +// OrderBy sets the optional parameter "orderBy": Field by which to sort +// the list. Acceptable values are: * `displayName` (default) * +// `floodlightActivityId` The default sorting order is ascending. To +// specify descending order for a field, a suffix "desc" should be added +// to the field name. Example: `displayName desc`. +func (c *FloodlightGroupsFloodlightActivitiesListCall) OrderBy(orderBy string) *FloodlightGroupsFloodlightActivitiesListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageSize sets the optional parameter "pageSize": Requested page size. +// Must be between `1` and `100`. If unspecified will default to `100`. +// Returns error code `INVALID_ARGUMENT` if an invalid value is +// specified. +func (c *FloodlightGroupsFloodlightActivitiesListCall) PageSize(pageSize int64) *FloodlightGroupsFloodlightActivitiesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A token +// identifying a page of results the server should return. Typically, +// this is the value of next_page_token returned from the previous call +// to `ListFloodlightActivities` method. If not specified, the first +// page of results will be returned. +func (c *FloodlightGroupsFloodlightActivitiesListCall) PageToken(pageToken string) *FloodlightGroupsFloodlightActivitiesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// PartnerId sets the optional parameter "partnerId": Required. The ID +// of the partner through which the Floodlight activities are being +// accessed. +func (c *FloodlightGroupsFloodlightActivitiesListCall) PartnerId(partnerId int64) *FloodlightGroupsFloodlightActivitiesListCall { + c.urlParams_.Set("partnerId", fmt.Sprint(partnerId)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FloodlightGroupsFloodlightActivitiesListCall) Fields(s ...googleapi.Field) *FloodlightGroupsFloodlightActivitiesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *FloodlightGroupsFloodlightActivitiesListCall) IfNoneMatch(entityTag string) *FloodlightGroupsFloodlightActivitiesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FloodlightGroupsFloodlightActivitiesListCall) Context(ctx context.Context) *FloodlightGroupsFloodlightActivitiesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FloodlightGroupsFloodlightActivitiesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FloodlightGroupsFloodlightActivitiesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/floodlightGroups/{+floodlightGroupId}/floodlightActivities") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "floodlightGroupId": strconv.FormatInt(c.floodlightGroupId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "displayvideo.floodlightGroups.floodlightActivities.list" call. +// Exactly one of *ListFloodlightActivitiesResponse or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *ListFloodlightActivitiesResponse.ServerResponse.Header or (if +// a response was returned at all) in error.(*googleapi.Error).Header. +// Use googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *FloodlightGroupsFloodlightActivitiesListCall) Do(opts ...googleapi.CallOption) (*ListFloodlightActivitiesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &ListFloodlightActivitiesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists Floodlight activities in a Floodlight group.", + // "flatPath": "v2/floodlightGroups/{floodlightGroupsId}/floodlightActivities", + // "httpMethod": "GET", + // "id": "displayvideo.floodlightGroups.floodlightActivities.list", + // "parameterOrder": [ + // "floodlightGroupId" + // ], + // "parameters": { + // "floodlightGroupId": { + // "description": "Required. The ID of the parent Floodlight group to which the requested Floodlight activities belong.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "orderBy": { + // "description": "Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `floodlightActivityId` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `displayName desc`.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Optional. Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListFloodlightActivities` method. If not specified, the first page of results will be returned.", + // "location": "query", + // "type": "string" + // }, + // "partnerId": { + // "description": "Required. The ID of the partner through which the Floodlight activities are being accessed.", + // "format": "int64", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/floodlightGroups/{+floodlightGroupId}/floodlightActivities", + // "response": { + // "$ref": "ListFloodlightActivitiesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/display-video" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *FloodlightGroupsFloodlightActivitiesListCall) Pages(ctx context.Context, f func(*ListFloodlightActivitiesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + // method id "displayvideo.googleAudiences.get": type GoogleAudiencesGetCall struct { diff --git a/displayvideo/v3/displayvideo-api.json b/displayvideo/v3/displayvideo-api.json index 1f2401b23a7..cfe32303f2c 100644 --- a/displayvideo/v3/displayvideo-api.json +++ b/displayvideo/v3/displayvideo-api.json @@ -6413,6 +6413,101 @@ "https://www.googleapis.com/auth/display-video" ] } + }, + "resources": { + "floodlightActivities": { + "methods": { + "get": { + "description": "Gets a Floodlight activity.", + "flatPath": "v3/floodlightGroups/{floodlightGroupsId}/floodlightActivities/{floodlightActivitiesId}", + "httpMethod": "GET", + "id": "displayvideo.floodlightGroups.floodlightActivities.get", + "parameterOrder": [ + "floodlightGroupId", + "floodlightActivityId" + ], + "parameters": { + "floodlightActivityId": { + "description": "Required. The ID of the Floodlight activity to fetch.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "floodlightGroupId": { + "description": "Required. The ID of the parent Floodlight group to which the requested Floodlight activity belongs.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "partnerId": { + "description": "Required. The ID of the partner through which the Floodlight activity is being accessed.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "v3/floodlightGroups/{+floodlightGroupId}/floodlightActivities/{+floodlightActivityId}", + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, + "list": { + "description": "Lists Floodlight activities in a Floodlight group.", + "flatPath": "v3/floodlightGroups/{floodlightGroupsId}/floodlightActivities", + "httpMethod": "GET", + "id": "displayvideo.floodlightGroups.floodlightActivities.list", + "parameterOrder": [ + "floodlightGroupId" + ], + "parameters": { + "floodlightGroupId": { + "description": "Required. The ID of the parent Floodlight group to which the requested Floodlight activities belong.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `floodlightActivityId` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `displayName desc`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListFloodlightActivities` method. If not specified, the first page of results will be returned.", + "location": "query", + "type": "string" + }, + "partnerId": { + "description": "Required. The ID of the partner through which the Floodlight activities are being accessed.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "v3/floodlightGroups/{+floodlightGroupId}/floodlightActivities", + "response": { + "$ref": "ListFloodlightActivitiesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + } + } + } } }, "googleAudiences": { @@ -9127,7 +9222,7 @@ } } }, - "revision": "20240118", + "revision": "20240125", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActiveViewVideoViewabilityMetricConfig": { @@ -9723,78 +9818,491 @@ "AGE_RANGE_60_64" ], "enumDescriptions": [ - "Default value when age range is not specified in this version. This enum is a placeholder for default value and does not represent a real age range option.", - "The age range of the audience is 18 to 24.", - "The age range of the audience is 25 to 34.", - "The age range of the audience is 35 to 44.", - "The age range of the audience is 45 to 54.", - "The age range of the audience is 55 to 64.", - "The age range of the audience is 65 and up.", - "The age range of the audience is unknown.", - "The age range of the audience is 18 to 20, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 21 to 24, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 25 to 29, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 30 to 34, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 35 to 39, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 40 to 44, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 45 to 49, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 50 to 54, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 55 to 59, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 60 to 64, only supported for the AdGroup of YouTube Programmatic Reservation line item." + "Default value when age range is not specified in this version. This enum is a placeholder for default value and does not represent a real age range option.", + "The age range of the audience is 18 to 24.", + "The age range of the audience is 25 to 34.", + "The age range of the audience is 35 to 44.", + "The age range of the audience is 45 to 54.", + "The age range of the audience is 55 to 64.", + "The age range of the audience is 65 and up.", + "The age range of the audience is unknown.", + "The age range of the audience is 18 to 20, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 21 to 24, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 25 to 29, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 30 to 34, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 35 to 39, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 40 to 44, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 45 to 49, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 50 to 54, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 55 to 59, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 60 to 64, only supported for the AdGroup of YouTube Programmatic Reservation line item." + ], + "type": "string" + } + }, + "type": "object" + }, + "AgeRangeTargetingOptionDetails": { + "description": "Represents a targetable age range. This will be populated in the age_range_details field when targeting_type is `TARGETING_TYPE_AGE_RANGE`.", + "id": "AgeRangeTargetingOptionDetails", + "properties": { + "ageRange": { + "description": "Output only. The age range of an audience.", + "enum": [ + "AGE_RANGE_UNSPECIFIED", + "AGE_RANGE_18_24", + "AGE_RANGE_25_34", + "AGE_RANGE_35_44", + "AGE_RANGE_45_54", + "AGE_RANGE_55_64", + "AGE_RANGE_65_PLUS", + "AGE_RANGE_UNKNOWN", + "AGE_RANGE_18_20", + "AGE_RANGE_21_24", + "AGE_RANGE_25_29", + "AGE_RANGE_30_34", + "AGE_RANGE_35_39", + "AGE_RANGE_40_44", + "AGE_RANGE_45_49", + "AGE_RANGE_50_54", + "AGE_RANGE_55_59", + "AGE_RANGE_60_64" + ], + "enumDescriptions": [ + "Default value when age range is not specified in this version. This enum is a placeholder for default value and does not represent a real age range option.", + "The age range of the audience is 18 to 24.", + "The age range of the audience is 25 to 34.", + "The age range of the audience is 35 to 44.", + "The age range of the audience is 45 to 54.", + "The age range of the audience is 55 to 64.", + "The age range of the audience is 65 and up.", + "The age range of the audience is unknown.", + "The age range of the audience is 18 to 20, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 21 to 24, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 25 to 29, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 30 to 34, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 35 to 39, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 40 to 44, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 45 to 49, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 50 to 54, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 55 to 59, only supported for the AdGroup of YouTube Programmatic Reservation line item.", + "The age range of the audience is 60 to 64, only supported for the AdGroup of YouTube Programmatic Reservation line item." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "AlgorithmRules": { + "description": "Rule-based algorithm.", + "id": "AlgorithmRules", + "properties": { + "impressionSignalRuleset": { + "$ref": "AlgorithmRulesRuleset", + "description": "Rules for the impression signals." + } + }, + "type": "object" + }, + "AlgorithmRulesComparisonValue": { + "description": "A value to compare the signal to.", + "id": "AlgorithmRulesComparisonValue", + "properties": { + "boolValue": { + "description": "Boolean value.", + "type": "boolean" + }, + "creativeDimensionValue": { + "$ref": "Dimensions", + "description": "Creative dimension value." + }, + "dayAndTimeValue": { + "$ref": "DayAndTime", + "description": "Day and time value. Only `TIME_ZONE_RESOLUTION_END_USER` is supported." + }, + "deviceTypeValue": { + "description": "Device type value.", + "enum": [ + "RULE_DEVICE_TYPE_UNSPECIFIED", + "RULE_DEVICE_TYPE_COMPUTER", + "RULE_DEVICE_TYPE_CONNECTED_TV", + "RULE_DEVICE_TYPE_SMART_PHONE", + "RULE_DEVICE_TYPE_TABLET", + "RULE_DEVICE_TYPE_CONNECTED_DEVICE", + "RULE_DEVICE_TYPE_SET_TOP_BOX" + ], + "enumDescriptions": [ + "Default value when device type is not specified in this version. This enum is a placeholder for default value and does not represent a real device type option.", + "Computer.", + "Connected TV.", + "Smart phone.", + "Tablet.", + "Connected device.", + "Set top box." + ], + "type": "string" + }, + "doubleValue": { + "description": "Double value.", + "format": "double", + "type": "number" + }, + "environmentValue": { + "description": "Environment value.", + "enum": [ + "ENVIRONMENT_UNSPECIFIED", + "ENVIRONMENT_WEB_OPTIMIZED", + "ENVIRONMENT_WEB_NOT_OPTIMIZED", + "ENVIRONMENT_APP" + ], + "enumDescriptions": [ + "Default value when environment is not specified in this version. This enum is a placeholder for default value and does not represent a real environment option.", + "Target inventory displayed in browsers. This includes inventory that was designed for the device it was viewed on, such as mobile websites viewed on a mobile device. ENVIRONMENT_WEB_NOT_OPTIMIZED, if targeted, should be deleted prior to the deletion of this targeting option.", + "Target inventory displayed in browsers. This includes inventory that was not designed for the device but viewed on it, such as websites optimized for desktop but viewed on a mobile device. ENVIRONMENT_WEB_OPTIMIZED should be targeted prior to the addition of this targeting option.", + "Target inventory displayed in apps." + ], + "type": "string" + }, + "exchangeValue": { + "description": "Exchange value.", + "enum": [ + "EXCHANGE_UNSPECIFIED", + "EXCHANGE_GOOGLE_AD_MANAGER", + "EXCHANGE_APPNEXUS", + "EXCHANGE_BRIGHTROLL", + "EXCHANGE_ADFORM", + "EXCHANGE_ADMETA", + "EXCHANGE_ADMIXER", + "EXCHANGE_ADSMOGO", + "EXCHANGE_ADSWIZZ", + "EXCHANGE_BIDSWITCH", + "EXCHANGE_BRIGHTROLL_DISPLAY", + "EXCHANGE_CADREON", + "EXCHANGE_DAILYMOTION", + "EXCHANGE_FIVE", + "EXCHANGE_FLUCT", + "EXCHANGE_FREEWHEEL", + "EXCHANGE_GENIEE", + "EXCHANGE_GUMGUM", + "EXCHANGE_IMOBILE", + "EXCHANGE_IBILLBOARD", + "EXCHANGE_IMPROVE_DIGITAL", + "EXCHANGE_INDEX", + "EXCHANGE_KARGO", + "EXCHANGE_MICROAD", + "EXCHANGE_MOPUB", + "EXCHANGE_NEND", + "EXCHANGE_ONE_BY_AOL_DISPLAY", + "EXCHANGE_ONE_BY_AOL_MOBILE", + "EXCHANGE_ONE_BY_AOL_VIDEO", + "EXCHANGE_OOYALA", + "EXCHANGE_OPENX", + "EXCHANGE_PERMODO", + "EXCHANGE_PLATFORMONE", + "EXCHANGE_PLATFORMID", + "EXCHANGE_PUBMATIC", + "EXCHANGE_PULSEPOINT", + "EXCHANGE_REVENUEMAX", + "EXCHANGE_RUBICON", + "EXCHANGE_SMARTCLIP", + "EXCHANGE_SMARTRTB", + "EXCHANGE_SMARTSTREAMTV", + "EXCHANGE_SOVRN", + "EXCHANGE_SPOTXCHANGE", + "EXCHANGE_STROER", + "EXCHANGE_TEADSTV", + "EXCHANGE_TELARIA", + "EXCHANGE_TVN", + "EXCHANGE_UNITED", + "EXCHANGE_YIELDLAB", + "EXCHANGE_YIELDMO", + "EXCHANGE_UNRULYX", + "EXCHANGE_OPEN8", + "EXCHANGE_TRITON", + "EXCHANGE_TRIPLELIFT", + "EXCHANGE_TABOOLA", + "EXCHANGE_INMOBI", + "EXCHANGE_SMAATO", + "EXCHANGE_AJA", + "EXCHANGE_SUPERSHIP", + "EXCHANGE_NEXSTAR_DIGITAL", + "EXCHANGE_WAZE", + "EXCHANGE_SOUNDCAST", + "EXCHANGE_SHARETHROUGH", + "EXCHANGE_FYBER", + "EXCHANGE_RED_FOR_PUBLISHERS", + "EXCHANGE_MEDIANET", + "EXCHANGE_TAPJOY", + "EXCHANGE_VISTAR", + "EXCHANGE_DAX", + "EXCHANGE_JCD", + "EXCHANGE_PLACE_EXCHANGE", + "EXCHANGE_APPLOVIN", + "EXCHANGE_CONNATIX", + "EXCHANGE_RESET_DIGITAL", + "EXCHANGE_HIVESTACK" + ], + "enumDescriptions": [ + "Exchange is not specified or is unknown in this version.", + "Google Ad Manager.", + "AppNexus.", + "BrightRoll Exchange for Video from Yahoo!.", + "Adform.", + "Admeta.", + "Admixer.", + "AdsMogo.", + "AdsWizz.", + "BidSwitch.", + "BrightRoll Exchange for Display from Yahoo!.", + "Cadreon.", + "Dailymotion.", + "Five.", + "Fluct.", + "FreeWheel SSP.", + "Geniee.", + "GumGum.", + "i-mobile.", + "iBILLBOARD.", + "Improve Digital.", + "Index Exchange.", + "Kargo.", + "MicroAd.", + "MoPub.", + "Nend.", + "ONE by AOL: Display Market Place.", + "ONE by AOL: Mobile.", + "ONE by AOL: Video.", + "Ooyala.", + "OpenX.", + "Permodo.", + "Platform One.", + "PlatformId.", + "PubMatic.", + "PulsePoint.", + "RevenueMax.", + "Rubicon.", + "SmartClip.", + "SmartRTB+.", + "SmartstreamTv.", + "Sovrn.", + "SpotXchange.", + "Ströer SSP.", + "TeadsTv.", + "Telaria.", + "TVN.", + "United.", + "Yieldlab.", + "Yieldmo.", + "UnrulyX.", + "Open8.", + "Triton.", + "TripleLift.", + "Taboola.", + "InMobi.", + "Smaato.", + "Aja.", + "Supership.", + "Nexstar Digital.", + "Waze.", + "SoundCast.", + "Sharethrough.", + "Fyber.", + "Red For Publishers.", + "Media.net.", + "Tapjoy.", + "Vistar.", + "DAX.", + "JCD.", + "Place Exchange.", + "AppLovin.", + "Connatix.", + "Reset Digital.", + "Hivestack." + ], + "type": "string" + }, + "int64Value": { + "description": "Integer value.", + "format": "int64", + "type": "string" + }, + "onScreenPositionValue": { + "description": "Ad position value.", + "enum": [ + "ON_SCREEN_POSITION_UNSPECIFIED", + "ON_SCREEN_POSITION_UNKNOWN", + "ON_SCREEN_POSITION_ABOVE_THE_FOLD", + "ON_SCREEN_POSITION_BELOW_THE_FOLD" + ], + "enumDescriptions": [ + "On screen position is not specified in this version. This enum is a place holder for a default value and does not represent a real on screen position.", + "The ad position is unknown on the screen.", + "The ad is located above the fold.", + "The ad is located below the fold." + ], + "type": "string" + }, + "stringValue": { + "description": "String value.", + "type": "string" + } + }, + "type": "object" + }, + "AlgorithmRulesRule": { + "description": "Set of conditions. The return value of the rule is either: * The return value for single met condition or * The defined default return value if no conditions are met.", + "id": "AlgorithmRulesRule", + "properties": { + "conditions": { + "description": "List of conditions in this rule. The criteria among conditions should be mutually exclusive.", + "items": { + "$ref": "AlgorithmRulesRuleCondition" + }, + "type": "array" + }, + "defaultReturnValue": { + "$ref": "AlgorithmRulesSignalValue", + "description": "The default return value applied when none of the conditions are met." + } + }, + "type": "object" + }, + "AlgorithmRulesRuleCondition": { + "description": "Set of signal comparisons. Equivalent of an `if` statement.", + "id": "AlgorithmRulesRuleCondition", + "properties": { + "returnValue": { + "$ref": "AlgorithmRulesSignalValue", + "description": "The value returned if the `signalComparisons` condition evaluates to `TRUE`." + }, + "signalComparisons": { + "description": "List of comparisons that build `if` statement condition. The comparisons are combined into a single condition with `AND` logical operators.", + "items": { + "$ref": "AlgorithmRulesSignalComparison" + }, + "type": "array" + } + }, + "type": "object" + }, + "AlgorithmRulesRuleset": { + "description": "A ruleset consisting of a list of rules and how to aggregate the resulting values.", + "id": "AlgorithmRulesRuleset", + "properties": { + "aggregationType": { + "description": "How to aggregate values of evaluated rules.", + "enum": [ + "RULE_AGGREGATION_TYPE_UNSPECIFIED", + "SUM_OF_VALUES", + "PRODUCT_OF_VALUES", + "MAXIMUM_VALUE" + ], + "enumDescriptions": [ + "Unknown aggregation type.", + "The sum of rule values.", + "The product of rule values.", + "The maximum rule value." + ], + "type": "string" + }, + "maxValue": { + "description": "Maximum value the ruleset can evaluate to.", + "format": "double", + "type": "number" + }, + "rules": { + "description": "List of rules to generate the impression value.", + "items": { + "$ref": "AlgorithmRulesRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "AlgorithmRulesSignal": { + "description": "Signal used to evaluate rules.", + "id": "AlgorithmRulesSignal", + "properties": { + "impressionSignal": { + "description": "Signal based on impressions.", + "enum": [ + "IMPRESSION_SIGNAL_UNSPECIFIED", + "DAY_AND_TIME", + "DEVICE_TYPE", + "AD_POSITION", + "OPERATING_SYSTEM_ID", + "MOBILE_MODEL_ID", + "EXCHANGE", + "ENVIRONMENT", + "COUNTRY_ID", + "CITY_ID", + "BROWSER_ID", + "CREATIVE_DIMENSION" + ], + "enumDescriptions": [ + "Unknown signal.", + "The day of the week and hour of day the impression was made using browser's local time zone. Value is stored in the dayAndTimeValue field of the comparison value.", + "Device type. Value is stored in the deviceTypeValue field of the comparison value.", + "Ad position. Value is stored in the onScreenPositionValue field of the comparison value.", + "The operating system identifier. Value is stored in the int64Value field of the comparison value.", + "The mobile model identifier. Value is stored in the int64Value field of the comparison value.", + "Exchange. Value is stored in the exchangeValue field of the comparison value.", + "Serving environment. Value is stored in the environmentValue field of the comparison value.", + "The country or region identifier. Value is stored in the int64Value field of the comparison value.", + "The city identifier. Value is stored in the int64Value field of the comparison value.", + "The browser identifier. Value is stored in the int64Value field of the comparison value.", + "Creative height and width in pixels. Value is stored in the creativeDimensionValue field of the comparison value." ], "type": "string" } }, "type": "object" }, - "AgeRangeTargetingOptionDetails": { - "description": "Represents a targetable age range. This will be populated in the age_range_details field when targeting_type is `TARGETING_TYPE_AGE_RANGE`.", - "id": "AgeRangeTargetingOptionDetails", + "AlgorithmRulesSignalComparison": { + "description": "A single comparison. The comparison compares the `signal` to the `comparisonValue`. The comparison of `siteId==123` is represented with the following field values: * `signal` has an `impressionSignal` of `SITE_ID`. * `comparisonOperator` is set to `EQUAL`. * `comparisonValue` is set to 123.", + "id": "AlgorithmRulesSignalComparison", "properties": { - "ageRange": { - "description": "Output only. The age range of an audience.", + "comparisonOperator": { + "description": "Operator used to compare the two values. In the resulting experession, the `signal` will be the first value and the `comparisonValue will be the second.", "enum": [ - "AGE_RANGE_UNSPECIFIED", - "AGE_RANGE_18_24", - "AGE_RANGE_25_34", - "AGE_RANGE_35_44", - "AGE_RANGE_45_54", - "AGE_RANGE_55_64", - "AGE_RANGE_65_PLUS", - "AGE_RANGE_UNKNOWN", - "AGE_RANGE_18_20", - "AGE_RANGE_21_24", - "AGE_RANGE_25_29", - "AGE_RANGE_30_34", - "AGE_RANGE_35_39", - "AGE_RANGE_40_44", - "AGE_RANGE_45_49", - "AGE_RANGE_50_54", - "AGE_RANGE_55_59", - "AGE_RANGE_60_64" + "COMPARISON_OPERATOR_UNSPECIFIED", + "EQUAL", + "GREATER_THAN", + "LESS_THAN", + "GREATER_THAN_OR_EQUAL_TO", + "LESS_THAN_OR_EQUAL_TO" ], "enumDescriptions": [ - "Default value when age range is not specified in this version. This enum is a placeholder for default value and does not represent a real age range option.", - "The age range of the audience is 18 to 24.", - "The age range of the audience is 25 to 34.", - "The age range of the audience is 35 to 44.", - "The age range of the audience is 45 to 54.", - "The age range of the audience is 55 to 64.", - "The age range of the audience is 65 and up.", - "The age range of the audience is unknown.", - "The age range of the audience is 18 to 20, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 21 to 24, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 25 to 29, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 30 to 34, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 35 to 39, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 40 to 44, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 45 to 49, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 50 to 54, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 55 to 59, only supported for the AdGroup of YouTube Programmatic Reservation line item.", - "The age range of the audience is 60 to 64, only supported for the AdGroup of YouTube Programmatic Reservation line item." + "Unknown operator.", + "Values are equal.", + "First value is greater than the comparison value.", + "First value is less than the second.", + "First value is greater than or equal to the second.", + "First value is less or equals to the comparison value." ], - "readOnly": true, "type": "string" + }, + "comparisonValue": { + "$ref": "AlgorithmRulesComparisonValue", + "description": "Value to compare signal to." + }, + "signal": { + "$ref": "AlgorithmRulesSignal", + "description": "Signal to compare." + } + }, + "type": "object" + }, + "AlgorithmRulesSignalValue": { + "description": "Adjusted value of the signal used for rule evaluation.", + "id": "AlgorithmRulesSignalValue", + "properties": { + "number": { + "description": "Value to use as result.", + "format": "double", + "type": "number" } }, "type": "object" @@ -11637,6 +12145,15 @@ "format": "int64", "type": "string" }, + "cmAdvertiserIds": { + "description": "Output only. The set of CM360 Advertiser IDs sharing the CM360 Floodlight configuration.", + "items": { + "format": "int64", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "cmFloodlightConfigId": { "description": "Required. Immutable. ID of the CM360 Floodlight configuration linked with the DV360 advertiser.", "format": "int64", @@ -13237,6 +13754,56 @@ }, "type": "object" }, + "DayAndTime": { + "description": "Representation of time defined by day of the week and hour of the day.", + "id": "DayAndTime", + "properties": { + "dayOfWeek": { + "description": "Required. Day of the week.", + "enum": [ + "DAY_OF_WEEK_UNSPECIFIED", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "The day of the week is unspecified.", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ], + "type": "string" + }, + "hourOfDay": { + "description": "Required. Hour of the day.", + "format": "int32", + "type": "integer" + }, + "timeZoneResolution": { + "description": "Required. The mechanism used to determine the relevant timezone.", + "enum": [ + "TIME_ZONE_RESOLUTION_UNSPECIFIED", + "TIME_ZONE_RESOLUTION_END_USER", + "TIME_ZONE_RESOLUTION_ADVERTISER" + ], + "enumDescriptions": [ + "Time zone resolution is either unspecific or unknown.", + "Times are resolved in the time zone of the user that saw the ad.", + "Times are resolved in the time zone of the advertiser that served the ad." + ], + "type": "string" + } + }, + "type": "object" + }, "DayAndTimeAssignedTargetingOptionDetails": { "description": "Representation of a segment of time defined on a specific day of the week and with a start and end time. The time represented by `start_hour` must be before the time represented by `end_hour`.", "id": "DayAndTimeAssignedTargetingOptionDetails", @@ -15139,6 +15706,69 @@ }, "type": "object" }, + "FloodlightActivity": { + "description": "A single Floodlight activity.", + "id": "FloodlightActivity", + "properties": { + "advertiserIds": { + "description": "Output only. IDs of the advertisers that have access to the parent Floodlight group. Only advertisers under the provided partner ID will be listed in this field.", + "items": { + "format": "int64", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "displayName": { + "description": "Required. The display name of the Floodlight activity.", + "type": "string" + }, + "floodlightActivityId": { + "description": "Output only. The unique ID of the Floodlight activity. Assigned by the system.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "floodlightGroupId": { + "description": "Required. Immutable. The ID of the parent Floodlight group.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "Output only. The resource name of the Floodlight activity.", + "readOnly": true, + "type": "string" + }, + "remarketingConfigs": { + "description": "Output only. A list of configuration objects designating whether remarketing for this Floodlight Activity is enabled and available for a specifc advertiser. If enabled, this Floodlight Activity generates a remarketing user list that is able to be used in targeting under the advertiser.", + "items": { + "$ref": "RemarketingConfig" + }, + "readOnly": true, + "type": "array" + }, + "servingStatus": { + "description": "Optional. Whether the Floodlight activity is served.", + "enum": [ + "FLOODLIGHT_ACTIVITY_SERVING_STATUS_UNSPECIFIED", + "FLOODLIGHT_ACTIVITY_SERVING_STATUS_ENABLED", + "FLOODLIGHT_ACTIVITY_SERVING_STATUS_DISABLED" + ], + "enumDescriptions": [ + "Type value is not specified or is unknown in this version.", + "Enabled.", + "Disabled." + ], + "type": "string" + }, + "sslRequired": { + "description": "Output only. Whether tags are required to be compliant.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, "FloodlightGroup": { "description": "A single Floodlight group.", "id": "FloodlightGroup", @@ -17811,6 +18441,23 @@ }, "type": "object" }, + "ListFloodlightActivitiesResponse": { + "id": "ListFloodlightActivitiesResponse", + "properties": { + "floodlightActivities": { + "description": "The list of Floodlight activities. This list will be absent if empty.", + "items": { + "$ref": "FloodlightActivity" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve the next page of results. Pass this value in the page_token field in the subsequent call to `ListFloodlightActivities` method to retrieve the next page of results.", + "type": "string" + } + }, + "type": "object" + }, "ListGoogleAudiencesResponse": { "id": "ListGoogleAudiencesResponse", "properties": { @@ -19566,6 +20213,24 @@ }, "type": "object" }, + "RemarketingConfig": { + "description": "Settings that control the whether remarketing is enabled for the given identified advertiser.", + "id": "RemarketingConfig", + "properties": { + "advertiserId": { + "description": "Output only. The ID of the advertiser.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "remarketingEnabled": { + "description": "Output only. Whether the Floodlight activity remarketing user list is available to the identified advertiser.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, "ReplaceNegativeKeywordsRequest": { "description": "Request message for NegativeKeywordService.ReplaceNegativeKeywords.", "id": "ReplaceNegativeKeywordsRequest", @@ -19800,6 +20465,83 @@ }, "type": "object" }, + "SdfDownloadTask": { + "description": "Type for the response returned by [SdfDownloadTaskService.CreateSdfDownloadTask].", + "id": "SdfDownloadTask", + "properties": { + "resourceName": { + "description": "A resource name to be used in media.download to Download the prepared files. Resource names have the format `download/sdfdownloadtasks/media/{media_id}`. `media_id` will be made available by the long running operation service once the task status is done.", + "type": "string" + } + }, + "type": "object" + }, + "SdfDownloadTaskMetadata": { + "description": "Type for the metadata returned by [SdfDownloadTaskService.CreateSdfDownloadTask].", + "id": "SdfDownloadTaskMetadata", + "properties": { + "createTime": { + "description": "The time when the operation was created.", + "format": "google-datetime", + "type": "string" + }, + "endTime": { + "description": "The time when execution was completed.", + "format": "google-datetime", + "type": "string" + }, + "version": { + "description": "The SDF version used to execute this download task.", + "enum": [ + "SDF_VERSION_UNSPECIFIED", + "SDF_VERSION_3_1", + "SDF_VERSION_4", + "SDF_VERSION_4_1", + "SDF_VERSION_4_2", + "SDF_VERSION_5", + "SDF_VERSION_5_1", + "SDF_VERSION_5_2", + "SDF_VERSION_5_3", + "SDF_VERSION_5_4", + "SDF_VERSION_5_5", + "SDF_VERSION_6", + "SDF_VERSION_7" + ], + "enumDeprecated": [ + false, + true, + true, + true, + true, + true, + true, + true, + true, + false, + false, + false, + false + ], + "enumDescriptions": [ + "SDF version value is not specified or is unknown in this version.", + "SDF version 3.1", + "SDF version 4", + "SDF version 4.1", + "SDF version 4.2", + "SDF version 5.", + "SDF version 5.1", + "SDF version 5.2", + "SDF version 5.3", + "SDF version 5.4", + "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. Currently in beta. Only available for use by a subset of users." + ], + "type": "string" + } + }, + "type": "object" + }, "SearchTargetingOptionsRequest": { "description": "Request message for SearchTargetingOptions.", "id": "SearchTargetingOptionsRequest", diff --git a/displayvideo/v3/displayvideo-gen.go b/displayvideo/v3/displayvideo-gen.go index 9a1f6901f79..789472020aa 100644 --- a/displayvideo/v3/displayvideo-gen.go +++ b/displayvideo/v3/displayvideo-gen.go @@ -575,11 +575,23 @@ type FirstAndThirdPartyAudiencesService struct { func NewFloodlightGroupsService(s *Service) *FloodlightGroupsService { rs := &FloodlightGroupsService{s: s} + rs.FloodlightActivities = NewFloodlightGroupsFloodlightActivitiesService(s) return rs } type FloodlightGroupsService struct { s *Service + + FloodlightActivities *FloodlightGroupsFloodlightActivitiesService +} + +func NewFloodlightGroupsFloodlightActivitiesService(s *Service) *FloodlightGroupsFloodlightActivitiesService { + rs := &FloodlightGroupsFloodlightActivitiesService{s: s} + return rs +} + +type FloodlightGroupsFloodlightActivitiesService struct { + s *Service } func NewGoogleAudiencesService(s *Service) *GoogleAudiencesService { @@ -1704,6 +1716,500 @@ func (s *AgeRangeTargetingOptionDetails) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// AlgorithmRules: Rule-based algorithm. +type AlgorithmRules struct { + // ImpressionSignalRuleset: Rules for the impression signals. + ImpressionSignalRuleset *AlgorithmRulesRuleset `json:"impressionSignalRuleset,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "ImpressionSignalRuleset") to unconditionally include in API + // requests. By default, fields with empty or default values are omitted + // from API requests. However, any non-pointer, non-interface field + // appearing in ForceSendFields will be sent to the server regardless of + // whether the field is empty or not. This may be used to include empty + // fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ImpressionSignalRuleset") + // to include in API requests with the JSON null value. By default, + // fields with empty values are omitted from API requests. However, any + // field with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AlgorithmRules) MarshalJSON() ([]byte, error) { + type NoMethod AlgorithmRules + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AlgorithmRulesComparisonValue: A value to compare the signal to. +type AlgorithmRulesComparisonValue struct { + // BoolValue: Boolean value. + BoolValue bool `json:"boolValue,omitempty"` + + // CreativeDimensionValue: Creative dimension value. + CreativeDimensionValue *Dimensions `json:"creativeDimensionValue,omitempty"` + + // DayAndTimeValue: Day and time value. Only + // `TIME_ZONE_RESOLUTION_END_USER` is supported. + DayAndTimeValue *DayAndTime `json:"dayAndTimeValue,omitempty"` + + // DeviceTypeValue: Device type value. + // + // Possible values: + // "RULE_DEVICE_TYPE_UNSPECIFIED" - Default value when device type is + // not specified in this version. This enum is a placeholder for default + // value and does not represent a real device type option. + // "RULE_DEVICE_TYPE_COMPUTER" - Computer. + // "RULE_DEVICE_TYPE_CONNECTED_TV" - Connected TV. + // "RULE_DEVICE_TYPE_SMART_PHONE" - Smart phone. + // "RULE_DEVICE_TYPE_TABLET" - Tablet. + // "RULE_DEVICE_TYPE_CONNECTED_DEVICE" - Connected device. + // "RULE_DEVICE_TYPE_SET_TOP_BOX" - Set top box. + DeviceTypeValue string `json:"deviceTypeValue,omitempty"` + + // DoubleValue: Double value. + DoubleValue float64 `json:"doubleValue,omitempty"` + + // EnvironmentValue: Environment value. + // + // Possible values: + // "ENVIRONMENT_UNSPECIFIED" - Default value when environment is not + // specified in this version. This enum is a placeholder for default + // value and does not represent a real environment option. + // "ENVIRONMENT_WEB_OPTIMIZED" - Target inventory displayed in + // browsers. This includes inventory that was designed for the device it + // was viewed on, such as mobile websites viewed on a mobile device. + // ENVIRONMENT_WEB_NOT_OPTIMIZED, if targeted, should be deleted prior + // to the deletion of this targeting option. + // "ENVIRONMENT_WEB_NOT_OPTIMIZED" - Target inventory displayed in + // browsers. This includes inventory that was not designed for the + // device but viewed on it, such as websites optimized for desktop but + // viewed on a mobile device. ENVIRONMENT_WEB_OPTIMIZED should be + // targeted prior to the addition of this targeting option. + // "ENVIRONMENT_APP" - Target inventory displayed in apps. + EnvironmentValue string `json:"environmentValue,omitempty"` + + // ExchangeValue: Exchange value. + // + // Possible values: + // "EXCHANGE_UNSPECIFIED" - Exchange is not specified or is unknown in + // this version. + // "EXCHANGE_GOOGLE_AD_MANAGER" - Google Ad Manager. + // "EXCHANGE_APPNEXUS" - AppNexus. + // "EXCHANGE_BRIGHTROLL" - BrightRoll Exchange for Video from Yahoo!. + // "EXCHANGE_ADFORM" - Adform. + // "EXCHANGE_ADMETA" - Admeta. + // "EXCHANGE_ADMIXER" - Admixer. + // "EXCHANGE_ADSMOGO" - AdsMogo. + // "EXCHANGE_ADSWIZZ" - AdsWizz. + // "EXCHANGE_BIDSWITCH" - BidSwitch. + // "EXCHANGE_BRIGHTROLL_DISPLAY" - BrightRoll Exchange for Display + // from Yahoo!. + // "EXCHANGE_CADREON" - Cadreon. + // "EXCHANGE_DAILYMOTION" - Dailymotion. + // "EXCHANGE_FIVE" - Five. + // "EXCHANGE_FLUCT" - Fluct. + // "EXCHANGE_FREEWHEEL" - FreeWheel SSP. + // "EXCHANGE_GENIEE" - Geniee. + // "EXCHANGE_GUMGUM" - GumGum. + // "EXCHANGE_IMOBILE" - i-mobile. + // "EXCHANGE_IBILLBOARD" - iBILLBOARD. + // "EXCHANGE_IMPROVE_DIGITAL" - Improve Digital. + // "EXCHANGE_INDEX" - Index Exchange. + // "EXCHANGE_KARGO" - Kargo. + // "EXCHANGE_MICROAD" - MicroAd. + // "EXCHANGE_MOPUB" - MoPub. + // "EXCHANGE_NEND" - Nend. + // "EXCHANGE_ONE_BY_AOL_DISPLAY" - ONE by AOL: Display Market Place. + // "EXCHANGE_ONE_BY_AOL_MOBILE" - ONE by AOL: Mobile. + // "EXCHANGE_ONE_BY_AOL_VIDEO" - ONE by AOL: Video. + // "EXCHANGE_OOYALA" - Ooyala. + // "EXCHANGE_OPENX" - OpenX. + // "EXCHANGE_PERMODO" - Permodo. + // "EXCHANGE_PLATFORMONE" - Platform One. + // "EXCHANGE_PLATFORMID" - PlatformId. + // "EXCHANGE_PUBMATIC" - PubMatic. + // "EXCHANGE_PULSEPOINT" - PulsePoint. + // "EXCHANGE_REVENUEMAX" - RevenueMax. + // "EXCHANGE_RUBICON" - Rubicon. + // "EXCHANGE_SMARTCLIP" - SmartClip. + // "EXCHANGE_SMARTRTB" - SmartRTB+. + // "EXCHANGE_SMARTSTREAMTV" - SmartstreamTv. + // "EXCHANGE_SOVRN" - Sovrn. + // "EXCHANGE_SPOTXCHANGE" - SpotXchange. + // "EXCHANGE_STROER" - Ströer SSP. + // "EXCHANGE_TEADSTV" - TeadsTv. + // "EXCHANGE_TELARIA" - Telaria. + // "EXCHANGE_TVN" - TVN. + // "EXCHANGE_UNITED" - United. + // "EXCHANGE_YIELDLAB" - Yieldlab. + // "EXCHANGE_YIELDMO" - Yieldmo. + // "EXCHANGE_UNRULYX" - UnrulyX. + // "EXCHANGE_OPEN8" - Open8. + // "EXCHANGE_TRITON" - Triton. + // "EXCHANGE_TRIPLELIFT" - TripleLift. + // "EXCHANGE_TABOOLA" - Taboola. + // "EXCHANGE_INMOBI" - InMobi. + // "EXCHANGE_SMAATO" - Smaato. + // "EXCHANGE_AJA" - Aja. + // "EXCHANGE_SUPERSHIP" - Supership. + // "EXCHANGE_NEXSTAR_DIGITAL" - Nexstar Digital. + // "EXCHANGE_WAZE" - Waze. + // "EXCHANGE_SOUNDCAST" - SoundCast. + // "EXCHANGE_SHARETHROUGH" - Sharethrough. + // "EXCHANGE_FYBER" - Fyber. + // "EXCHANGE_RED_FOR_PUBLISHERS" - Red For Publishers. + // "EXCHANGE_MEDIANET" - Media.net. + // "EXCHANGE_TAPJOY" - Tapjoy. + // "EXCHANGE_VISTAR" - Vistar. + // "EXCHANGE_DAX" - DAX. + // "EXCHANGE_JCD" - JCD. + // "EXCHANGE_PLACE_EXCHANGE" - Place Exchange. + // "EXCHANGE_APPLOVIN" - AppLovin. + // "EXCHANGE_CONNATIX" - Connatix. + // "EXCHANGE_RESET_DIGITAL" - Reset Digital. + // "EXCHANGE_HIVESTACK" - Hivestack. + ExchangeValue string `json:"exchangeValue,omitempty"` + + // Int64Value: Integer value. + Int64Value int64 `json:"int64Value,omitempty,string"` + + // OnScreenPositionValue: Ad position value. + // + // Possible values: + // "ON_SCREEN_POSITION_UNSPECIFIED" - On screen position is not + // specified in this version. This enum is a place holder for a default + // value and does not represent a real on screen position. + // "ON_SCREEN_POSITION_UNKNOWN" - The ad position is unknown on the + // screen. + // "ON_SCREEN_POSITION_ABOVE_THE_FOLD" - The ad is located above the + // fold. + // "ON_SCREEN_POSITION_BELOW_THE_FOLD" - The ad is located below the + // fold. + OnScreenPositionValue string `json:"onScreenPositionValue,omitempty"` + + // StringValue: String value. + StringValue string `json:"stringValue,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BoolValue") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "BoolValue") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AlgorithmRulesComparisonValue) MarshalJSON() ([]byte, error) { + type NoMethod AlgorithmRulesComparisonValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *AlgorithmRulesComparisonValue) UnmarshalJSON(data []byte) error { + type NoMethod AlgorithmRulesComparisonValue + var s1 struct { + DoubleValue gensupport.JSONFloat64 `json:"doubleValue"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.DoubleValue = float64(s1.DoubleValue) + return nil +} + +// AlgorithmRulesRule: Set of conditions. The return value of the rule +// is either: * The return value for single met condition or * The +// defined default return value if no conditions are met. +type AlgorithmRulesRule struct { + // Conditions: List of conditions in this rule. The criteria among + // conditions should be mutually exclusive. + Conditions []*AlgorithmRulesRuleCondition `json:"conditions,omitempty"` + + // DefaultReturnValue: The default return value applied when none of the + // conditions are met. + DefaultReturnValue *AlgorithmRulesSignalValue `json:"defaultReturnValue,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Conditions") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Conditions") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AlgorithmRulesRule) MarshalJSON() ([]byte, error) { + type NoMethod AlgorithmRulesRule + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AlgorithmRulesRuleCondition: Set of signal comparisons. Equivalent of +// an `if` statement. +type AlgorithmRulesRuleCondition struct { + // ReturnValue: The value returned if the `signalComparisons` condition + // evaluates to `TRUE`. + ReturnValue *AlgorithmRulesSignalValue `json:"returnValue,omitempty"` + + // SignalComparisons: List of comparisons that build `if` statement + // condition. The comparisons are combined into a single condition with + // `AND` logical operators. + SignalComparisons []*AlgorithmRulesSignalComparison `json:"signalComparisons,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ReturnValue") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ReturnValue") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AlgorithmRulesRuleCondition) MarshalJSON() ([]byte, error) { + type NoMethod AlgorithmRulesRuleCondition + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AlgorithmRulesRuleset: A ruleset consisting of a list of rules and +// how to aggregate the resulting values. +type AlgorithmRulesRuleset struct { + // AggregationType: How to aggregate values of evaluated rules. + // + // Possible values: + // "RULE_AGGREGATION_TYPE_UNSPECIFIED" - Unknown aggregation type. + // "SUM_OF_VALUES" - The sum of rule values. + // "PRODUCT_OF_VALUES" - The product of rule values. + // "MAXIMUM_VALUE" - The maximum rule value. + AggregationType string `json:"aggregationType,omitempty"` + + // MaxValue: Maximum value the ruleset can evaluate to. + MaxValue float64 `json:"maxValue,omitempty"` + + // Rules: List of rules to generate the impression value. + Rules []*AlgorithmRulesRule `json:"rules,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AggregationType") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AggregationType") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AlgorithmRulesRuleset) MarshalJSON() ([]byte, error) { + type NoMethod AlgorithmRulesRuleset + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *AlgorithmRulesRuleset) UnmarshalJSON(data []byte) error { + type NoMethod AlgorithmRulesRuleset + var s1 struct { + MaxValue gensupport.JSONFloat64 `json:"maxValue"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.MaxValue = float64(s1.MaxValue) + return nil +} + +// AlgorithmRulesSignal: Signal used to evaluate rules. +type AlgorithmRulesSignal struct { + // ImpressionSignal: Signal based on impressions. + // + // Possible values: + // "IMPRESSION_SIGNAL_UNSPECIFIED" - Unknown signal. + // "DAY_AND_TIME" - The day of the week and hour of day the impression + // was made using browser's local time zone. Value is stored in the + // dayAndTimeValue field of the comparison value. + // "DEVICE_TYPE" - Device type. Value is stored in the deviceTypeValue + // field of the comparison value. + // "AD_POSITION" - Ad position. Value is stored in the + // onScreenPositionValue field of the comparison value. + // "OPERATING_SYSTEM_ID" - The operating system identifier. Value is + // stored in the int64Value field of the comparison value. + // "MOBILE_MODEL_ID" - The mobile model identifier. Value is stored in + // the int64Value field of the comparison value. + // "EXCHANGE" - Exchange. Value is stored in the exchangeValue field + // of the comparison value. + // "ENVIRONMENT" - Serving environment. Value is stored in the + // environmentValue field of the comparison value. + // "COUNTRY_ID" - The country or region identifier. Value is stored in + // the int64Value field of the comparison value. + // "CITY_ID" - The city identifier. Value is stored in the int64Value + // field of the comparison value. + // "BROWSER_ID" - The browser identifier. Value is stored in the + // int64Value field of the comparison value. + // "CREATIVE_DIMENSION" - Creative height and width in pixels. Value + // is stored in the creativeDimensionValue field of the comparison + // value. + ImpressionSignal string `json:"impressionSignal,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ImpressionSignal") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ImpressionSignal") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AlgorithmRulesSignal) MarshalJSON() ([]byte, error) { + type NoMethod AlgorithmRulesSignal + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AlgorithmRulesSignalComparison: A single comparison. The comparison +// compares the `signal` to the `comparisonValue`. The comparison of +// `siteId==123` is represented with the following field values: * +// `signal` has an `impressionSignal` of `SITE_ID`. * +// `comparisonOperator` is set to `EQUAL`. * `comparisonValue` is set to +// 123. +type AlgorithmRulesSignalComparison struct { + // ComparisonOperator: Operator used to compare the two values. In the + // resulting experession, the `signal` will be the first value and the + // `comparisonValue will be the second. + // + // Possible values: + // "COMPARISON_OPERATOR_UNSPECIFIED" - Unknown operator. + // "EQUAL" - Values are equal. + // "GREATER_THAN" - First value is greater than the comparison value. + // "LESS_THAN" - First value is less than the second. + // "GREATER_THAN_OR_EQUAL_TO" - First value is greater than or equal + // to the second. + // "LESS_THAN_OR_EQUAL_TO" - First value is less or equals to the + // comparison value. + ComparisonOperator string `json:"comparisonOperator,omitempty"` + + // ComparisonValue: Value to compare signal to. + ComparisonValue *AlgorithmRulesComparisonValue `json:"comparisonValue,omitempty"` + + // Signal: Signal to compare. + Signal *AlgorithmRulesSignal `json:"signal,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ComparisonOperator") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ComparisonOperator") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *AlgorithmRulesSignalComparison) MarshalJSON() ([]byte, error) { + type NoMethod AlgorithmRulesSignalComparison + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AlgorithmRulesSignalValue: Adjusted value of the signal used for rule +// evaluation. +type AlgorithmRulesSignalValue struct { + // Number: Value to use as result. + Number float64 `json:"number,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Number") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Number") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AlgorithmRulesSignalValue) MarshalJSON() ([]byte, error) { + type NoMethod AlgorithmRulesSignalValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *AlgorithmRulesSignalValue) UnmarshalJSON(data []byte) error { + type NoMethod AlgorithmRulesSignalValue + var s1 struct { + Number gensupport.JSONFloat64 `json:"number"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Number = float64(s1.Number) + return nil +} + // AppAssignedTargetingOptionDetails: Details for assigned app targeting // option. This will be populated in the details field of an // AssignedTargetingOption when targeting_type is `TARGETING_TYPE_APP`. @@ -4848,6 +5354,10 @@ type CmHybridConfig struct { // configuration linked with the DV360 advertiser. CmAccountId int64 `json:"cmAccountId,omitempty,string"` + // CmAdvertiserIds: Output only. The set of CM360 Advertiser IDs sharing + // the CM360 Floodlight configuration. + CmAdvertiserIds googleapi.Int64s `json:"cmAdvertiserIds,omitempty"` + // CmFloodlightConfigId: Required. Immutable. ID of the CM360 Floodlight // configuration linked with the DV360 advertiser. CmFloodlightConfigId int64 `json:"cmFloodlightConfigId,omitempty,string"` @@ -7224,6 +7734,60 @@ func (s *DateRange) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// DayAndTime: Representation of time defined by day of the week and +// hour of the day. +type DayAndTime struct { + // DayOfWeek: Required. Day of the week. + // + // Possible values: + // "DAY_OF_WEEK_UNSPECIFIED" - The day of the week is unspecified. + // "MONDAY" - Monday + // "TUESDAY" - Tuesday + // "WEDNESDAY" - Wednesday + // "THURSDAY" - Thursday + // "FRIDAY" - Friday + // "SATURDAY" - Saturday + // "SUNDAY" - Sunday + DayOfWeek string `json:"dayOfWeek,omitempty"` + + // HourOfDay: Required. Hour of the day. + HourOfDay int64 `json:"hourOfDay,omitempty"` + + // TimeZoneResolution: Required. The mechanism used to determine the + // relevant timezone. + // + // Possible values: + // "TIME_ZONE_RESOLUTION_UNSPECIFIED" - Time zone resolution is either + // unspecific or unknown. + // "TIME_ZONE_RESOLUTION_END_USER" - Times are resolved in the time + // zone of the user that saw the ad. + // "TIME_ZONE_RESOLUTION_ADVERTISER" - Times are resolved in the time + // zone of the advertiser that served the ad. + TimeZoneResolution string `json:"timeZoneResolution,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DayOfWeek") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DayOfWeek") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *DayAndTime) MarshalJSON() ([]byte, error) { + type NoMethod DayAndTime + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // DayAndTimeAssignedTargetingOptionDetails: Representation of a segment // of time defined on a specific day of the week and with a start and // end time. The time represented by `start_hour` must be before the @@ -9404,6 +9968,73 @@ func (s *FixedBidStrategy) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// FloodlightActivity: A single Floodlight activity. +type FloodlightActivity struct { + // AdvertiserIds: Output only. IDs of the advertisers that have access + // to the parent Floodlight group. Only advertisers under the provided + // partner ID will be listed in this field. + AdvertiserIds googleapi.Int64s `json:"advertiserIds,omitempty"` + + // DisplayName: Required. The display name of the Floodlight activity. + DisplayName string `json:"displayName,omitempty"` + + // FloodlightActivityId: Output only. The unique ID of the Floodlight + // activity. Assigned by the system. + FloodlightActivityId int64 `json:"floodlightActivityId,omitempty,string"` + + // FloodlightGroupId: Required. Immutable. The ID of the parent + // Floodlight group. + FloodlightGroupId int64 `json:"floodlightGroupId,omitempty,string"` + + // Name: Output only. The resource name of the Floodlight activity. + Name string `json:"name,omitempty"` + + // RemarketingConfigs: Output only. A list of configuration objects + // designating whether remarketing for this Floodlight Activity is + // enabled and available for a specifc advertiser. If enabled, this + // Floodlight Activity generates a remarketing user list that is able to + // be used in targeting under the advertiser. + RemarketingConfigs []*RemarketingConfig `json:"remarketingConfigs,omitempty"` + + // ServingStatus: Optional. Whether the Floodlight activity is served. + // + // Possible values: + // "FLOODLIGHT_ACTIVITY_SERVING_STATUS_UNSPECIFIED" - Type value is + // not specified or is unknown in this version. + // "FLOODLIGHT_ACTIVITY_SERVING_STATUS_ENABLED" - Enabled. + // "FLOODLIGHT_ACTIVITY_SERVING_STATUS_DISABLED" - Disabled. + ServingStatus string `json:"servingStatus,omitempty"` + + // SslRequired: Output only. Whether tags are required to be compliant. + SslRequired bool `json:"sslRequired,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AdvertiserIds") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AdvertiserIds") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FloodlightActivity) MarshalJSON() ([]byte, error) { + type NoMethod FloodlightActivity + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // FloodlightGroup: A single Floodlight group. type FloodlightGroup struct { // ActiveViewConfig: The Active View video viewability metric @@ -13025,6 +13656,46 @@ func (s *ListFirstAndThirdPartyAudiencesResponse) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type ListFloodlightActivitiesResponse struct { + // FloodlightActivities: The list of Floodlight activities. This list + // will be absent if empty. + FloodlightActivities []*FloodlightActivity `json:"floodlightActivities,omitempty"` + + // NextPageToken: A token to retrieve the next page of results. Pass + // this value in the page_token field in the subsequent call to + // `ListFloodlightActivities` method to retrieve the next page of + // results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. + // "FloodlightActivities") to unconditionally include in API requests. + // By default, fields with empty or default values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "FloodlightActivities") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ListFloodlightActivitiesResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListFloodlightActivitiesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type ListGoogleAudiencesResponse struct { // GoogleAudiences: The list of Google audiences. This list will be // absent if empty. @@ -16079,6 +16750,39 @@ func (s *RegionalLocationListAssignedTargetingOptionDetails) MarshalJSON() ([]by return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// RemarketingConfig: Settings that control the whether remarketing is +// enabled for the given identified advertiser. +type RemarketingConfig struct { + // AdvertiserId: Output only. The ID of the advertiser. + AdvertiserId int64 `json:"advertiserId,omitempty,string"` + + // RemarketingEnabled: Output only. Whether the Floodlight activity + // remarketing user list is available to the identified advertiser. + RemarketingEnabled bool `json:"remarketingEnabled,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AdvertiserId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "AdvertiserId") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *RemarketingConfig) MarshalJSON() ([]byte, error) { + type NoMethod RemarketingConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ReplaceNegativeKeywordsRequest: Request message for // NegativeKeywordService.ReplaceNegativeKeywords. type ReplaceNegativeKeywordsRequest struct { @@ -16382,6 +17086,93 @@ func (s *SdfConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// SdfDownloadTask: Type for the response returned by +// [SdfDownloadTaskService.CreateSdfDownloadTask]. +type SdfDownloadTask struct { + // ResourceName: A resource name to be used in media.download to + // Download the prepared files. Resource names have the format + // `download/sdfdownloadtasks/media/{media_id}`. `media_id` will be made + // available by the long running operation service once the task status + // is done. + ResourceName string `json:"resourceName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ResourceName") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ResourceName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SdfDownloadTask) MarshalJSON() ([]byte, error) { + type NoMethod SdfDownloadTask + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SdfDownloadTaskMetadata: Type for the metadata returned by +// [SdfDownloadTaskService.CreateSdfDownloadTask]. +type SdfDownloadTaskMetadata struct { + // CreateTime: The time when the operation was created. + CreateTime string `json:"createTime,omitempty"` + + // EndTime: The time when execution was completed. + EndTime string `json:"endTime,omitempty"` + + // Version: The SDF version used to execute this download task. + // + // Possible values: + // "SDF_VERSION_UNSPECIFIED" - SDF version value is not specified or + // is unknown in this version. + // "SDF_VERSION_3_1" - SDF version 3.1 + // "SDF_VERSION_4" - SDF version 4 + // "SDF_VERSION_4_1" - SDF version 4.1 + // "SDF_VERSION_4_2" - SDF version 4.2 + // "SDF_VERSION_5" - SDF version 5. + // "SDF_VERSION_5_1" - SDF version 5.1 + // "SDF_VERSION_5_2" - SDF version 5.2 + // "SDF_VERSION_5_3" - SDF version 5.3 + // "SDF_VERSION_5_4" - SDF version 5.4 + // "SDF_VERSION_5_5" - SDF version 5.5 + // "SDF_VERSION_6" - SDF version 6 + // "SDF_VERSION_7" - SDF version 7. Read the [v7 migration + // guide](/display-video/api/structured-data-file/v7-migration-guide) + // before migrating to this version. Currently in beta. Only available + // for use by a subset of users. + Version string `json:"version,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SdfDownloadTaskMetadata) MarshalJSON() ([]byte, error) { + type NoMethod SdfDownloadTaskMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SearchTargetingOptionsRequest: Request message for // SearchTargetingOptions. type SearchTargetingOptionsRequest struct { @@ -40878,6 +41669,409 @@ func (c *FloodlightGroupsPatchCall) Do(opts ...googleapi.CallOption) (*Floodligh } +// method id "displayvideo.floodlightGroups.floodlightActivities.get": + +type FloodlightGroupsFloodlightActivitiesGetCall struct { + s *Service + floodlightGroupId int64 + floodlightActivityId int64 + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a Floodlight activity. +// +// - floodlightActivityId: The ID of the Floodlight activity to fetch. +// - floodlightGroupId: The ID of the parent Floodlight group to which +// the requested Floodlight activity belongs. +func (r *FloodlightGroupsFloodlightActivitiesService) Get(floodlightGroupId int64, floodlightActivityId int64) *FloodlightGroupsFloodlightActivitiesGetCall { + c := &FloodlightGroupsFloodlightActivitiesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.floodlightGroupId = floodlightGroupId + c.floodlightActivityId = floodlightActivityId + return c +} + +// PartnerId sets the optional parameter "partnerId": Required. The ID +// of the partner through which the Floodlight activity is being +// accessed. +func (c *FloodlightGroupsFloodlightActivitiesGetCall) PartnerId(partnerId int64) *FloodlightGroupsFloodlightActivitiesGetCall { + c.urlParams_.Set("partnerId", fmt.Sprint(partnerId)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FloodlightGroupsFloodlightActivitiesGetCall) Fields(s ...googleapi.Field) *FloodlightGroupsFloodlightActivitiesGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *FloodlightGroupsFloodlightActivitiesGetCall) IfNoneMatch(entityTag string) *FloodlightGroupsFloodlightActivitiesGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FloodlightGroupsFloodlightActivitiesGetCall) Context(ctx context.Context) *FloodlightGroupsFloodlightActivitiesGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FloodlightGroupsFloodlightActivitiesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FloodlightGroupsFloodlightActivitiesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/floodlightGroups/{+floodlightGroupId}/floodlightActivities/{+floodlightActivityId}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "floodlightGroupId": strconv.FormatInt(c.floodlightGroupId, 10), + "floodlightActivityId": strconv.FormatInt(c.floodlightActivityId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "displayvideo.floodlightGroups.floodlightActivities.get" call. +// Exactly one of *FloodlightActivity or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *FloodlightActivity.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *FloodlightGroupsFloodlightActivitiesGetCall) Do(opts ...googleapi.CallOption) (*FloodlightActivity, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &FloodlightActivity{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets a Floodlight activity.", + // "flatPath": "v3/floodlightGroups/{floodlightGroupsId}/floodlightActivities/{floodlightActivitiesId}", + // "httpMethod": "GET", + // "id": "displayvideo.floodlightGroups.floodlightActivities.get", + // "parameterOrder": [ + // "floodlightGroupId", + // "floodlightActivityId" + // ], + // "parameters": { + // "floodlightActivityId": { + // "description": "Required. The ID of the Floodlight activity to fetch.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "floodlightGroupId": { + // "description": "Required. The ID of the parent Floodlight group to which the requested Floodlight activity belongs.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "partnerId": { + // "description": "Required. The ID of the partner through which the Floodlight activity is being accessed.", + // "format": "int64", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v3/floodlightGroups/{+floodlightGroupId}/floodlightActivities/{+floodlightActivityId}", + // "response": { + // "$ref": "FloodlightActivity" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/display-video" + // ] + // } + +} + +// method id "displayvideo.floodlightGroups.floodlightActivities.list": + +type FloodlightGroupsFloodlightActivitiesListCall struct { + s *Service + floodlightGroupId int64 + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists Floodlight activities in a Floodlight group. +// +// - floodlightGroupId: The ID of the parent Floodlight group to which +// the requested Floodlight activities belong. +func (r *FloodlightGroupsFloodlightActivitiesService) List(floodlightGroupId int64) *FloodlightGroupsFloodlightActivitiesListCall { + c := &FloodlightGroupsFloodlightActivitiesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.floodlightGroupId = floodlightGroupId + return c +} + +// OrderBy sets the optional parameter "orderBy": Field by which to sort +// the list. Acceptable values are: * `displayName` (default) * +// `floodlightActivityId` The default sorting order is ascending. To +// specify descending order for a field, a suffix "desc" should be added +// to the field name. Example: `displayName desc`. +func (c *FloodlightGroupsFloodlightActivitiesListCall) OrderBy(orderBy string) *FloodlightGroupsFloodlightActivitiesListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageSize sets the optional parameter "pageSize": Requested page size. +// Must be between `1` and `100`. If unspecified will default to `100`. +// Returns error code `INVALID_ARGUMENT` if an invalid value is +// specified. +func (c *FloodlightGroupsFloodlightActivitiesListCall) PageSize(pageSize int64) *FloodlightGroupsFloodlightActivitiesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A token +// identifying a page of results the server should return. Typically, +// this is the value of next_page_token returned from the previous call +// to `ListFloodlightActivities` method. If not specified, the first +// page of results will be returned. +func (c *FloodlightGroupsFloodlightActivitiesListCall) PageToken(pageToken string) *FloodlightGroupsFloodlightActivitiesListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// PartnerId sets the optional parameter "partnerId": Required. The ID +// of the partner through which the Floodlight activities are being +// accessed. +func (c *FloodlightGroupsFloodlightActivitiesListCall) PartnerId(partnerId int64) *FloodlightGroupsFloodlightActivitiesListCall { + c.urlParams_.Set("partnerId", fmt.Sprint(partnerId)) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *FloodlightGroupsFloodlightActivitiesListCall) Fields(s ...googleapi.Field) *FloodlightGroupsFloodlightActivitiesListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *FloodlightGroupsFloodlightActivitiesListCall) IfNoneMatch(entityTag string) *FloodlightGroupsFloodlightActivitiesListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *FloodlightGroupsFloodlightActivitiesListCall) Context(ctx context.Context) *FloodlightGroupsFloodlightActivitiesListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *FloodlightGroupsFloodlightActivitiesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FloodlightGroupsFloodlightActivitiesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v3/floodlightGroups/{+floodlightGroupId}/floodlightActivities") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "floodlightGroupId": strconv.FormatInt(c.floodlightGroupId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "displayvideo.floodlightGroups.floodlightActivities.list" call. +// Exactly one of *ListFloodlightActivitiesResponse or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *ListFloodlightActivitiesResponse.ServerResponse.Header or (if +// a response was returned at all) in error.(*googleapi.Error).Header. +// Use googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *FloodlightGroupsFloodlightActivitiesListCall) Do(opts ...googleapi.CallOption) (*ListFloodlightActivitiesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &ListFloodlightActivitiesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists Floodlight activities in a Floodlight group.", + // "flatPath": "v3/floodlightGroups/{floodlightGroupsId}/floodlightActivities", + // "httpMethod": "GET", + // "id": "displayvideo.floodlightGroups.floodlightActivities.list", + // "parameterOrder": [ + // "floodlightGroupId" + // ], + // "parameters": { + // "floodlightGroupId": { + // "description": "Required. The ID of the parent Floodlight group to which the requested Floodlight activities belong.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "orderBy": { + // "description": "Optional. Field by which to sort the list. Acceptable values are: * `displayName` (default) * `floodlightActivityId` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `displayName desc`.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Optional. Requested page size. Must be between `1` and `100`. If unspecified will default to `100`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListFloodlightActivities` method. If not specified, the first page of results will be returned.", + // "location": "query", + // "type": "string" + // }, + // "partnerId": { + // "description": "Required. The ID of the partner through which the Floodlight activities are being accessed.", + // "format": "int64", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v3/floodlightGroups/{+floodlightGroupId}/floodlightActivities", + // "response": { + // "$ref": "ListFloodlightActivitiesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/display-video" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *FloodlightGroupsFloodlightActivitiesListCall) Pages(ctx context.Context, f func(*ListFloodlightActivitiesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + // method id "displayvideo.googleAudiences.get": type GoogleAudiencesGetCall struct { diff --git a/doubleclicksearch/v2/doubleclicksearch-api.json b/doubleclicksearch/v2/doubleclicksearch-api.json index fd999b512c6..77278472639 100644 --- a/doubleclicksearch/v2/doubleclicksearch-api.json +++ b/doubleclicksearch/v2/doubleclicksearch-api.json @@ -543,7 +543,7 @@ } } }, - "revision": "20231017", + "revision": "20240124", "rootUrl": "https://doubleclicksearch.googleapis.com/", "schemas": { "Availability": { @@ -620,7 +620,7 @@ "type": "string" }, "adUserDataConsent": { - "description": "Ad user data consent for this conversion.", + "description": "Represents consent for core platform services (CPS) preferences in settings. No default value. Acceptable values are: GRANTED: The desired consent status is to grant. Read the CPS preferences from GTE settings. DENIED: The desired consent status is to deny; CPS list is empty.", "enum": [ "UNKNOWN", "GRANTED", diff --git a/doubleclicksearch/v2/doubleclicksearch-gen.go b/doubleclicksearch/v2/doubleclicksearch-gen.go index b403306ca8e..b2eb7c506fe 100644 --- a/doubleclicksearch/v2/doubleclicksearch-gen.go +++ b/doubleclicksearch/v2/doubleclicksearch-gen.go @@ -248,7 +248,11 @@ type Conversion struct { // AdId: DS ad ID. AdId int64 `json:"adId,omitempty,string"` - // AdUserDataConsent: Ad user data consent for this conversion. + // AdUserDataConsent: Represents consent for core platform services + // (CPS) preferences in settings. No default value. Acceptable values + // are: GRANTED: The desired consent status is to grant. Read the CPS + // preferences from GTE settings. DENIED: The desired consent status is + // to deny; CPS list is empty. // // Possible values: // "UNKNOWN" - Not specified. diff --git a/drive/v3/drive-api.json b/drive/v3/drive-api.json index 405ead39b48..e9ff0af3e1e 100644 --- a/drive/v3/drive-api.json +++ b/drive/v3/drive-api.json @@ -8,6 +8,9 @@ "https://www.googleapis.com/auth/drive.appdata": { "description": "See, create, and delete its own configuration data in your Google Drive" }, + "https://www.googleapis.com/auth/drive.apps.readonly": { + "description": "View your Google Drive apps" + }, "https://www.googleapis.com/auth/drive.file": { "description": "See, edit, create, and delete only the specific Google Drive files you use with this app" }, @@ -149,6 +152,73 @@ } } }, + "apps": { + "methods": { + "get": { + "description": "Gets a specific app.", + "flatPath": "apps/{appId}", + "httpMethod": "GET", + "id": "drive.apps.get", + "parameterOrder": [ + "appId" + ], + "parameters": { + "appId": { + "description": "The ID of the app.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "apps/{appId}", + "response": { + "$ref": "App" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive", + "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", + "https://www.googleapis.com/auth/drive.file", + "https://www.googleapis.com/auth/drive.metadata", + "https://www.googleapis.com/auth/drive.metadata.readonly", + "https://www.googleapis.com/auth/drive.readonly" + ] + }, + "list": { + "description": "Lists a user's installed apps.", + "flatPath": "apps", + "httpMethod": "GET", + "id": "drive.apps.list", + "parameterOrder": [], + "parameters": { + "appFilterExtensions": { + "default": "", + "description": "A comma-separated list of file extensions to limit returned results. All results within the given app query scope which can open any of the given file extensions are included in the response. If `appFilterMimeTypes` are provided as well, the result is a union of the two resulting app lists.", + "location": "query", + "type": "string" + }, + "appFilterMimeTypes": { + "default": "", + "description": "A comma-separated list of file extensions to limit returned results. All results within the given app query scope which can open any of the given MIME types will be included in the response. If `appFilterExtensions` are provided as well, the result is a union of the two resulting app lists.", + "location": "query", + "type": "string" + }, + "languageCode": { + "description": "A language or locale code, as defined by BCP 47, with some extensions from Unicode's LDML format (http://www.unicode.org/reports/tr35/).", + "location": "query", + "type": "string" + } + }, + "path": "apps", + "response": { + "$ref": "AppList" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive.apps.readonly" + ] + } + } + }, "changes": { "methods": { "getStartPageToken": { @@ -2433,7 +2503,7 @@ } } }, - "revision": "20240110", + "revision": "20240123", "rootUrl": "https://www.googleapis.com/", "schemas": { "About": { @@ -2577,6 +2647,174 @@ }, "type": "object" }, + "App": { + "description": "The `apps` resource provides a list of apps that a user has installed, with information about each app's supported MIME types, file extensions, and other details. Some resource methods (such as `apps.get`) require an `appId`. Use the `apps.list` method to retrieve the ID for an installed application.", + "id": "App", + "properties": { + "authorized": { + "description": "Whether the app is authorized to access data on the user's Drive.", + "type": "boolean" + }, + "createInFolderTemplate": { + "description": "The template URL to create a file with this app in a given folder. The template contains the {folderId} to be replaced by the folder ID house the new file.", + "type": "string" + }, + "createUrl": { + "description": "The URL to create a file with this app.", + "type": "string" + }, + "hasDriveWideScope": { + "description": "Whether the app has Drive-wide scope. An app with Drive-wide scope can access all files in the user's Drive.", + "type": "boolean" + }, + "icons": { + "description": "The various icons for the app.", + "items": { + "$ref": "AppIcons" + }, + "type": "array" + }, + "id": { + "description": "The ID of the app.", + "type": "string" + }, + "installed": { + "description": "Whether the app is installed.", + "type": "boolean" + }, + "kind": { + "default": "drive#app", + "description": "Output only. Identifies what kind of resource this is. Value: the fixed string \"drive#app\".", + "type": "string" + }, + "longDescription": { + "description": "A long description of the app.", + "type": "string" + }, + "name": { + "description": "The name of the app.", + "type": "string" + }, + "objectType": { + "description": "The type of object this app creates such as a Chart. If empty, the app name should be used instead.", + "type": "string" + }, + "openUrlTemplate": { + "description": "The template URL for opening files with this app. The template contains {ids} or {exportIds} to be replaced by the actual file IDs. For more information, see Open Files for the full documentation.", + "type": "string" + }, + "primaryFileExtensions": { + "description": "The list of primary file extensions.", + "items": { + "type": "string" + }, + "type": "array" + }, + "primaryMimeTypes": { + "description": "The list of primary MIME types.", + "items": { + "type": "string" + }, + "type": "array" + }, + "productId": { + "description": "The ID of the product listing for this app.", + "type": "string" + }, + "productUrl": { + "description": "A link to the product listing for this app.", + "type": "string" + }, + "secondaryFileExtensions": { + "description": "The list of secondary file extensions.", + "items": { + "type": "string" + }, + "type": "array" + }, + "secondaryMimeTypes": { + "description": "The list of secondary MIME types.", + "items": { + "type": "string" + }, + "type": "array" + }, + "shortDescription": { + "description": "A short description of the app.", + "type": "string" + }, + "supportsCreate": { + "description": "Whether this app supports creating objects.", + "type": "boolean" + }, + "supportsImport": { + "description": "Whether this app supports importing from Google Docs.", + "type": "boolean" + }, + "supportsMultiOpen": { + "description": "Whether this app supports opening more than one file.", + "type": "boolean" + }, + "supportsOfflineCreate": { + "description": "Whether this app supports creating files when offline.", + "type": "boolean" + }, + "useByDefault": { + "description": "Whether the app is selected as the default handler for the types it supports.", + "type": "boolean" + } + }, + "type": "object" + }, + "AppIcons": { + "id": "AppIcons", + "properties": { + "category": { + "description": "Category of the icon. Allowed values are: * `application` - The icon for the application. * `document` - The icon for a file associated with the app. * `documentShared` - The icon for a shared file associated with the app.", + "type": "string" + }, + "iconUrl": { + "description": "URL for the icon.", + "type": "string" + }, + "size": { + "description": "Size of the icon. Represented as the maximum of the width and height.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "AppList": { + "description": "A list of third-party applications which the user has installed or given access to Google Drive.", + "id": "AppList", + "properties": { + "defaultAppIds": { + "description": "The list of app IDs that the user has specified to use by default. The list is in reverse-priority order (lowest to highest).", + "items": { + "type": "string" + }, + "type": "array" + }, + "items": { + "description": "The list of apps.", + "items": { + "$ref": "App" + }, + "type": "array" + }, + "kind": { + "default": "drive#appList", + "description": "Output only. Identifies what kind of resource this is. Value: the fixed string \"drive#appList\".", + "type": "string" + }, + "selfLink": { + "description": "A link back to this list.", + "type": "string" + } + }, + "type": "object" + }, "Change": { "description": "A change to a file or shared drive.", "id": "Change", diff --git a/drive/v3/drive-gen.go b/drive/v3/drive-gen.go index ebf4fa96a16..2267a79fe43 100644 --- a/drive/v3/drive-gen.go +++ b/drive/v3/drive-gen.go @@ -108,6 +108,9 @@ const ( // Drive DriveAppdataScope = "https://www.googleapis.com/auth/drive.appdata" + // View your Google Drive apps + DriveAppsReadonlyScope = "https://www.googleapis.com/auth/drive.apps.readonly" + // See, edit, create, and delete only the specific Google Drive files // you use with this app DriveFileScope = "https://www.googleapis.com/auth/drive.file" @@ -133,6 +136,7 @@ func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, err scopesOption := internaloption.WithDefaultScopes( "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.appdata", + "https://www.googleapis.com/auth/drive.apps.readonly", "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/drive.metadata", "https://www.googleapis.com/auth/drive.metadata.readonly", @@ -171,6 +175,7 @@ func New(client *http.Client) (*Service, error) { } s := &Service{client: client, BasePath: basePath} s.About = NewAboutService(s) + s.Apps = NewAppsService(s) s.Changes = NewChangesService(s) s.Channels = NewChannelsService(s) s.Comments = NewCommentsService(s) @@ -190,6 +195,8 @@ type Service struct { About *AboutService + Apps *AppsService + Changes *ChangesService Channels *ChannelsService @@ -225,6 +232,15 @@ type AboutService struct { s *Service } +func NewAppsService(s *Service) *AppsService { + rs := &AppsService{s: s} + return rs +} + +type AppsService struct { + s *Service +} + func NewChangesService(s *Service) *ChangesService { rs := &ChangesService{s: s} return rs @@ -488,6 +504,205 @@ func (s *AboutTeamDriveThemes) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// App: The `apps` resource provides a list of apps that a user has +// installed, with information about each app's supported MIME types, +// file extensions, and other details. Some resource methods (such as +// `apps.get`) require an `appId`. Use the `apps.list` method to +// retrieve the ID for an installed application. +type App struct { + // Authorized: Whether the app is authorized to access data on the + // user's Drive. + Authorized bool `json:"authorized,omitempty"` + + // CreateInFolderTemplate: The template URL to create a file with this + // app in a given folder. The template contains the {folderId} to be + // replaced by the folder ID house the new file. + CreateInFolderTemplate string `json:"createInFolderTemplate,omitempty"` + + // CreateUrl: The URL to create a file with this app. + CreateUrl string `json:"createUrl,omitempty"` + + // HasDriveWideScope: Whether the app has Drive-wide scope. An app with + // Drive-wide scope can access all files in the user's Drive. + HasDriveWideScope bool `json:"hasDriveWideScope,omitempty"` + + // Icons: The various icons for the app. + Icons []*AppIcons `json:"icons,omitempty"` + + // Id: The ID of the app. + Id string `json:"id,omitempty"` + + // Installed: Whether the app is installed. + Installed bool `json:"installed,omitempty"` + + // Kind: Output only. Identifies what kind of resource this is. Value: + // the fixed string "drive#app". + Kind string `json:"kind,omitempty"` + + // LongDescription: A long description of the app. + LongDescription string `json:"longDescription,omitempty"` + + // Name: The name of the app. + Name string `json:"name,omitempty"` + + // ObjectType: The type of object this app creates such as a Chart. If + // empty, the app name should be used instead. + ObjectType string `json:"objectType,omitempty"` + + // OpenUrlTemplate: The template URL for opening files with this app. + // The template contains {ids} or {exportIds} to be replaced by the + // actual file IDs. For more information, see Open Files for the full + // documentation. + OpenUrlTemplate string `json:"openUrlTemplate,omitempty"` + + // PrimaryFileExtensions: The list of primary file extensions. + PrimaryFileExtensions []string `json:"primaryFileExtensions,omitempty"` + + // PrimaryMimeTypes: The list of primary MIME types. + PrimaryMimeTypes []string `json:"primaryMimeTypes,omitempty"` + + // ProductId: The ID of the product listing for this app. + ProductId string `json:"productId,omitempty"` + + // ProductUrl: A link to the product listing for this app. + ProductUrl string `json:"productUrl,omitempty"` + + // SecondaryFileExtensions: The list of secondary file extensions. + SecondaryFileExtensions []string `json:"secondaryFileExtensions,omitempty"` + + // SecondaryMimeTypes: The list of secondary MIME types. + SecondaryMimeTypes []string `json:"secondaryMimeTypes,omitempty"` + + // ShortDescription: A short description of the app. + ShortDescription string `json:"shortDescription,omitempty"` + + // SupportsCreate: Whether this app supports creating objects. + SupportsCreate bool `json:"supportsCreate,omitempty"` + + // SupportsImport: Whether this app supports importing from Google Docs. + SupportsImport bool `json:"supportsImport,omitempty"` + + // SupportsMultiOpen: Whether this app supports opening more than one + // file. + SupportsMultiOpen bool `json:"supportsMultiOpen,omitempty"` + + // SupportsOfflineCreate: Whether this app supports creating files when + // offline. + SupportsOfflineCreate bool `json:"supportsOfflineCreate,omitempty"` + + // UseByDefault: Whether the app is selected as the default handler for + // the types it supports. + UseByDefault bool `json:"useByDefault,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Authorized") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Authorized") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *App) MarshalJSON() ([]byte, error) { + type NoMethod App + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type AppIcons struct { + // Category: Category of the icon. Allowed values are: * `application` - + // The icon for the application. * `document` - The icon for a file + // associated with the app. * `documentShared` - The icon for a shared + // file associated with the app. + Category string `json:"category,omitempty"` + + // IconUrl: URL for the icon. + IconUrl string `json:"iconUrl,omitempty"` + + // Size: Size of the icon. Represented as the maximum of the width and + // height. + Size int64 `json:"size,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Category") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Category") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AppIcons) MarshalJSON() ([]byte, error) { + type NoMethod AppIcons + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AppList: A list of third-party applications which the user has +// installed or given access to Google Drive. +type AppList struct { + // DefaultAppIds: The list of app IDs that the user has specified to use + // by default. The list is in reverse-priority order (lowest to + // highest). + DefaultAppIds []string `json:"defaultAppIds,omitempty"` + + // Items: The list of apps. + Items []*App `json:"items,omitempty"` + + // Kind: Output only. Identifies what kind of resource this is. Value: + // the fixed string "drive#appList". + Kind string `json:"kind,omitempty"` + + // SelfLink: A link back to this list. + SelfLink string `json:"selfLink,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "DefaultAppIds") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DefaultAppIds") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *AppList) MarshalJSON() ([]byte, error) { + type NoMethod AppList + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Change: A change to a file or shared drive. type Change struct { // ChangeType: The type of the change. Possible values are `file` and @@ -3659,6 +3874,334 @@ func (c *AboutGetCall) Do(opts ...googleapi.CallOption) (*About, error) { } +// method id "drive.apps.get": + +type AppsGetCall struct { + s *Service + appId string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a specific app. +// +// - appId: The ID of the app. +func (r *AppsService) Get(appId string) *AppsGetCall { + c := &AppsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.appId = appId + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *AppsGetCall) Fields(s ...googleapi.Field) *AppsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *AppsGetCall) IfNoneMatch(entityTag string) *AppsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *AppsGetCall) Context(ctx context.Context) *AppsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *AppsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AppsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "apps/{appId}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "appId": c.appId, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "drive.apps.get" call. +// Exactly one of *App or error will be non-nil. Any non-2xx status code +// is an error. Response headers are in either +// *App.ServerResponse.Header or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was +// returned. +func (c *AppsGetCall) Do(opts ...googleapi.CallOption) (*App, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &App{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets a specific app.", + // "flatPath": "apps/{appId}", + // "httpMethod": "GET", + // "id": "drive.apps.get", + // "parameterOrder": [ + // "appId" + // ], + // "parameters": { + // "appId": { + // "description": "The ID of the app.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "apps/{appId}", + // "response": { + // "$ref": "App" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/drive", + // "https://www.googleapis.com/auth/drive.appdata", + // "https://www.googleapis.com/auth/drive.apps.readonly", + // "https://www.googleapis.com/auth/drive.file", + // "https://www.googleapis.com/auth/drive.metadata", + // "https://www.googleapis.com/auth/drive.metadata.readonly", + // "https://www.googleapis.com/auth/drive.readonly" + // ] + // } + +} + +// method id "drive.apps.list": + +type AppsListCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists a user's installed apps. +func (r *AppsService) List() *AppsListCall { + c := &AppsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + return c +} + +// AppFilterExtensions sets the optional parameter +// "appFilterExtensions": A comma-separated list of file extensions to +// limit returned results. All results within the given app query scope +// which can open any of the given file extensions are included in the +// response. If `appFilterMimeTypes` are provided as well, the result is +// a union of the two resulting app lists. +func (c *AppsListCall) AppFilterExtensions(appFilterExtensions string) *AppsListCall { + c.urlParams_.Set("appFilterExtensions", appFilterExtensions) + return c +} + +// AppFilterMimeTypes sets the optional parameter "appFilterMimeTypes": +// A comma-separated list of file extensions to limit returned results. +// All results within the given app query scope which can open any of +// the given MIME types will be included in the response. If +// `appFilterExtensions` are provided as well, the result is a union of +// the two resulting app lists. +func (c *AppsListCall) AppFilterMimeTypes(appFilterMimeTypes string) *AppsListCall { + c.urlParams_.Set("appFilterMimeTypes", appFilterMimeTypes) + return c +} + +// LanguageCode sets the optional parameter "languageCode": A language +// or locale code, as defined by BCP 47, with some extensions from +// Unicode's LDML format (http://www.unicode.org/reports/tr35/). +func (c *AppsListCall) LanguageCode(languageCode string) *AppsListCall { + c.urlParams_.Set("languageCode", languageCode) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *AppsListCall) Fields(s ...googleapi.Field) *AppsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *AppsListCall) IfNoneMatch(entityTag string) *AppsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *AppsListCall) Context(ctx context.Context) *AppsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *AppsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AppsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "apps") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "drive.apps.list" call. +// Exactly one of *AppList or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *AppList.ServerResponse.Header or (if a response was returned at all) +// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to +// check whether the returned error was because http.StatusNotModified +// was returned. +func (c *AppsListCall) Do(opts ...googleapi.CallOption) (*AppList, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &AppList{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists a user's installed apps.", + // "flatPath": "apps", + // "httpMethod": "GET", + // "id": "drive.apps.list", + // "parameterOrder": [], + // "parameters": { + // "appFilterExtensions": { + // "default": "", + // "description": "A comma-separated list of file extensions to limit returned results. All results within the given app query scope which can open any of the given file extensions are included in the response. If `appFilterMimeTypes` are provided as well, the result is a union of the two resulting app lists.", + // "location": "query", + // "type": "string" + // }, + // "appFilterMimeTypes": { + // "default": "", + // "description": "A comma-separated list of file extensions to limit returned results. All results within the given app query scope which can open any of the given MIME types will be included in the response. If `appFilterExtensions` are provided as well, the result is a union of the two resulting app lists.", + // "location": "query", + // "type": "string" + // }, + // "languageCode": { + // "description": "A language or locale code, as defined by BCP 47, with some extensions from Unicode's LDML format (http://www.unicode.org/reports/tr35/).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "apps", + // "response": { + // "$ref": "AppList" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/drive.apps.readonly" + // ] + // } + +} + // method id "drive.changes.getStartPageToken": type ChangesGetStartPageTokenCall struct { diff --git a/identitytoolkit/v2/identitytoolkit-api.json b/identitytoolkit/v2/identitytoolkit-api.json index 3134143f665..d319195d327 100644 --- a/identitytoolkit/v2/identitytoolkit-api.json +++ b/identitytoolkit/v2/identitytoolkit-api.json @@ -1655,7 +1655,7 @@ } } }, - "revision": "20240103", + "revision": "20240118", "rootUrl": "https://identitytoolkit.googleapis.com/", "schemas": { "GoogleCloudIdentitytoolkitAdminV2AllowByDefault": { @@ -3666,7 +3666,7 @@ "type": "array" }, "role": { - "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "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" } }, diff --git a/identitytoolkit/v2/identitytoolkit-gen.go b/identitytoolkit/v2/identitytoolkit-gen.go index 2144f76dafa..f6ab9b742a8 100644 --- a/identitytoolkit/v2/identitytoolkit-gen.go +++ b/identitytoolkit/v2/identitytoolkit-gen.go @@ -3872,7 +3872,11 @@ type GoogleIamV1Binding struct { Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. - // For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + // 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). Role string `json:"role,omitempty"` // ForceSendFields is a list of field names (e.g. "Condition") to diff --git a/monitoring/v1/monitoring-api.json b/monitoring/v1/monitoring-api.json index 88d247292f3..951945bc515 100644 --- a/monitoring/v1/monitoring-api.json +++ b/monitoring/v1/monitoring-api.json @@ -753,7 +753,7 @@ } } }, - "revision": "20240115", + "revision": "20240121", "rootUrl": "https://monitoring.googleapis.com/", "schemas": { "Aggregation": { @@ -1195,7 +1195,7 @@ "type": "object" }, "Dimension": { - "description": "Preview: A chart dimension for an SQL query. This is applied over the x-axis. This is a preview feature and may be subject to change before final release.", + "description": "A chart dimension. Dimensions are a structured label, class, or category for a set of measurements in your data.", "id": "Dimension", "properties": { "column": { @@ -1555,7 +1555,7 @@ "type": "object" }, "Measure": { - "description": "Preview: A chart measure for an SQL query. This is applied over the y-axis. This is a preview feature and may be subject to change before final release.", + "description": "A chart measure. Measures represent a measured property in your chart data such as rainfall in inches, number of units sold, revenue gained, etc.", "id": "Measure", "properties": { "aggregationFunction": { @@ -1857,6 +1857,20 @@ "description": "Groups a time series query definition.", "id": "PieChartDataSet", "properties": { + "dimensions": { + "description": "A dimension is a structured label, class, or category for a set of measurements in your data.", + "items": { + "$ref": "Dimension" + }, + "type": "array" + }, + "measures": { + "description": "A measure is a measured value of a property in your data. For example, rainfall in inches, number of units sold, revenue gained, etc.", + "items": { + "$ref": "Measure" + }, + "type": "array" + }, "minAlignmentPeriod": { "description": "Optional. The lower bound on data point frequency for this data set, implemented by specifying the minimum alignment period to use in a time series query. For example, if the data is published once every 10 minutes, the min_alignment_period should be at least 10 minutes. It would not make sense to fetch and align data at one minute intervals.", "format": "google-duration", diff --git a/monitoring/v1/monitoring-gen.go b/monitoring/v1/monitoring-gen.go index 046450aeb8e..6bb3a54df15 100644 --- a/monitoring/v1/monitoring-gen.go +++ b/monitoring/v1/monitoring-gen.go @@ -1130,9 +1130,8 @@ func (s *DataSet) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Dimension: Preview: A chart dimension for an SQL query. This is -// applied over the x-axis. This is a preview feature and may be subject -// to change before final release. +// Dimension: A chart dimension. Dimensions are a structured label, +// class, or category for a set of measurements in your data. type Dimension struct { // Column: Required. The name of the column in the source SQL query that // is used to chart the dimension. @@ -1737,9 +1736,9 @@ func (s *LogsPanel) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// Measure: Preview: A chart measure for an SQL query. This is applied -// over the y-axis. This is a preview feature and may be subject to -// change before final release. +// Measure: A chart measure. Measures represent a measured property in +// your chart data such as rainfall in inches, number of units sold, +// revenue gained, etc. type Measure struct { // AggregationFunction: Required. The aggregation function applied to // the input column. This must not be set to "none" unless binning is @@ -2278,6 +2277,15 @@ func (s *PieChart) MarshalJSON() ([]byte, error) { // PieChartDataSet: Groups a time series query definition. type PieChartDataSet struct { + // Dimensions: A dimension is a structured label, class, or category for + // a set of measurements in your data. + Dimensions []*Dimension `json:"dimensions,omitempty"` + + // Measures: A measure is a measured value of a property in your data. + // For example, rainfall in inches, number of units sold, revenue + // gained, etc. + Measures []*Measure `json:"measures,omitempty"` + // MinAlignmentPeriod: Optional. The lower bound on data point frequency // for this data set, implemented by specifying the minimum alignment // period to use in a time series query. For example, if the data is @@ -2297,21 +2305,20 @@ type PieChartDataSet struct { // google.monitoring.dashboard.v1.TimeSeriesQuery. TimeSeriesQuery *TimeSeriesQuery `json:"timeSeriesQuery,omitempty"` - // ForceSendFields is a list of field names (e.g. "MinAlignmentPeriod") - // to unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "Dimensions") to + // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be // sent to the server regardless of whether the field is empty or not. // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "MinAlignmentPeriod") to - // include in API requests with the JSON null value. By default, fields - // with empty values are omitted from API requests. However, any field - // with an empty value appearing in NullFields will be sent to the - // server as null. It is an error if a field in this list has a - // non-empty value. This may be used to include null fields in Patch - // requests. + // NullFields is a list of field names (e.g. "Dimensions") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. NullFields []string `json:"-"` } diff --git a/run/v2/run-api.json b/run/v2/run-api.json index 82dc1a95b47..2bb6642c332 100644 --- a/run/v2/run-api.json +++ b/run/v2/run-api.json @@ -1312,7 +1312,7 @@ } } }, - "revision": "20240107", + "revision": "20240121", "rootUrl": "https://run.googleapis.com/", "schemas": { "GoogleCloudRunV2BinaryAuthorization": { @@ -3466,7 +3466,7 @@ "type": "array" }, "role": { - "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "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" } }, diff --git a/run/v2/run-gen.go b/run/v2/run-gen.go index 181559682fc..114843d5e52 100644 --- a/run/v2/run-gen.go +++ b/run/v2/run-gen.go @@ -3385,7 +3385,11 @@ type GoogleIamV1Binding struct { Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. - // For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + // 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). Role string `json:"role,omitempty"` // ForceSendFields is a list of field names (e.g. "Condition") to diff --git a/servicemanagement/v1/servicemanagement-api.json b/servicemanagement/v1/servicemanagement-api.json index e7b92dfd084..ce63f6c2b05 100644 --- a/servicemanagement/v1/servicemanagement-api.json +++ b/servicemanagement/v1/servicemanagement-api.json @@ -830,7 +830,7 @@ } } }, - "revision": "20240101", + "revision": "20240119", "rootUrl": "https://servicemanagement.googleapis.com/", "schemas": { "Advice": { @@ -1167,7 +1167,7 @@ "type": "array" }, "role": { - "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "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" } }, diff --git a/servicemanagement/v1/servicemanagement-gen.go b/servicemanagement/v1/servicemanagement-gen.go index f186b41c323..5b5e612d96e 100644 --- a/servicemanagement/v1/servicemanagement-gen.go +++ b/servicemanagement/v1/servicemanagement-gen.go @@ -967,7 +967,11 @@ type Binding struct { Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. - // For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + // 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). Role string `json:"role,omitempty"` // ForceSendFields is a list of field names (e.g. "Condition") to diff --git a/vmmigration/v1/vmmigration-api.json b/vmmigration/v1/vmmigration-api.json index 99fce1df245..1e2112a893f 100644 --- a/vmmigration/v1/vmmigration-api.json +++ b/vmmigration/v1/vmmigration-api.json @@ -1972,7 +1972,7 @@ } } }, - "revision": "20231207", + "revision": "20240118", "rootUrl": "https://vmmigration.googleapis.com/", "schemas": { "AccessKeyCredentials": { @@ -2478,7 +2478,7 @@ "type": "object" }, "AzureVmDetails": { - "description": "AwsVmDetails describes a VM in AWS.", + "description": "AzureVmDetails describes a VM in Azure.", "id": "AzureVmDetails", "properties": { "bootOption": { diff --git a/vmmigration/v1/vmmigration-gen.go b/vmmigration/v1/vmmigration-gen.go index 6dfe6c7e315..5ad25e04abd 100644 --- a/vmmigration/v1/vmmigration-gen.go +++ b/vmmigration/v1/vmmigration-gen.go @@ -942,7 +942,7 @@ func (s *AzureSourceVmDetails) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// AzureVmDetails: AwsVmDetails describes a VM in AWS. +// AzureVmDetails: AzureVmDetails describes a VM in Azure. type AzureVmDetails struct { // BootOption: The VM Boot Option. // diff --git a/vmmigration/v1alpha1/vmmigration-api.json b/vmmigration/v1alpha1/vmmigration-api.json index a6d732d29eb..b38200f1b61 100644 --- a/vmmigration/v1alpha1/vmmigration-api.json +++ b/vmmigration/v1alpha1/vmmigration-api.json @@ -1972,7 +1972,7 @@ } } }, - "revision": "20231207", + "revision": "20240118", "rootUrl": "https://vmmigration.googleapis.com/", "schemas": { "AccessKeyCredentials": { @@ -2478,7 +2478,7 @@ "type": "object" }, "AzureVmDetails": { - "description": "AwsVmDetails describes a VM in AWS.", + "description": "AzureVmDetails describes a VM in Azure.", "id": "AzureVmDetails", "properties": { "bootOption": { diff --git a/vmmigration/v1alpha1/vmmigration-gen.go b/vmmigration/v1alpha1/vmmigration-gen.go index 36d0e1fc5a3..bb35d526877 100644 --- a/vmmigration/v1alpha1/vmmigration-gen.go +++ b/vmmigration/v1alpha1/vmmigration-gen.go @@ -942,7 +942,7 @@ func (s *AzureSourceVmDetails) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// AzureVmDetails: AwsVmDetails describes a VM in AWS. +// AzureVmDetails: AzureVmDetails describes a VM in Azure. type AzureVmDetails struct { // BootOption: The VM Boot Option. // diff --git a/workspaceevents/v1/workspaceevents-api.json b/workspaceevents/v1/workspaceevents-api.json new file mode 100644 index 00000000000..4f0cff33497 --- /dev/null +++ b/workspaceevents/v1/workspaceevents-api.json @@ -0,0 +1,106 @@ +{ + "basePath": "", + "baseUrl": "https://workspaceevents.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Workspace Events", + "description": "The Google Workspace Events API lets you subscribe to events and manage change notifications across Google Workspace applications.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/workspace/events", + "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": "workspaceevents:v1", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://workspaceevents.mtls.googleapis.com/", + "name": "workspaceevents", + "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": {}, + "revision": "20240125", + "rootUrl": "https://workspaceevents.googleapis.com/", + "schemas": {}, + "servicePath": "", + "title": "Google Workspace Events API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/workspaceevents/v1/workspaceevents-gen.go b/workspaceevents/v1/workspaceevents-gen.go new file mode 100644 index 00000000000..1fd4690599c --- /dev/null +++ b/workspaceevents/v1/workspaceevents-gen.go @@ -0,0 +1,141 @@ +// Copyright 2024 Google LLC. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// Code generated file. DO NOT EDIT. + +// Package workspaceevents provides access to the Google Workspace Events API. +// +// For product documentation, see: https://developers.google.com/workspace/events +// +// # Library status +// +// These client libraries are officially supported by Google. However, this +// library is considered complete and is in maintenance mode. This means +// that we will address critical bugs and security issues but will not add +// any new features. +// +// When possible, we recommend using our newer +// [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go) +// that are still actively being worked and iterated on. +// +// # Creating a client +// +// Usage example: +// +// import "google.golang.org/api/workspaceevents/v1" +// ... +// ctx := context.Background() +// workspaceeventsService, err := workspaceevents.NewService(ctx) +// +// In this example, Google Application Default Credentials are used for +// authentication. For information on how to create and obtain Application +// Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. +// +// # Other authentication options +// +// To use an API key for authentication (note: some APIs do not support API +// keys), use [google.golang.org/api/option.WithAPIKey]: +// +// workspaceeventsService, err := workspaceevents.NewService(ctx, option.WithAPIKey("AIza...")) +// +// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth +// flow, use [google.golang.org/api/option.WithTokenSource]: +// +// config := &oauth2.Config{...} +// // ... +// token, err := config.Exchange(ctx, ...) +// workspaceeventsService, err := workspaceevents.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) +// +// See [google.golang.org/api/option.ClientOption] for details on options. +package workspaceevents // import "google.golang.org/api/workspaceevents/v1" + +import ( + "bytes" + "context" + "encoding/json" + "errors" + "fmt" + "io" + "net/http" + "net/url" + "strconv" + "strings" + + googleapi "google.golang.org/api/googleapi" + internal "google.golang.org/api/internal" + gensupport "google.golang.org/api/internal/gensupport" + option "google.golang.org/api/option" + internaloption "google.golang.org/api/option/internaloption" + htransport "google.golang.org/api/transport/http" +) + +// Always reference these packages, just in case the auto-generated code +// below doesn't. +var _ = bytes.NewBuffer +var _ = strconv.Itoa +var _ = fmt.Sprintf +var _ = json.NewDecoder +var _ = io.Copy +var _ = url.Parse +var _ = gensupport.MarshalJSON +var _ = googleapi.Version +var _ = errors.New +var _ = strings.Replace +var _ = context.Canceled +var _ = internaloption.WithDefaultEndpoint +var _ = internal.Version + +const apiId = "workspaceevents:v1" +const apiName = "workspaceevents" +const apiVersion = "v1" +const basePath = "https://workspaceevents.googleapis.com/" +const basePathTemplate = "https://workspaceevents.UNIVERSE_DOMAIN/" +const mtlsBasePath = "https://workspaceevents.mtls.googleapis.com/" +const defaultUniverseDomain = "googleapis.com" + +// NewService creates a new Service. +func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { + opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) + opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate)) + opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) + opts = append(opts, internaloption.WithDefaultUniverseDomain(defaultUniverseDomain)) + client, endpoint, err := htransport.NewClient(ctx, opts...) + if err != nil { + return nil, err + } + s, err := New(client) + if err != nil { + return nil, err + } + if endpoint != "" { + s.BasePath = endpoint + } + return s, nil +} + +// New creates a new Service. It uses the provided http.Client for requests. +// +// Deprecated: please use NewService instead. +// To provide a custom HTTP client, use option.WithHTTPClient. +// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. +func New(client *http.Client) (*Service, error) { + if client == nil { + return nil, errors.New("client is nil") + } + s := &Service{client: client, BasePath: basePath} + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +}